From b08061abe25b390190b69a1e2af2ee74db09e82a Mon Sep 17 00:00:00 2001 From: Tom Date: Tue, 8 Sep 2020 19:10:34 +0100 Subject: [PATCH] Updates compression --- autobahn/client-results.json | 432 +- autobahn/client/index.html | 5923 +++++++++++++++++ autobahn/client/index.json | 11 + autobahn/client/tungstenite_case_10_1_1.html | 509 ++ autobahn/client/tungstenite_case_10_1_1.json | 1287 ++++ autobahn/client/tungstenite_case_12_1_1.html | 324 + autobahn/client/tungstenite_case_12_1_1.json | 171 + autobahn/client/tungstenite_case_12_1_10.html | 597 ++ autobahn/client/tungstenite_case_12_1_10.json | 444 ++ autobahn/client/tungstenite_case_12_1_11.html | 647 ++ autobahn/client/tungstenite_case_12_1_11.json | 494 ++ autobahn/client/tungstenite_case_12_1_12.html | 804 +++ autobahn/client/tungstenite_case_12_1_12.json | 651 ++ autobahn/client/tungstenite_case_12_1_13.html | 883 +++ autobahn/client/tungstenite_case_12_1_13.json | 730 ++ autobahn/client/tungstenite_case_12_1_14.html | 556 ++ autobahn/client/tungstenite_case_12_1_14.json | 403 ++ autobahn/client/tungstenite_case_12_1_15.html | 598 ++ autobahn/client/tungstenite_case_12_1_15.json | 445 ++ autobahn/client/tungstenite_case_12_1_16.html | 599 ++ autobahn/client/tungstenite_case_12_1_16.json | 446 ++ autobahn/client/tungstenite_case_12_1_17.html | 599 ++ autobahn/client/tungstenite_case_12_1_17.json | 446 ++ autobahn/client/tungstenite_case_12_1_18.html | 597 ++ autobahn/client/tungstenite_case_12_1_18.json | 444 ++ autobahn/client/tungstenite_case_12_1_2.html | 328 + autobahn/client/tungstenite_case_12_1_2.json | 175 + autobahn/client/tungstenite_case_12_1_3.html | 355 + autobahn/client/tungstenite_case_12_1_3.json | 202 + autobahn/client/tungstenite_case_12_1_4.html | 418 ++ autobahn/client/tungstenite_case_12_1_4.json | 265 + autobahn/client/tungstenite_case_12_1_5.html | 535 ++ autobahn/client/tungstenite_case_12_1_5.json | 382 ++ autobahn/client/tungstenite_case_12_1_6.html | 645 ++ autobahn/client/tungstenite_case_12_1_6.json | 492 ++ autobahn/client/tungstenite_case_12_1_7.html | 842 +++ autobahn/client/tungstenite_case_12_1_7.json | 689 ++ autobahn/client/tungstenite_case_12_1_8.html | 1001 +++ autobahn/client/tungstenite_case_12_1_8.json | 848 +++ autobahn/client/tungstenite_case_12_1_9.html | 556 ++ autobahn/client/tungstenite_case_12_1_9.json | 403 ++ autobahn/client/tungstenite_case_12_2_1.html | 324 + autobahn/client/tungstenite_case_12_2_1.json | 171 + autobahn/client/tungstenite_case_12_2_10.html | 1927 ++++++ autobahn/client/tungstenite_case_12_2_10.json | 1774 +++++ autobahn/client/tungstenite_case_12_2_11.html | 1006 +++ autobahn/client/tungstenite_case_12_2_11.json | 853 +++ autobahn/client/tungstenite_case_12_2_12.html | 1143 ++++ autobahn/client/tungstenite_case_12_2_12.json | 990 +++ autobahn/client/tungstenite_case_12_2_13.html | 1244 ++++ autobahn/client/tungstenite_case_12_2_13.json | 1091 +++ autobahn/client/tungstenite_case_12_2_14.html | 1283 ++++ autobahn/client/tungstenite_case_12_2_14.json | 1130 ++++ autobahn/client/tungstenite_case_12_2_15.html | 1360 ++++ autobahn/client/tungstenite_case_12_2_15.json | 1207 ++++ autobahn/client/tungstenite_case_12_2_16.html | 1712 +++++ autobahn/client/tungstenite_case_12_2_16.json | 1559 +++++ autobahn/client/tungstenite_case_12_2_17.html | 1901 ++++++ autobahn/client/tungstenite_case_12_2_17.json | 1748 +++++ autobahn/client/tungstenite_case_12_2_18.html | 1929 ++++++ autobahn/client/tungstenite_case_12_2_18.json | 1776 +++++ autobahn/client/tungstenite_case_12_2_2.html | 344 + autobahn/client/tungstenite_case_12_2_2.json | 191 + autobahn/client/tungstenite_case_12_2_3.html | 306 + autobahn/client/tungstenite_case_12_2_3.json | 136 + autobahn/client/tungstenite_case_12_2_4.html | 596 ++ autobahn/client/tungstenite_case_12_2_4.json | 443 ++ autobahn/client/tungstenite_case_12_2_5.html | 970 +++ autobahn/client/tungstenite_case_12_2_5.json | 817 +++ autobahn/client/tungstenite_case_12_2_6.html | 1224 ++++ autobahn/client/tungstenite_case_12_2_6.json | 1071 +++ autobahn/client/tungstenite_case_12_2_7.html | 1488 +++++ autobahn/client/tungstenite_case_12_2_7.json | 1335 ++++ autobahn/client/tungstenite_case_12_2_8.html | 1698 +++++ autobahn/client/tungstenite_case_12_2_8.json | 1545 +++++ autobahn/client/tungstenite_case_12_2_9.html | 1770 +++++ autobahn/client/tungstenite_case_12_2_9.json | 1617 +++++ autobahn/client/tungstenite_case_12_3_1.html | 328 + autobahn/client/tungstenite_case_12_3_1.json | 175 + autobahn/client/tungstenite_case_12_3_10.html | 1739 +++++ autobahn/client/tungstenite_case_12_3_10.json | 1586 +++++ autobahn/client/tungstenite_case_12_3_11.html | 955 +++ autobahn/client/tungstenite_case_12_3_11.json | 802 +++ autobahn/client/tungstenite_case_12_3_12.html | 1111 ++++ autobahn/client/tungstenite_case_12_3_12.json | 958 +++ autobahn/client/tungstenite_case_12_3_13.html | 1162 ++++ autobahn/client/tungstenite_case_12_3_13.json | 1009 +++ autobahn/client/tungstenite_case_12_3_14.html | 1265 ++++ autobahn/client/tungstenite_case_12_3_14.json | 1112 ++++ autobahn/client/tungstenite_case_12_3_15.html | 1270 ++++ autobahn/client/tungstenite_case_12_3_15.json | 1117 ++++ autobahn/client/tungstenite_case_12_3_16.html | 1615 +++++ autobahn/client/tungstenite_case_12_3_16.json | 1462 ++++ autobahn/client/tungstenite_case_12_3_17.html | 1742 +++++ autobahn/client/tungstenite_case_12_3_17.json | 1589 +++++ autobahn/client/tungstenite_case_12_3_18.html | 1741 +++++ autobahn/client/tungstenite_case_12_3_18.json | 1588 +++++ autobahn/client/tungstenite_case_12_3_2.html | 394 ++ autobahn/client/tungstenite_case_12_3_2.json | 241 + autobahn/client/tungstenite_case_12_3_3.html | 475 ++ autobahn/client/tungstenite_case_12_3_3.json | 322 + autobahn/client/tungstenite_case_12_3_4.html | 620 ++ autobahn/client/tungstenite_case_12_3_4.json | 467 ++ autobahn/client/tungstenite_case_12_3_5.html | 928 +++ autobahn/client/tungstenite_case_12_3_5.json | 775 +++ autobahn/client/tungstenite_case_12_3_6.html | 1125 ++++ autobahn/client/tungstenite_case_12_3_6.json | 972 +++ autobahn/client/tungstenite_case_12_3_7.html | 1412 ++++ autobahn/client/tungstenite_case_12_3_7.json | 1259 ++++ autobahn/client/tungstenite_case_12_3_8.html | 1525 +++++ autobahn/client/tungstenite_case_12_3_8.json | 1372 ++++ autobahn/client/tungstenite_case_12_3_9.html | 1710 +++++ autobahn/client/tungstenite_case_12_3_9.json | 1557 +++++ autobahn/client/tungstenite_case_12_4_1.html | 328 + autobahn/client/tungstenite_case_12_4_1.json | 175 + autobahn/client/tungstenite_case_12_4_10.html | 1488 +++++ autobahn/client/tungstenite_case_12_4_10.json | 1335 ++++ autobahn/client/tungstenite_case_12_4_11.html | 956 +++ autobahn/client/tungstenite_case_12_4_11.json | 803 +++ autobahn/client/tungstenite_case_12_4_12.html | 1116 ++++ autobahn/client/tungstenite_case_12_4_12.json | 963 +++ autobahn/client/tungstenite_case_12_4_13.html | 1233 ++++ autobahn/client/tungstenite_case_12_4_13.json | 1080 +++ autobahn/client/tungstenite_case_12_4_14.html | 1157 ++++ autobahn/client/tungstenite_case_12_4_14.json | 1004 +++ autobahn/client/tungstenite_case_12_4_15.html | 1172 ++++ autobahn/client/tungstenite_case_12_4_15.json | 1019 +++ autobahn/client/tungstenite_case_12_4_16.html | 1422 ++++ autobahn/client/tungstenite_case_12_4_16.json | 1269 ++++ autobahn/client/tungstenite_case_12_4_17.html | 1490 +++++ autobahn/client/tungstenite_case_12_4_17.json | 1337 ++++ autobahn/client/tungstenite_case_12_4_18.html | 1488 +++++ autobahn/client/tungstenite_case_12_4_18.json | 1335 ++++ autobahn/client/tungstenite_case_12_4_2.html | 398 ++ autobahn/client/tungstenite_case_12_4_2.json | 245 + autobahn/client/tungstenite_case_12_4_3.html | 464 ++ autobahn/client/tungstenite_case_12_4_3.json | 311 + autobahn/client/tungstenite_case_12_4_4.html | 608 ++ autobahn/client/tungstenite_case_12_4_4.json | 455 ++ autobahn/client/tungstenite_case_12_4_5.html | 880 +++ autobahn/client/tungstenite_case_12_4_5.json | 727 ++ autobahn/client/tungstenite_case_12_4_6.html | 1160 ++++ autobahn/client/tungstenite_case_12_4_6.json | 1007 +++ autobahn/client/tungstenite_case_12_4_7.html | 1419 ++++ autobahn/client/tungstenite_case_12_4_7.json | 1266 ++++ autobahn/client/tungstenite_case_12_4_8.html | 1667 +++++ autobahn/client/tungstenite_case_12_4_8.json | 1514 +++++ autobahn/client/tungstenite_case_12_4_9.html | 1498 +++++ autobahn/client/tungstenite_case_12_4_9.json | 1345 ++++ autobahn/client/tungstenite_case_12_5_1.html | 330 + autobahn/client/tungstenite_case_12_5_1.json | 177 + autobahn/client/tungstenite_case_12_5_10.html | 2084 ++++++ autobahn/client/tungstenite_case_12_5_10.json | 1931 ++++++ autobahn/client/tungstenite_case_12_5_11.html | 372 ++ autobahn/client/tungstenite_case_12_5_11.json | 202 + autobahn/client/tungstenite_case_12_5_12.html | 1314 ++++ autobahn/client/tungstenite_case_12_5_12.json | 1161 ++++ autobahn/client/tungstenite_case_12_5_13.html | 1388 ++++ autobahn/client/tungstenite_case_12_5_13.json | 1235 ++++ autobahn/client/tungstenite_case_12_5_14.html | 1395 ++++ autobahn/client/tungstenite_case_12_5_14.json | 1242 ++++ autobahn/client/tungstenite_case_12_5_15.html | 1446 ++++ autobahn/client/tungstenite_case_12_5_15.json | 1293 ++++ autobahn/client/tungstenite_case_12_5_16.html | 1823 +++++ autobahn/client/tungstenite_case_12_5_16.json | 1670 +++++ autobahn/client/tungstenite_case_12_5_17.html | 2018 ++++++ autobahn/client/tungstenite_case_12_5_17.json | 1865 ++++++ autobahn/client/tungstenite_case_12_5_18.html | 2081 ++++++ autobahn/client/tungstenite_case_12_5_18.json | 1928 ++++++ autobahn/client/tungstenite_case_12_5_2.html | 391 ++ autobahn/client/tungstenite_case_12_5_2.json | 238 + autobahn/client/tungstenite_case_12_5_3.html | 300 + autobahn/client/tungstenite_case_12_5_3.json | 130 + autobahn/client/tungstenite_case_12_5_4.html | 989 +++ autobahn/client/tungstenite_case_12_5_4.json | 836 +++ autobahn/client/tungstenite_case_12_5_5.html | 310 + autobahn/client/tungstenite_case_12_5_5.json | 140 + autobahn/client/tungstenite_case_12_5_6.html | 375 ++ autobahn/client/tungstenite_case_12_5_6.json | 205 + autobahn/client/tungstenite_case_12_5_7.html | 1848 +++++ autobahn/client/tungstenite_case_12_5_7.json | 1695 +++++ autobahn/client/tungstenite_case_12_5_8.html | 1977 ++++++ autobahn/client/tungstenite_case_12_5_8.json | 1824 +++++ autobahn/client/tungstenite_case_12_5_9.html | 2006 ++++++ autobahn/client/tungstenite_case_12_5_9.json | 1853 ++++++ autobahn/client/tungstenite_case_13_1_1.html | 324 + autobahn/client/tungstenite_case_13_1_1.json | 171 + autobahn/client/tungstenite_case_13_1_10.html | 597 ++ autobahn/client/tungstenite_case_13_1_10.json | 444 ++ autobahn/client/tungstenite_case_13_1_11.html | 647 ++ autobahn/client/tungstenite_case_13_1_11.json | 494 ++ autobahn/client/tungstenite_case_13_1_12.html | 804 +++ autobahn/client/tungstenite_case_13_1_12.json | 651 ++ autobahn/client/tungstenite_case_13_1_13.html | 883 +++ autobahn/client/tungstenite_case_13_1_13.json | 730 ++ autobahn/client/tungstenite_case_13_1_14.html | 556 ++ autobahn/client/tungstenite_case_13_1_14.json | 403 ++ autobahn/client/tungstenite_case_13_1_15.html | 598 ++ autobahn/client/tungstenite_case_13_1_15.json | 445 ++ autobahn/client/tungstenite_case_13_1_16.html | 599 ++ autobahn/client/tungstenite_case_13_1_16.json | 446 ++ autobahn/client/tungstenite_case_13_1_17.html | 599 ++ autobahn/client/tungstenite_case_13_1_17.json | 446 ++ autobahn/client/tungstenite_case_13_1_18.html | 597 ++ autobahn/client/tungstenite_case_13_1_18.json | 444 ++ autobahn/client/tungstenite_case_13_1_2.html | 328 + autobahn/client/tungstenite_case_13_1_2.json | 175 + autobahn/client/tungstenite_case_13_1_3.html | 355 + autobahn/client/tungstenite_case_13_1_3.json | 202 + autobahn/client/tungstenite_case_13_1_4.html | 418 ++ autobahn/client/tungstenite_case_13_1_4.json | 265 + autobahn/client/tungstenite_case_13_1_5.html | 535 ++ autobahn/client/tungstenite_case_13_1_5.json | 382 ++ autobahn/client/tungstenite_case_13_1_6.html | 645 ++ autobahn/client/tungstenite_case_13_1_6.json | 492 ++ autobahn/client/tungstenite_case_13_1_7.html | 842 +++ autobahn/client/tungstenite_case_13_1_7.json | 689 ++ autobahn/client/tungstenite_case_13_1_8.html | 1001 +++ autobahn/client/tungstenite_case_13_1_8.json | 848 +++ autobahn/client/tungstenite_case_13_1_9.html | 556 ++ autobahn/client/tungstenite_case_13_1_9.json | 403 ++ autobahn/client/tungstenite_case_13_2_1.html | 288 + autobahn/client/tungstenite_case_13_2_1.json | 78 + autobahn/client/tungstenite_case_13_2_10.html | 288 + autobahn/client/tungstenite_case_13_2_10.json | 78 + autobahn/client/tungstenite_case_13_2_11.html | 290 + autobahn/client/tungstenite_case_13_2_11.json | 80 + autobahn/client/tungstenite_case_13_2_12.html | 290 + autobahn/client/tungstenite_case_13_2_12.json | 80 + autobahn/client/tungstenite_case_13_2_13.html | 290 + autobahn/client/tungstenite_case_13_2_13.json | 80 + autobahn/client/tungstenite_case_13_2_14.html | 290 + autobahn/client/tungstenite_case_13_2_14.json | 80 + autobahn/client/tungstenite_case_13_2_15.html | 290 + autobahn/client/tungstenite_case_13_2_15.json | 80 + autobahn/client/tungstenite_case_13_2_16.html | 290 + autobahn/client/tungstenite_case_13_2_16.json | 80 + autobahn/client/tungstenite_case_13_2_17.html | 290 + autobahn/client/tungstenite_case_13_2_17.json | 80 + autobahn/client/tungstenite_case_13_2_18.html | 288 + autobahn/client/tungstenite_case_13_2_18.json | 78 + autobahn/client/tungstenite_case_13_2_2.html | 288 + autobahn/client/tungstenite_case_13_2_2.json | 78 + autobahn/client/tungstenite_case_13_2_3.html | 288 + autobahn/client/tungstenite_case_13_2_3.json | 78 + autobahn/client/tungstenite_case_13_2_4.html | 288 + autobahn/client/tungstenite_case_13_2_4.json | 78 + autobahn/client/tungstenite_case_13_2_5.html | 288 + autobahn/client/tungstenite_case_13_2_5.json | 78 + autobahn/client/tungstenite_case_13_2_6.html | 288 + autobahn/client/tungstenite_case_13_2_6.json | 78 + autobahn/client/tungstenite_case_13_2_7.html | 288 + autobahn/client/tungstenite_case_13_2_7.json | 78 + autobahn/client/tungstenite_case_13_2_8.html | 288 + autobahn/client/tungstenite_case_13_2_8.json | 78 + autobahn/client/tungstenite_case_13_2_9.html | 288 + autobahn/client/tungstenite_case_13_2_9.json | 78 + autobahn/client/tungstenite_case_13_3_1.html | 288 + autobahn/client/tungstenite_case_13_3_1.json | 78 + autobahn/client/tungstenite_case_13_3_10.html | 288 + autobahn/client/tungstenite_case_13_3_10.json | 78 + autobahn/client/tungstenite_case_13_3_11.html | 290 + autobahn/client/tungstenite_case_13_3_11.json | 80 + autobahn/client/tungstenite_case_13_3_12.html | 290 + autobahn/client/tungstenite_case_13_3_12.json | 80 + autobahn/client/tungstenite_case_13_3_13.html | 290 + autobahn/client/tungstenite_case_13_3_13.json | 80 + autobahn/client/tungstenite_case_13_3_14.html | 290 + autobahn/client/tungstenite_case_13_3_14.json | 80 + autobahn/client/tungstenite_case_13_3_15.html | 290 + autobahn/client/tungstenite_case_13_3_15.json | 80 + autobahn/client/tungstenite_case_13_3_16.html | 290 + autobahn/client/tungstenite_case_13_3_16.json | 80 + autobahn/client/tungstenite_case_13_3_17.html | 290 + autobahn/client/tungstenite_case_13_3_17.json | 80 + autobahn/client/tungstenite_case_13_3_18.html | 288 + autobahn/client/tungstenite_case_13_3_18.json | 78 + autobahn/client/tungstenite_case_13_3_2.html | 288 + autobahn/client/tungstenite_case_13_3_2.json | 78 + autobahn/client/tungstenite_case_13_3_3.html | 288 + autobahn/client/tungstenite_case_13_3_3.json | 78 + autobahn/client/tungstenite_case_13_3_4.html | 288 + autobahn/client/tungstenite_case_13_3_4.json | 78 + autobahn/client/tungstenite_case_13_3_5.html | 288 + autobahn/client/tungstenite_case_13_3_5.json | 78 + autobahn/client/tungstenite_case_13_3_6.html | 288 + autobahn/client/tungstenite_case_13_3_6.json | 78 + autobahn/client/tungstenite_case_13_3_7.html | 288 + autobahn/client/tungstenite_case_13_3_7.json | 78 + autobahn/client/tungstenite_case_13_3_8.html | 288 + autobahn/client/tungstenite_case_13_3_8.json | 78 + autobahn/client/tungstenite_case_13_3_9.html | 288 + autobahn/client/tungstenite_case_13_3_9.json | 78 + autobahn/client/tungstenite_case_13_4_1.html | 288 + autobahn/client/tungstenite_case_13_4_1.json | 78 + autobahn/client/tungstenite_case_13_4_10.html | 288 + autobahn/client/tungstenite_case_13_4_10.json | 78 + autobahn/client/tungstenite_case_13_4_11.html | 290 + autobahn/client/tungstenite_case_13_4_11.json | 80 + autobahn/client/tungstenite_case_13_4_12.html | 290 + autobahn/client/tungstenite_case_13_4_12.json | 80 + autobahn/client/tungstenite_case_13_4_13.html | 290 + autobahn/client/tungstenite_case_13_4_13.json | 80 + autobahn/client/tungstenite_case_13_4_14.html | 290 + autobahn/client/tungstenite_case_13_4_14.json | 80 + autobahn/client/tungstenite_case_13_4_15.html | 290 + autobahn/client/tungstenite_case_13_4_15.json | 80 + autobahn/client/tungstenite_case_13_4_16.html | 290 + autobahn/client/tungstenite_case_13_4_16.json | 80 + autobahn/client/tungstenite_case_13_4_17.html | 290 + autobahn/client/tungstenite_case_13_4_17.json | 80 + autobahn/client/tungstenite_case_13_4_18.html | 288 + autobahn/client/tungstenite_case_13_4_18.json | 78 + autobahn/client/tungstenite_case_13_4_2.html | 288 + autobahn/client/tungstenite_case_13_4_2.json | 78 + autobahn/client/tungstenite_case_13_4_3.html | 288 + autobahn/client/tungstenite_case_13_4_3.json | 78 + autobahn/client/tungstenite_case_13_4_4.html | 288 + autobahn/client/tungstenite_case_13_4_4.json | 78 + autobahn/client/tungstenite_case_13_4_5.html | 288 + autobahn/client/tungstenite_case_13_4_5.json | 78 + autobahn/client/tungstenite_case_13_4_6.html | 288 + autobahn/client/tungstenite_case_13_4_6.json | 78 + autobahn/client/tungstenite_case_13_4_7.html | 288 + autobahn/client/tungstenite_case_13_4_7.json | 78 + autobahn/client/tungstenite_case_13_4_8.html | 288 + autobahn/client/tungstenite_case_13_4_8.json | 78 + autobahn/client/tungstenite_case_13_4_9.html | 288 + autobahn/client/tungstenite_case_13_4_9.json | 78 + autobahn/client/tungstenite_case_13_5_1.html | 288 + autobahn/client/tungstenite_case_13_5_1.json | 78 + autobahn/client/tungstenite_case_13_5_10.html | 288 + autobahn/client/tungstenite_case_13_5_10.json | 78 + autobahn/client/tungstenite_case_13_5_11.html | 290 + autobahn/client/tungstenite_case_13_5_11.json | 80 + autobahn/client/tungstenite_case_13_5_12.html | 290 + autobahn/client/tungstenite_case_13_5_12.json | 80 + autobahn/client/tungstenite_case_13_5_13.html | 290 + autobahn/client/tungstenite_case_13_5_13.json | 80 + autobahn/client/tungstenite_case_13_5_14.html | 290 + autobahn/client/tungstenite_case_13_5_14.json | 80 + autobahn/client/tungstenite_case_13_5_15.html | 290 + autobahn/client/tungstenite_case_13_5_15.json | 80 + autobahn/client/tungstenite_case_13_5_16.html | 290 + autobahn/client/tungstenite_case_13_5_16.json | 80 + autobahn/client/tungstenite_case_13_5_17.html | 290 + autobahn/client/tungstenite_case_13_5_17.json | 80 + autobahn/client/tungstenite_case_13_5_18.html | 288 + autobahn/client/tungstenite_case_13_5_18.json | 78 + autobahn/client/tungstenite_case_13_5_2.html | 288 + autobahn/client/tungstenite_case_13_5_2.json | 78 + autobahn/client/tungstenite_case_13_5_3.html | 288 + autobahn/client/tungstenite_case_13_5_3.json | 78 + autobahn/client/tungstenite_case_13_5_4.html | 288 + autobahn/client/tungstenite_case_13_5_4.json | 78 + autobahn/client/tungstenite_case_13_5_5.html | 287 + autobahn/client/tungstenite_case_13_5_5.json | 77 + autobahn/client/tungstenite_case_13_5_6.html | 288 + autobahn/client/tungstenite_case_13_5_6.json | 78 + autobahn/client/tungstenite_case_13_5_7.html | 288 + autobahn/client/tungstenite_case_13_5_7.json | 78 + autobahn/client/tungstenite_case_13_5_8.html | 288 + autobahn/client/tungstenite_case_13_5_8.json | 78 + autobahn/client/tungstenite_case_13_5_9.html | 288 + autobahn/client/tungstenite_case_13_5_9.json | 78 + autobahn/client/tungstenite_case_13_6_1.html | 288 + autobahn/client/tungstenite_case_13_6_1.json | 78 + autobahn/client/tungstenite_case_13_6_10.html | 288 + autobahn/client/tungstenite_case_13_6_10.json | 78 + autobahn/client/tungstenite_case_13_6_11.html | 290 + autobahn/client/tungstenite_case_13_6_11.json | 80 + autobahn/client/tungstenite_case_13_6_12.html | 290 + autobahn/client/tungstenite_case_13_6_12.json | 80 + autobahn/client/tungstenite_case_13_6_13.html | 290 + autobahn/client/tungstenite_case_13_6_13.json | 80 + autobahn/client/tungstenite_case_13_6_14.html | 290 + autobahn/client/tungstenite_case_13_6_14.json | 80 + autobahn/client/tungstenite_case_13_6_15.html | 290 + autobahn/client/tungstenite_case_13_6_15.json | 80 + autobahn/client/tungstenite_case_13_6_16.html | 290 + autobahn/client/tungstenite_case_13_6_16.json | 80 + autobahn/client/tungstenite_case_13_6_17.html | 290 + autobahn/client/tungstenite_case_13_6_17.json | 80 + autobahn/client/tungstenite_case_13_6_18.html | 288 + autobahn/client/tungstenite_case_13_6_18.json | 78 + autobahn/client/tungstenite_case_13_6_2.html | 288 + autobahn/client/tungstenite_case_13_6_2.json | 78 + autobahn/client/tungstenite_case_13_6_3.html | 288 + autobahn/client/tungstenite_case_13_6_3.json | 78 + autobahn/client/tungstenite_case_13_6_4.html | 288 + autobahn/client/tungstenite_case_13_6_4.json | 78 + autobahn/client/tungstenite_case_13_6_5.html | 288 + autobahn/client/tungstenite_case_13_6_5.json | 78 + autobahn/client/tungstenite_case_13_6_6.html | 288 + autobahn/client/tungstenite_case_13_6_6.json | 78 + autobahn/client/tungstenite_case_13_6_7.html | 288 + autobahn/client/tungstenite_case_13_6_7.json | 78 + autobahn/client/tungstenite_case_13_6_8.html | 288 + autobahn/client/tungstenite_case_13_6_8.json | 78 + autobahn/client/tungstenite_case_13_6_9.html | 288 + autobahn/client/tungstenite_case_13_6_9.json | 78 + autobahn/client/tungstenite_case_13_7_1.html | 288 + autobahn/client/tungstenite_case_13_7_1.json | 78 + autobahn/client/tungstenite_case_13_7_10.html | 288 + autobahn/client/tungstenite_case_13_7_10.json | 78 + autobahn/client/tungstenite_case_13_7_11.html | 290 + autobahn/client/tungstenite_case_13_7_11.json | 80 + autobahn/client/tungstenite_case_13_7_12.html | 290 + autobahn/client/tungstenite_case_13_7_12.json | 80 + autobahn/client/tungstenite_case_13_7_13.html | 290 + autobahn/client/tungstenite_case_13_7_13.json | 80 + autobahn/client/tungstenite_case_13_7_14.html | 290 + autobahn/client/tungstenite_case_13_7_14.json | 80 + autobahn/client/tungstenite_case_13_7_15.html | 290 + autobahn/client/tungstenite_case_13_7_15.json | 80 + autobahn/client/tungstenite_case_13_7_16.html | 290 + autobahn/client/tungstenite_case_13_7_16.json | 80 + autobahn/client/tungstenite_case_13_7_17.html | 290 + autobahn/client/tungstenite_case_13_7_17.json | 80 + autobahn/client/tungstenite_case_13_7_18.html | 288 + autobahn/client/tungstenite_case_13_7_18.json | 78 + autobahn/client/tungstenite_case_13_7_2.html | 288 + autobahn/client/tungstenite_case_13_7_2.json | 78 + autobahn/client/tungstenite_case_13_7_3.html | 288 + autobahn/client/tungstenite_case_13_7_3.json | 78 + autobahn/client/tungstenite_case_13_7_4.html | 288 + autobahn/client/tungstenite_case_13_7_4.json | 78 + autobahn/client/tungstenite_case_13_7_5.html | 287 + autobahn/client/tungstenite_case_13_7_5.json | 77 + autobahn/client/tungstenite_case_13_7_6.html | 288 + autobahn/client/tungstenite_case_13_7_6.json | 78 + autobahn/client/tungstenite_case_13_7_7.html | 288 + autobahn/client/tungstenite_case_13_7_7.json | 78 + autobahn/client/tungstenite_case_13_7_8.html | 288 + autobahn/client/tungstenite_case_13_7_8.json | 78 + autobahn/client/tungstenite_case_13_7_9.html | 288 + autobahn/client/tungstenite_case_13_7_9.json | 78 + autobahn/client/tungstenite_case_1_1_1.html | 301 + autobahn/client/tungstenite_case_1_1_1.json | 177 + autobahn/client/tungstenite_case_1_1_2.html | 305 + autobahn/client/tungstenite_case_1_1_2.json | 177 + autobahn/client/tungstenite_case_1_1_3.html | 305 + autobahn/client/tungstenite_case_1_1_3.json | 177 + autobahn/client/tungstenite_case_1_1_4.html | 305 + autobahn/client/tungstenite_case_1_1_4.json | 177 + autobahn/client/tungstenite_case_1_1_5.html | 305 + autobahn/client/tungstenite_case_1_1_5.json | 177 + autobahn/client/tungstenite_case_1_1_6.html | 307 + autobahn/client/tungstenite_case_1_1_6.json | 185 + autobahn/client/tungstenite_case_1_1_7.html | 307 + autobahn/client/tungstenite_case_1_1_7.json | 185 + autobahn/client/tungstenite_case_1_1_8.html | 438 ++ autobahn/client/tungstenite_case_1_1_8.json | 706 ++ autobahn/client/tungstenite_case_1_2_1.html | 301 + autobahn/client/tungstenite_case_1_2_1.json | 177 + autobahn/client/tungstenite_case_1_2_2.html | 307 + autobahn/client/tungstenite_case_1_2_2.json | 177 + autobahn/client/tungstenite_case_1_2_3.html | 307 + autobahn/client/tungstenite_case_1_2_3.json | 177 + autobahn/client/tungstenite_case_1_2_4.html | 307 + autobahn/client/tungstenite_case_1_2_4.json | 177 + autobahn/client/tungstenite_case_1_2_5.html | 307 + autobahn/client/tungstenite_case_1_2_5.json | 177 + autobahn/client/tungstenite_case_1_2_6.html | 309 + autobahn/client/tungstenite_case_1_2_6.json | 185 + autobahn/client/tungstenite_case_1_2_7.html | 309 + autobahn/client/tungstenite_case_1_2_7.json | 185 + autobahn/client/tungstenite_case_1_2_8.html | 440 ++ autobahn/client/tungstenite_case_1_2_8.json | 706 ++ autobahn/client/tungstenite_case_2_1.html | 301 + autobahn/client/tungstenite_case_2_1.json | 175 + autobahn/client/tungstenite_case_2_10.html | 351 + autobahn/client/tungstenite_case_2_10.json | 560 ++ autobahn/client/tungstenite_case_2_11.html | 457 ++ autobahn/client/tungstenite_case_2_11.json | 1416 ++++ autobahn/client/tungstenite_case_2_2.html | 303 + autobahn/client/tungstenite_case_2_2.json | 175 + autobahn/client/tungstenite_case_2_3.html | 303 + autobahn/client/tungstenite_case_2_3.json | 175 + autobahn/client/tungstenite_case_2_4.html | 307 + autobahn/client/tungstenite_case_2_4.json | 175 + autobahn/client/tungstenite_case_2_5.html | 290 + autobahn/client/tungstenite_case_2_5.json | 98 + autobahn/client/tungstenite_case_2_6.html | 432 ++ autobahn/client/tungstenite_case_2_6.json | 1183 ++++ autobahn/client/tungstenite_case_2_7.html | 297 + autobahn/client/tungstenite_case_2_7.json | 144 + autobahn/client/tungstenite_case_2_8.html | 298 + autobahn/client/tungstenite_case_2_8.json | 144 + autobahn/client/tungstenite_case_2_9.html | 308 + autobahn/client/tungstenite_case_2_9.json | 199 + autobahn/client/tungstenite_case_3_1.html | 288 + autobahn/client/tungstenite_case_3_1.json | 98 + autobahn/client/tungstenite_case_3_2.html | 300 + autobahn/client/tungstenite_case_3_2.json | 179 + autobahn/client/tungstenite_case_3_3.html | 300 + autobahn/client/tungstenite_case_3_3.json | 179 + autobahn/client/tungstenite_case_3_4.html | 327 + autobahn/client/tungstenite_case_3_4.json | 402 ++ autobahn/client/tungstenite_case_3_5.html | 288 + autobahn/client/tungstenite_case_3_5.json | 98 + autobahn/client/tungstenite_case_3_6.html | 288 + autobahn/client/tungstenite_case_3_6.json | 98 + autobahn/client/tungstenite_case_3_7.html | 287 + autobahn/client/tungstenite_case_3_7.json | 98 + autobahn/client/tungstenite_case_4_1_1.html | 287 + autobahn/client/tungstenite_case_4_1_1.json | 98 + autobahn/client/tungstenite_case_4_1_2.html | 288 + autobahn/client/tungstenite_case_4_1_2.json | 98 + autobahn/client/tungstenite_case_4_1_3.html | 300 + autobahn/client/tungstenite_case_4_1_3.json | 180 + autobahn/client/tungstenite_case_4_1_4.html | 301 + autobahn/client/tungstenite_case_4_1_4.json | 180 + autobahn/client/tungstenite_case_4_1_5.html | 315 + autobahn/client/tungstenite_case_4_1_5.json | 299 + autobahn/client/tungstenite_case_4_2_1.html | 287 + autobahn/client/tungstenite_case_4_2_1.json | 98 + autobahn/client/tungstenite_case_4_2_2.html | 288 + autobahn/client/tungstenite_case_4_2_2.json | 98 + autobahn/client/tungstenite_case_4_2_3.html | 300 + autobahn/client/tungstenite_case_4_2_3.json | 180 + autobahn/client/tungstenite_case_4_2_4.html | 301 + autobahn/client/tungstenite_case_4_2_4.json | 180 + autobahn/client/tungstenite_case_4_2_5.html | 315 + autobahn/client/tungstenite_case_4_2_5.json | 299 + autobahn/client/tungstenite_case_5_1.html | 292 + autobahn/client/tungstenite_case_5_1.json | 121 + autobahn/client/tungstenite_case_5_10.html | 293 + autobahn/client/tungstenite_case_5_10.json | 122 + autobahn/client/tungstenite_case_5_11.html | 317 + autobahn/client/tungstenite_case_5_11.json | 321 + autobahn/client/tungstenite_case_5_12.html | 293 + autobahn/client/tungstenite_case_5_12.json | 122 + autobahn/client/tungstenite_case_5_13.html | 293 + autobahn/client/tungstenite_case_5_13.json | 122 + autobahn/client/tungstenite_case_5_14.html | 317 + autobahn/client/tungstenite_case_5_14.json | 321 + autobahn/client/tungstenite_case_5_15.html | 303 + autobahn/client/tungstenite_case_5_15.json | 200 + autobahn/client/tungstenite_case_5_16.html | 304 + autobahn/client/tungstenite_case_5_16.json | 209 + autobahn/client/tungstenite_case_5_17.html | 304 + autobahn/client/tungstenite_case_5_17.json | 209 + autobahn/client/tungstenite_case_5_18.html | 291 + autobahn/client/tungstenite_case_5_18.json | 120 + autobahn/client/tungstenite_case_5_19.html | 338 + autobahn/client/tungstenite_case_5_19.json | 369 + autobahn/client/tungstenite_case_5_2.html | 292 + autobahn/client/tungstenite_case_5_2.json | 121 + autobahn/client/tungstenite_case_5_20.html | 337 + autobahn/client/tungstenite_case_5_20.json | 376 ++ autobahn/client/tungstenite_case_5_3.html | 307 + autobahn/client/tungstenite_case_5_3.json | 200 + autobahn/client/tungstenite_case_5_4.html | 307 + autobahn/client/tungstenite_case_5_4.json | 200 + autobahn/client/tungstenite_case_5_5.html | 327 + autobahn/client/tungstenite_case_5_5.json | 360 + autobahn/client/tungstenite_case_5_6.html | 315 + autobahn/client/tungstenite_case_5_6.json | 245 + autobahn/client/tungstenite_case_5_7.html | 317 + autobahn/client/tungstenite_case_5_7.json | 253 + autobahn/client/tungstenite_case_5_8.html | 349 + autobahn/client/tungstenite_case_5_8.json | 516 ++ autobahn/client/tungstenite_case_5_9.html | 293 + autobahn/client/tungstenite_case_5_9.json | 122 + autobahn/client/tungstenite_case_6_10_1.html | 288 + autobahn/client/tungstenite_case_6_10_1.json | 99 + autobahn/client/tungstenite_case_6_10_2.html | 288 + autobahn/client/tungstenite_case_6_10_2.json | 99 + autobahn/client/tungstenite_case_6_10_3.html | 288 + autobahn/client/tungstenite_case_6_10_3.json | 99 + autobahn/client/tungstenite_case_6_11_1.html | 303 + autobahn/client/tungstenite_case_6_11_1.json | 177 + autobahn/client/tungstenite_case_6_11_2.html | 303 + autobahn/client/tungstenite_case_6_11_2.json | 177 + autobahn/client/tungstenite_case_6_11_3.html | 303 + autobahn/client/tungstenite_case_6_11_3.json | 177 + autobahn/client/tungstenite_case_6_11_4.html | 303 + autobahn/client/tungstenite_case_6_11_4.json | 177 + autobahn/client/tungstenite_case_6_11_5.html | 288 + autobahn/client/tungstenite_case_6_11_5.json | 99 + autobahn/client/tungstenite_case_6_12_1.html | 288 + autobahn/client/tungstenite_case_6_12_1.json | 99 + autobahn/client/tungstenite_case_6_12_2.html | 288 + autobahn/client/tungstenite_case_6_12_2.json | 99 + autobahn/client/tungstenite_case_6_12_3.html | 288 + autobahn/client/tungstenite_case_6_12_3.json | 99 + autobahn/client/tungstenite_case_6_12_4.html | 288 + autobahn/client/tungstenite_case_6_12_4.json | 99 + autobahn/client/tungstenite_case_6_12_5.html | 288 + autobahn/client/tungstenite_case_6_12_5.json | 99 + autobahn/client/tungstenite_case_6_12_6.html | 288 + autobahn/client/tungstenite_case_6_12_6.json | 99 + autobahn/client/tungstenite_case_6_12_7.html | 288 + autobahn/client/tungstenite_case_6_12_7.json | 99 + autobahn/client/tungstenite_case_6_12_8.html | 290 + autobahn/client/tungstenite_case_6_12_8.json | 99 + autobahn/client/tungstenite_case_6_13_1.html | 290 + autobahn/client/tungstenite_case_6_13_1.json | 99 + autobahn/client/tungstenite_case_6_13_2.html | 288 + autobahn/client/tungstenite_case_6_13_2.json | 99 + autobahn/client/tungstenite_case_6_13_3.html | 288 + autobahn/client/tungstenite_case_6_13_3.json | 99 + autobahn/client/tungstenite_case_6_13_4.html | 288 + autobahn/client/tungstenite_case_6_13_4.json | 99 + autobahn/client/tungstenite_case_6_13_5.html | 288 + autobahn/client/tungstenite_case_6_13_5.json | 99 + autobahn/client/tungstenite_case_6_14_1.html | 288 + autobahn/client/tungstenite_case_6_14_1.json | 99 + autobahn/client/tungstenite_case_6_14_10.html | 288 + autobahn/client/tungstenite_case_6_14_10.json | 99 + autobahn/client/tungstenite_case_6_14_2.html | 288 + autobahn/client/tungstenite_case_6_14_2.json | 99 + autobahn/client/tungstenite_case_6_14_3.html | 288 + autobahn/client/tungstenite_case_6_14_3.json | 99 + autobahn/client/tungstenite_case_6_14_4.html | 288 + autobahn/client/tungstenite_case_6_14_4.json | 99 + autobahn/client/tungstenite_case_6_14_5.html | 288 + autobahn/client/tungstenite_case_6_14_5.json | 99 + autobahn/client/tungstenite_case_6_14_6.html | 288 + autobahn/client/tungstenite_case_6_14_6.json | 99 + autobahn/client/tungstenite_case_6_14_7.html | 288 + autobahn/client/tungstenite_case_6_14_7.json | 99 + autobahn/client/tungstenite_case_6_14_8.html | 288 + autobahn/client/tungstenite_case_6_14_8.json | 99 + autobahn/client/tungstenite_case_6_14_9.html | 288 + autobahn/client/tungstenite_case_6_14_9.json | 99 + autobahn/client/tungstenite_case_6_15_1.html | 288 + autobahn/client/tungstenite_case_6_15_1.json | 99 + autobahn/client/tungstenite_case_6_16_1.html | 288 + autobahn/client/tungstenite_case_6_16_1.json | 99 + autobahn/client/tungstenite_case_6_16_2.html | 288 + autobahn/client/tungstenite_case_6_16_2.json | 99 + autobahn/client/tungstenite_case_6_16_3.html | 288 + autobahn/client/tungstenite_case_6_16_3.json | 99 + autobahn/client/tungstenite_case_6_17_1.html | 288 + autobahn/client/tungstenite_case_6_17_1.json | 99 + autobahn/client/tungstenite_case_6_17_2.html | 288 + autobahn/client/tungstenite_case_6_17_2.json | 99 + autobahn/client/tungstenite_case_6_17_3.html | 288 + autobahn/client/tungstenite_case_6_17_3.json | 99 + autobahn/client/tungstenite_case_6_17_4.html | 288 + autobahn/client/tungstenite_case_6_17_4.json | 99 + autobahn/client/tungstenite_case_6_17_5.html | 288 + autobahn/client/tungstenite_case_6_17_5.json | 99 + autobahn/client/tungstenite_case_6_18_1.html | 288 + autobahn/client/tungstenite_case_6_18_1.json | 99 + autobahn/client/tungstenite_case_6_18_2.html | 288 + autobahn/client/tungstenite_case_6_18_2.json | 99 + autobahn/client/tungstenite_case_6_18_3.html | 288 + autobahn/client/tungstenite_case_6_18_3.json | 99 + autobahn/client/tungstenite_case_6_18_4.html | 288 + autobahn/client/tungstenite_case_6_18_4.json | 99 + autobahn/client/tungstenite_case_6_18_5.html | 288 + autobahn/client/tungstenite_case_6_18_5.json | 99 + autobahn/client/tungstenite_case_6_19_1.html | 288 + autobahn/client/tungstenite_case_6_19_1.json | 99 + autobahn/client/tungstenite_case_6_19_2.html | 288 + autobahn/client/tungstenite_case_6_19_2.json | 99 + autobahn/client/tungstenite_case_6_19_3.html | 288 + autobahn/client/tungstenite_case_6_19_3.json | 99 + autobahn/client/tungstenite_case_6_19_4.html | 288 + autobahn/client/tungstenite_case_6_19_4.json | 99 + autobahn/client/tungstenite_case_6_19_5.html | 288 + autobahn/client/tungstenite_case_6_19_5.json | 99 + autobahn/client/tungstenite_case_6_1_1.html | 301 + autobahn/client/tungstenite_case_6_1_1.json | 177 + autobahn/client/tungstenite_case_6_1_2.html | 306 + autobahn/client/tungstenite_case_6_1_2.json | 222 + autobahn/client/tungstenite_case_6_1_3.html | 309 + autobahn/client/tungstenite_case_6_1_3.json | 223 + autobahn/client/tungstenite_case_6_20_1.html | 288 + autobahn/client/tungstenite_case_6_20_1.json | 99 + autobahn/client/tungstenite_case_6_20_2.html | 288 + autobahn/client/tungstenite_case_6_20_2.json | 99 + autobahn/client/tungstenite_case_6_20_3.html | 288 + autobahn/client/tungstenite_case_6_20_3.json | 99 + autobahn/client/tungstenite_case_6_20_4.html | 288 + autobahn/client/tungstenite_case_6_20_4.json | 99 + autobahn/client/tungstenite_case_6_20_5.html | 288 + autobahn/client/tungstenite_case_6_20_5.json | 99 + autobahn/client/tungstenite_case_6_20_6.html | 288 + autobahn/client/tungstenite_case_6_20_6.json | 99 + autobahn/client/tungstenite_case_6_20_7.html | 288 + autobahn/client/tungstenite_case_6_20_7.json | 99 + autobahn/client/tungstenite_case_6_21_1.html | 288 + autobahn/client/tungstenite_case_6_21_1.json | 99 + autobahn/client/tungstenite_case_6_21_2.html | 288 + autobahn/client/tungstenite_case_6_21_2.json | 99 + autobahn/client/tungstenite_case_6_21_3.html | 288 + autobahn/client/tungstenite_case_6_21_3.json | 99 + autobahn/client/tungstenite_case_6_21_4.html | 288 + autobahn/client/tungstenite_case_6_21_4.json | 99 + autobahn/client/tungstenite_case_6_21_5.html | 288 + autobahn/client/tungstenite_case_6_21_5.json | 99 + autobahn/client/tungstenite_case_6_21_6.html | 288 + autobahn/client/tungstenite_case_6_21_6.json | 99 + autobahn/client/tungstenite_case_6_21_7.html | 288 + autobahn/client/tungstenite_case_6_21_7.json | 99 + autobahn/client/tungstenite_case_6_21_8.html | 288 + autobahn/client/tungstenite_case_6_21_8.json | 99 + autobahn/client/tungstenite_case_6_22_1.html | 303 + autobahn/client/tungstenite_case_6_22_1.json | 177 + autobahn/client/tungstenite_case_6_22_10.html | 303 + autobahn/client/tungstenite_case_6_22_10.json | 177 + autobahn/client/tungstenite_case_6_22_11.html | 303 + autobahn/client/tungstenite_case_6_22_11.json | 177 + autobahn/client/tungstenite_case_6_22_12.html | 303 + autobahn/client/tungstenite_case_6_22_12.json | 177 + autobahn/client/tungstenite_case_6_22_13.html | 303 + autobahn/client/tungstenite_case_6_22_13.json | 177 + autobahn/client/tungstenite_case_6_22_14.html | 303 + autobahn/client/tungstenite_case_6_22_14.json | 177 + autobahn/client/tungstenite_case_6_22_15.html | 303 + autobahn/client/tungstenite_case_6_22_15.json | 177 + autobahn/client/tungstenite_case_6_22_16.html | 303 + autobahn/client/tungstenite_case_6_22_16.json | 177 + autobahn/client/tungstenite_case_6_22_17.html | 303 + autobahn/client/tungstenite_case_6_22_17.json | 177 + autobahn/client/tungstenite_case_6_22_18.html | 303 + autobahn/client/tungstenite_case_6_22_18.json | 177 + autobahn/client/tungstenite_case_6_22_19.html | 303 + autobahn/client/tungstenite_case_6_22_19.json | 177 + autobahn/client/tungstenite_case_6_22_2.html | 303 + autobahn/client/tungstenite_case_6_22_2.json | 177 + autobahn/client/tungstenite_case_6_22_20.html | 303 + autobahn/client/tungstenite_case_6_22_20.json | 177 + autobahn/client/tungstenite_case_6_22_21.html | 303 + autobahn/client/tungstenite_case_6_22_21.json | 177 + autobahn/client/tungstenite_case_6_22_22.html | 303 + autobahn/client/tungstenite_case_6_22_22.json | 177 + autobahn/client/tungstenite_case_6_22_23.html | 303 + autobahn/client/tungstenite_case_6_22_23.json | 177 + autobahn/client/tungstenite_case_6_22_24.html | 303 + autobahn/client/tungstenite_case_6_22_24.json | 177 + autobahn/client/tungstenite_case_6_22_25.html | 303 + autobahn/client/tungstenite_case_6_22_25.json | 177 + autobahn/client/tungstenite_case_6_22_26.html | 303 + autobahn/client/tungstenite_case_6_22_26.json | 177 + autobahn/client/tungstenite_case_6_22_27.html | 303 + autobahn/client/tungstenite_case_6_22_27.json | 177 + autobahn/client/tungstenite_case_6_22_28.html | 303 + autobahn/client/tungstenite_case_6_22_28.json | 177 + autobahn/client/tungstenite_case_6_22_29.html | 303 + autobahn/client/tungstenite_case_6_22_29.json | 177 + autobahn/client/tungstenite_case_6_22_3.html | 303 + autobahn/client/tungstenite_case_6_22_3.json | 177 + autobahn/client/tungstenite_case_6_22_30.html | 303 + autobahn/client/tungstenite_case_6_22_30.json | 177 + autobahn/client/tungstenite_case_6_22_31.html | 303 + autobahn/client/tungstenite_case_6_22_31.json | 177 + autobahn/client/tungstenite_case_6_22_32.html | 303 + autobahn/client/tungstenite_case_6_22_32.json | 177 + autobahn/client/tungstenite_case_6_22_33.html | 303 + autobahn/client/tungstenite_case_6_22_33.json | 177 + autobahn/client/tungstenite_case_6_22_34.html | 303 + autobahn/client/tungstenite_case_6_22_34.json | 177 + autobahn/client/tungstenite_case_6_22_4.html | 303 + autobahn/client/tungstenite_case_6_22_4.json | 177 + autobahn/client/tungstenite_case_6_22_5.html | 303 + autobahn/client/tungstenite_case_6_22_5.json | 177 + autobahn/client/tungstenite_case_6_22_6.html | 303 + autobahn/client/tungstenite_case_6_22_6.json | 177 + autobahn/client/tungstenite_case_6_22_7.html | 303 + autobahn/client/tungstenite_case_6_22_7.json | 177 + autobahn/client/tungstenite_case_6_22_8.html | 303 + autobahn/client/tungstenite_case_6_22_8.json | 177 + autobahn/client/tungstenite_case_6_22_9.html | 303 + autobahn/client/tungstenite_case_6_22_9.json | 177 + autobahn/client/tungstenite_case_6_23_1.html | 303 + autobahn/client/tungstenite_case_6_23_1.json | 177 + autobahn/client/tungstenite_case_6_23_2.html | 303 + autobahn/client/tungstenite_case_6_23_2.json | 177 + autobahn/client/tungstenite_case_6_23_3.html | 303 + autobahn/client/tungstenite_case_6_23_3.json | 177 + autobahn/client/tungstenite_case_6_23_4.html | 303 + autobahn/client/tungstenite_case_6_23_4.json | 177 + autobahn/client/tungstenite_case_6_23_5.html | 303 + autobahn/client/tungstenite_case_6_23_5.json | 177 + autobahn/client/tungstenite_case_6_23_6.html | 303 + autobahn/client/tungstenite_case_6_23_6.json | 177 + autobahn/client/tungstenite_case_6_23_7.html | 303 + autobahn/client/tungstenite_case_6_23_7.json | 177 + autobahn/client/tungstenite_case_6_2_1.html | 303 + autobahn/client/tungstenite_case_6_2_1.json | 177 + autobahn/client/tungstenite_case_6_2_2.html | 308 + autobahn/client/tungstenite_case_6_2_2.json | 201 + autobahn/client/tungstenite_case_6_2_3.html | 391 ++ autobahn/client/tungstenite_case_6_2_3.json | 817 +++ autobahn/client/tungstenite_case_6_2_4.html | 337 + autobahn/client/tungstenite_case_6_2_4.json | 421 ++ autobahn/client/tungstenite_case_6_3_1.html | 288 + autobahn/client/tungstenite_case_6_3_1.json | 99 + autobahn/client/tungstenite_case_6_3_2.html | 349 + autobahn/client/tungstenite_case_6_3_2.json | 541 ++ autobahn/client/tungstenite_case_6_4_1.html | 302 + autobahn/client/tungstenite_case_6_4_1.json | 153 + autobahn/client/tungstenite_case_6_4_2.html | 300 + autobahn/client/tungstenite_case_6_4_2.json | 153 + autobahn/client/tungstenite_case_6_4_3.html | 303 + autobahn/client/tungstenite_case_6_4_3.json | 176 + autobahn/client/tungstenite_case_6_4_4.html | 303 + autobahn/client/tungstenite_case_6_4_4.json | 176 + autobahn/client/tungstenite_case_6_5_1.html | 303 + autobahn/client/tungstenite_case_6_5_1.json | 177 + autobahn/client/tungstenite_case_6_5_2.html | 303 + autobahn/client/tungstenite_case_6_5_2.json | 177 + autobahn/client/tungstenite_case_6_5_3.html | 303 + autobahn/client/tungstenite_case_6_5_3.json | 177 + autobahn/client/tungstenite_case_6_5_4.html | 303 + autobahn/client/tungstenite_case_6_5_4.json | 177 + autobahn/client/tungstenite_case_6_5_5.html | 303 + autobahn/client/tungstenite_case_6_5_5.json | 177 + autobahn/client/tungstenite_case_6_6_1.html | 288 + autobahn/client/tungstenite_case_6_6_1.json | 99 + autobahn/client/tungstenite_case_6_6_10.html | 288 + autobahn/client/tungstenite_case_6_6_10.json | 99 + autobahn/client/tungstenite_case_6_6_11.html | 303 + autobahn/client/tungstenite_case_6_6_11.json | 177 + autobahn/client/tungstenite_case_6_6_2.html | 301 + autobahn/client/tungstenite_case_6_6_2.json | 175 + autobahn/client/tungstenite_case_6_6_3.html | 288 + autobahn/client/tungstenite_case_6_6_3.json | 99 + autobahn/client/tungstenite_case_6_6_4.html | 288 + autobahn/client/tungstenite_case_6_6_4.json | 99 + autobahn/client/tungstenite_case_6_6_5.html | 303 + autobahn/client/tungstenite_case_6_6_5.json | 177 + autobahn/client/tungstenite_case_6_6_6.html | 288 + autobahn/client/tungstenite_case_6_6_6.json | 99 + autobahn/client/tungstenite_case_6_6_7.html | 303 + autobahn/client/tungstenite_case_6_6_7.json | 177 + autobahn/client/tungstenite_case_6_6_8.html | 288 + autobahn/client/tungstenite_case_6_6_8.json | 99 + autobahn/client/tungstenite_case_6_6_9.html | 303 + autobahn/client/tungstenite_case_6_6_9.json | 177 + autobahn/client/tungstenite_case_6_7_1.html | 303 + autobahn/client/tungstenite_case_6_7_1.json | 177 + autobahn/client/tungstenite_case_6_7_2.html | 301 + autobahn/client/tungstenite_case_6_7_2.json | 175 + autobahn/client/tungstenite_case_6_7_3.html | 303 + autobahn/client/tungstenite_case_6_7_3.json | 177 + autobahn/client/tungstenite_case_6_7_4.html | 303 + autobahn/client/tungstenite_case_6_7_4.json | 177 + autobahn/client/tungstenite_case_6_8_1.html | 288 + autobahn/client/tungstenite_case_6_8_1.json | 99 + autobahn/client/tungstenite_case_6_8_2.html | 288 + autobahn/client/tungstenite_case_6_8_2.json | 99 + autobahn/client/tungstenite_case_6_9_1.html | 303 + autobahn/client/tungstenite_case_6_9_1.json | 177 + autobahn/client/tungstenite_case_6_9_2.html | 301 + autobahn/client/tungstenite_case_6_9_2.json | 175 + autobahn/client/tungstenite_case_6_9_3.html | 303 + autobahn/client/tungstenite_case_6_9_3.json | 177 + autobahn/client/tungstenite_case_6_9_4.html | 303 + autobahn/client/tungstenite_case_6_9_4.json | 177 + autobahn/client/tungstenite_case_7_13_1.html | 293 + autobahn/client/tungstenite_case_7_13_1.json | 122 + autobahn/client/tungstenite_case_7_13_2.html | 293 + autobahn/client/tungstenite_case_7_13_2.json | 122 + autobahn/client/tungstenite_case_7_1_1.html | 303 + autobahn/client/tungstenite_case_7_1_1.json | 177 + autobahn/client/tungstenite_case_7_1_2.html | 296 + autobahn/client/tungstenite_case_7_1_2.json | 143 + autobahn/client/tungstenite_case_7_1_3.html | 297 + autobahn/client/tungstenite_case_7_1_3.json | 144 + autobahn/client/tungstenite_case_7_1_4.html | 298 + autobahn/client/tungstenite_case_7_1_4.json | 144 + autobahn/client/tungstenite_case_7_1_5.html | 302 + autobahn/client/tungstenite_case_7_1_5.json | 167 + autobahn/client/tungstenite_case_7_1_6.html | 321 + autobahn/client/tungstenite_case_7_1_6.json | 263 + autobahn/client/tungstenite_case_7_3_1.html | 291 + autobahn/client/tungstenite_case_7_3_1.json | 120 + autobahn/client/tungstenite_case_7_3_2.html | 288 + autobahn/client/tungstenite_case_7_3_2.json | 98 + autobahn/client/tungstenite_case_7_3_3.html | 293 + autobahn/client/tungstenite_case_7_3_3.json | 120 + autobahn/client/tungstenite_case_7_3_4.html | 293 + autobahn/client/tungstenite_case_7_3_4.json | 120 + autobahn/client/tungstenite_case_7_3_5.html | 295 + autobahn/client/tungstenite_case_7_3_5.json | 120 + autobahn/client/tungstenite_case_7_3_6.html | 290 + autobahn/client/tungstenite_case_7_3_6.json | 98 + autobahn/client/tungstenite_case_7_5_1.html | 288 + autobahn/client/tungstenite_case_7_5_1.json | 99 + autobahn/client/tungstenite_case_7_7_1.html | 293 + autobahn/client/tungstenite_case_7_7_1.json | 121 + autobahn/client/tungstenite_case_7_7_10.html | 293 + autobahn/client/tungstenite_case_7_7_10.json | 121 + autobahn/client/tungstenite_case_7_7_11.html | 293 + autobahn/client/tungstenite_case_7_7_11.json | 121 + autobahn/client/tungstenite_case_7_7_12.html | 293 + autobahn/client/tungstenite_case_7_7_12.json | 121 + autobahn/client/tungstenite_case_7_7_13.html | 293 + autobahn/client/tungstenite_case_7_7_13.json | 121 + autobahn/client/tungstenite_case_7_7_2.html | 293 + autobahn/client/tungstenite_case_7_7_2.json | 121 + autobahn/client/tungstenite_case_7_7_3.html | 293 + autobahn/client/tungstenite_case_7_7_3.json | 121 + autobahn/client/tungstenite_case_7_7_4.html | 293 + autobahn/client/tungstenite_case_7_7_4.json | 121 + autobahn/client/tungstenite_case_7_7_5.html | 293 + autobahn/client/tungstenite_case_7_7_5.json | 121 + autobahn/client/tungstenite_case_7_7_6.html | 293 + autobahn/client/tungstenite_case_7_7_6.json | 121 + autobahn/client/tungstenite_case_7_7_7.html | 293 + autobahn/client/tungstenite_case_7_7_7.json | 121 + autobahn/client/tungstenite_case_7_7_8.html | 293 + autobahn/client/tungstenite_case_7_7_8.json | 121 + autobahn/client/tungstenite_case_7_7_9.html | 293 + autobahn/client/tungstenite_case_7_7_9.json | 121 + autobahn/client/tungstenite_case_7_9_1.html | 293 + autobahn/client/tungstenite_case_7_9_1.json | 120 + autobahn/client/tungstenite_case_7_9_2.html | 293 + autobahn/client/tungstenite_case_7_9_2.json | 120 + autobahn/client/tungstenite_case_7_9_3.html | 293 + autobahn/client/tungstenite_case_7_9_3.json | 120 + autobahn/client/tungstenite_case_7_9_4.html | 293 + autobahn/client/tungstenite_case_7_9_4.json | 120 + autobahn/client/tungstenite_case_7_9_5.html | 293 + autobahn/client/tungstenite_case_7_9_5.json | 120 + autobahn/client/tungstenite_case_7_9_6.html | 293 + autobahn/client/tungstenite_case_7_9_6.json | 120 + autobahn/client/tungstenite_case_7_9_7.html | 293 + autobahn/client/tungstenite_case_7_9_7.json | 120 + autobahn/client/tungstenite_case_7_9_8.html | 293 + autobahn/client/tungstenite_case_7_9_8.json | 120 + autobahn/client/tungstenite_case_7_9_9.html | 293 + autobahn/client/tungstenite_case_7_9_9.json | 120 + autobahn/client/tungstenite_case_9_1_1.html | 298 + autobahn/client/tungstenite_case_9_1_1.json | 123 + autobahn/client/tungstenite_case_9_1_2.html | 298 + autobahn/client/tungstenite_case_9_1_2.json | 123 + autobahn/client/tungstenite_case_9_1_3.html | 298 + autobahn/client/tungstenite_case_9_1_3.json | 123 + autobahn/client/tungstenite_case_9_1_4.html | 298 + autobahn/client/tungstenite_case_9_1_4.json | 123 + autobahn/client/tungstenite_case_9_1_5.html | 298 + autobahn/client/tungstenite_case_9_1_5.json | 123 + autobahn/client/tungstenite_case_9_1_6.html | 298 + autobahn/client/tungstenite_case_9_1_6.json | 123 + autobahn/client/tungstenite_case_9_2_1.html | 298 + autobahn/client/tungstenite_case_9_2_1.json | 123 + autobahn/client/tungstenite_case_9_2_2.html | 298 + autobahn/client/tungstenite_case_9_2_2.json | 123 + autobahn/client/tungstenite_case_9_2_3.html | 298 + autobahn/client/tungstenite_case_9_2_3.json | 123 + autobahn/client/tungstenite_case_9_2_4.html | 298 + autobahn/client/tungstenite_case_9_2_4.json | 123 + autobahn/client/tungstenite_case_9_2_5.html | 298 + autobahn/client/tungstenite_case_9_2_5.json | 123 + autobahn/client/tungstenite_case_9_2_6.html | 298 + autobahn/client/tungstenite_case_9_2_6.json | 123 + autobahn/client/tungstenite_case_9_3_1.html | 300 + autobahn/client/tungstenite_case_9_3_1.json | 125 + autobahn/client/tungstenite_case_9_3_2.html | 300 + autobahn/client/tungstenite_case_9_3_2.json | 125 + autobahn/client/tungstenite_case_9_3_3.html | 300 + autobahn/client/tungstenite_case_9_3_3.json | 125 + autobahn/client/tungstenite_case_9_3_4.html | 300 + autobahn/client/tungstenite_case_9_3_4.json | 125 + autobahn/client/tungstenite_case_9_3_5.html | 300 + autobahn/client/tungstenite_case_9_3_5.json | 125 + autobahn/client/tungstenite_case_9_3_6.html | 300 + autobahn/client/tungstenite_case_9_3_6.json | 125 + autobahn/client/tungstenite_case_9_3_7.html | 300 + autobahn/client/tungstenite_case_9_3_7.json | 125 + autobahn/client/tungstenite_case_9_3_8.html | 300 + autobahn/client/tungstenite_case_9_3_8.json | 125 + autobahn/client/tungstenite_case_9_3_9.html | 298 + autobahn/client/tungstenite_case_9_3_9.json | 123 + autobahn/client/tungstenite_case_9_4_1.html | 300 + autobahn/client/tungstenite_case_9_4_1.json | 125 + autobahn/client/tungstenite_case_9_4_2.html | 300 + autobahn/client/tungstenite_case_9_4_2.json | 125 + autobahn/client/tungstenite_case_9_4_3.html | 300 + autobahn/client/tungstenite_case_9_4_3.json | 125 + autobahn/client/tungstenite_case_9_4_4.html | 300 + autobahn/client/tungstenite_case_9_4_4.json | 125 + autobahn/client/tungstenite_case_9_4_5.html | 300 + autobahn/client/tungstenite_case_9_4_5.json | 125 + autobahn/client/tungstenite_case_9_4_6.html | 300 + autobahn/client/tungstenite_case_9_4_6.json | 125 + autobahn/client/tungstenite_case_9_4_7.html | 300 + autobahn/client/tungstenite_case_9_4_7.json | 125 + autobahn/client/tungstenite_case_9_4_8.html | 300 + autobahn/client/tungstenite_case_9_4_8.json | 125 + autobahn/client/tungstenite_case_9_4_9.html | 298 + autobahn/client/tungstenite_case_9_4_9.json | 123 + autobahn/client/tungstenite_case_9_5_1.html | 299 + autobahn/client/tungstenite_case_9_5_1.json | 124 + autobahn/client/tungstenite_case_9_5_2.html | 299 + autobahn/client/tungstenite_case_9_5_2.json | 124 + autobahn/client/tungstenite_case_9_5_3.html | 299 + autobahn/client/tungstenite_case_9_5_3.json | 124 + autobahn/client/tungstenite_case_9_5_4.html | 299 + autobahn/client/tungstenite_case_9_5_4.json | 124 + autobahn/client/tungstenite_case_9_5_5.html | 299 + autobahn/client/tungstenite_case_9_5_5.json | 124 + autobahn/client/tungstenite_case_9_5_6.html | 299 + autobahn/client/tungstenite_case_9_5_6.json | 124 + autobahn/client/tungstenite_case_9_6_1.html | 299 + autobahn/client/tungstenite_case_9_6_1.json | 124 + autobahn/client/tungstenite_case_9_6_2.html | 299 + autobahn/client/tungstenite_case_9_6_2.json | 124 + autobahn/client/tungstenite_case_9_6_3.html | 299 + autobahn/client/tungstenite_case_9_6_3.json | 124 + autobahn/client/tungstenite_case_9_6_4.html | 299 + autobahn/client/tungstenite_case_9_6_4.json | 124 + autobahn/client/tungstenite_case_9_6_5.html | 299 + autobahn/client/tungstenite_case_9_6_5.json | 124 + autobahn/client/tungstenite_case_9_6_6.html | 299 + autobahn/client/tungstenite_case_9_6_6.json | 124 + autobahn/client/tungstenite_case_9_7_1.html | 299 + autobahn/client/tungstenite_case_9_7_1.json | 130 + autobahn/client/tungstenite_case_9_7_2.html | 299 + autobahn/client/tungstenite_case_9_7_2.json | 130 + autobahn/client/tungstenite_case_9_7_3.html | 299 + autobahn/client/tungstenite_case_9_7_3.json | 130 + autobahn/client/tungstenite_case_9_7_4.html | 299 + autobahn/client/tungstenite_case_9_7_4.json | 130 + autobahn/client/tungstenite_case_9_7_5.html | 299 + autobahn/client/tungstenite_case_9_7_5.json | 130 + autobahn/client/tungstenite_case_9_7_6.html | 299 + autobahn/client/tungstenite_case_9_7_6.json | 130 + autobahn/client/tungstenite_case_9_8_1.html | 299 + autobahn/client/tungstenite_case_9_8_1.json | 130 + autobahn/client/tungstenite_case_9_8_2.html | 299 + autobahn/client/tungstenite_case_9_8_2.json | 130 + autobahn/client/tungstenite_case_9_8_3.html | 299 + autobahn/client/tungstenite_case_9_8_3.json | 130 + autobahn/client/tungstenite_case_9_8_4.html | 299 + autobahn/client/tungstenite_case_9_8_4.json | 130 + autobahn/client/tungstenite_case_9_8_5.html | 299 + autobahn/client/tungstenite_case_9_8_5.json | 130 + autobahn/client/tungstenite_case_9_8_6.html | 299 + autobahn/client/tungstenite_case_9_8_6.json | 130 + autobahn/client/ws_rs_case_12_5_4.html | 989 +++ autobahn/client/ws_rs_case_12_5_4.json | 836 +++ autobahn/server-results.json | 432 +- examples/autobahn-client.rs | 40 +- src/extensions/compression.rs | 41 +- src/extensions/deflate.rs | 425 +- src/lib.rs | 14 +- src/protocol/mod.rs | 23 +- 1045 files changed, 387521 insertions(+), 525 deletions(-) create mode 100644 autobahn/client/index.html create mode 100644 autobahn/client/index.json create mode 100644 autobahn/client/tungstenite_case_10_1_1.html create mode 100644 autobahn/client/tungstenite_case_10_1_1.json create mode 100644 autobahn/client/tungstenite_case_12_1_1.html create mode 100644 autobahn/client/tungstenite_case_12_1_1.json create mode 100644 autobahn/client/tungstenite_case_12_1_10.html create mode 100644 autobahn/client/tungstenite_case_12_1_10.json create mode 100644 autobahn/client/tungstenite_case_12_1_11.html create mode 100644 autobahn/client/tungstenite_case_12_1_11.json create mode 100644 autobahn/client/tungstenite_case_12_1_12.html create mode 100644 autobahn/client/tungstenite_case_12_1_12.json create mode 100644 autobahn/client/tungstenite_case_12_1_13.html create mode 100644 autobahn/client/tungstenite_case_12_1_13.json create mode 100644 autobahn/client/tungstenite_case_12_1_14.html create mode 100644 autobahn/client/tungstenite_case_12_1_14.json create mode 100644 autobahn/client/tungstenite_case_12_1_15.html create mode 100644 autobahn/client/tungstenite_case_12_1_15.json create mode 100644 autobahn/client/tungstenite_case_12_1_16.html create mode 100644 autobahn/client/tungstenite_case_12_1_16.json create mode 100644 autobahn/client/tungstenite_case_12_1_17.html create mode 100644 autobahn/client/tungstenite_case_12_1_17.json create mode 100644 autobahn/client/tungstenite_case_12_1_18.html create mode 100644 autobahn/client/tungstenite_case_12_1_18.json create mode 100644 autobahn/client/tungstenite_case_12_1_2.html create mode 100644 autobahn/client/tungstenite_case_12_1_2.json create mode 100644 autobahn/client/tungstenite_case_12_1_3.html create mode 100644 autobahn/client/tungstenite_case_12_1_3.json create mode 100644 autobahn/client/tungstenite_case_12_1_4.html create mode 100644 autobahn/client/tungstenite_case_12_1_4.json create mode 100644 autobahn/client/tungstenite_case_12_1_5.html create mode 100644 autobahn/client/tungstenite_case_12_1_5.json create mode 100644 autobahn/client/tungstenite_case_12_1_6.html create mode 100644 autobahn/client/tungstenite_case_12_1_6.json create mode 100644 autobahn/client/tungstenite_case_12_1_7.html create mode 100644 autobahn/client/tungstenite_case_12_1_7.json create mode 100644 autobahn/client/tungstenite_case_12_1_8.html create mode 100644 autobahn/client/tungstenite_case_12_1_8.json create mode 100644 autobahn/client/tungstenite_case_12_1_9.html create mode 100644 autobahn/client/tungstenite_case_12_1_9.json create mode 100644 autobahn/client/tungstenite_case_12_2_1.html create mode 100644 autobahn/client/tungstenite_case_12_2_1.json create mode 100644 autobahn/client/tungstenite_case_12_2_10.html create mode 100644 autobahn/client/tungstenite_case_12_2_10.json create mode 100644 autobahn/client/tungstenite_case_12_2_11.html create mode 100644 autobahn/client/tungstenite_case_12_2_11.json create mode 100644 autobahn/client/tungstenite_case_12_2_12.html create mode 100644 autobahn/client/tungstenite_case_12_2_12.json create mode 100644 autobahn/client/tungstenite_case_12_2_13.html create mode 100644 autobahn/client/tungstenite_case_12_2_13.json create mode 100644 autobahn/client/tungstenite_case_12_2_14.html create mode 100644 autobahn/client/tungstenite_case_12_2_14.json create mode 100644 autobahn/client/tungstenite_case_12_2_15.html create mode 100644 autobahn/client/tungstenite_case_12_2_15.json create mode 100644 autobahn/client/tungstenite_case_12_2_16.html create mode 100644 autobahn/client/tungstenite_case_12_2_16.json create mode 100644 autobahn/client/tungstenite_case_12_2_17.html create mode 100644 autobahn/client/tungstenite_case_12_2_17.json create mode 100644 autobahn/client/tungstenite_case_12_2_18.html create mode 100644 autobahn/client/tungstenite_case_12_2_18.json create mode 100644 autobahn/client/tungstenite_case_12_2_2.html create mode 100644 autobahn/client/tungstenite_case_12_2_2.json create mode 100644 autobahn/client/tungstenite_case_12_2_3.html create mode 100644 autobahn/client/tungstenite_case_12_2_3.json create mode 100644 autobahn/client/tungstenite_case_12_2_4.html create mode 100644 autobahn/client/tungstenite_case_12_2_4.json create mode 100644 autobahn/client/tungstenite_case_12_2_5.html create mode 100644 autobahn/client/tungstenite_case_12_2_5.json create mode 100644 autobahn/client/tungstenite_case_12_2_6.html create mode 100644 autobahn/client/tungstenite_case_12_2_6.json create mode 100644 autobahn/client/tungstenite_case_12_2_7.html create mode 100644 autobahn/client/tungstenite_case_12_2_7.json create mode 100644 autobahn/client/tungstenite_case_12_2_8.html create mode 100644 autobahn/client/tungstenite_case_12_2_8.json create mode 100644 autobahn/client/tungstenite_case_12_2_9.html create mode 100644 autobahn/client/tungstenite_case_12_2_9.json create mode 100644 autobahn/client/tungstenite_case_12_3_1.html create mode 100644 autobahn/client/tungstenite_case_12_3_1.json create mode 100644 autobahn/client/tungstenite_case_12_3_10.html create mode 100644 autobahn/client/tungstenite_case_12_3_10.json create mode 100644 autobahn/client/tungstenite_case_12_3_11.html create mode 100644 autobahn/client/tungstenite_case_12_3_11.json create mode 100644 autobahn/client/tungstenite_case_12_3_12.html create mode 100644 autobahn/client/tungstenite_case_12_3_12.json create mode 100644 autobahn/client/tungstenite_case_12_3_13.html create mode 100644 autobahn/client/tungstenite_case_12_3_13.json create mode 100644 autobahn/client/tungstenite_case_12_3_14.html create mode 100644 autobahn/client/tungstenite_case_12_3_14.json create mode 100644 autobahn/client/tungstenite_case_12_3_15.html create mode 100644 autobahn/client/tungstenite_case_12_3_15.json create mode 100644 autobahn/client/tungstenite_case_12_3_16.html create mode 100644 autobahn/client/tungstenite_case_12_3_16.json create mode 100644 autobahn/client/tungstenite_case_12_3_17.html create mode 100644 autobahn/client/tungstenite_case_12_3_17.json create mode 100644 autobahn/client/tungstenite_case_12_3_18.html create mode 100644 autobahn/client/tungstenite_case_12_3_18.json create mode 100644 autobahn/client/tungstenite_case_12_3_2.html create mode 100644 autobahn/client/tungstenite_case_12_3_2.json create mode 100644 autobahn/client/tungstenite_case_12_3_3.html create mode 100644 autobahn/client/tungstenite_case_12_3_3.json create mode 100644 autobahn/client/tungstenite_case_12_3_4.html create mode 100644 autobahn/client/tungstenite_case_12_3_4.json create mode 100644 autobahn/client/tungstenite_case_12_3_5.html create mode 100644 autobahn/client/tungstenite_case_12_3_5.json create mode 100644 autobahn/client/tungstenite_case_12_3_6.html create mode 100644 autobahn/client/tungstenite_case_12_3_6.json create mode 100644 autobahn/client/tungstenite_case_12_3_7.html create mode 100644 autobahn/client/tungstenite_case_12_3_7.json create mode 100644 autobahn/client/tungstenite_case_12_3_8.html create mode 100644 autobahn/client/tungstenite_case_12_3_8.json create mode 100644 autobahn/client/tungstenite_case_12_3_9.html create mode 100644 autobahn/client/tungstenite_case_12_3_9.json create mode 100644 autobahn/client/tungstenite_case_12_4_1.html create mode 100644 autobahn/client/tungstenite_case_12_4_1.json create mode 100644 autobahn/client/tungstenite_case_12_4_10.html create mode 100644 autobahn/client/tungstenite_case_12_4_10.json create mode 100644 autobahn/client/tungstenite_case_12_4_11.html create mode 100644 autobahn/client/tungstenite_case_12_4_11.json create mode 100644 autobahn/client/tungstenite_case_12_4_12.html create mode 100644 autobahn/client/tungstenite_case_12_4_12.json create mode 100644 autobahn/client/tungstenite_case_12_4_13.html create mode 100644 autobahn/client/tungstenite_case_12_4_13.json create mode 100644 autobahn/client/tungstenite_case_12_4_14.html create mode 100644 autobahn/client/tungstenite_case_12_4_14.json create mode 100644 autobahn/client/tungstenite_case_12_4_15.html create mode 100644 autobahn/client/tungstenite_case_12_4_15.json create mode 100644 autobahn/client/tungstenite_case_12_4_16.html create mode 100644 autobahn/client/tungstenite_case_12_4_16.json create mode 100644 autobahn/client/tungstenite_case_12_4_17.html create mode 100644 autobahn/client/tungstenite_case_12_4_17.json create mode 100644 autobahn/client/tungstenite_case_12_4_18.html create mode 100644 autobahn/client/tungstenite_case_12_4_18.json create mode 100644 autobahn/client/tungstenite_case_12_4_2.html create mode 100644 autobahn/client/tungstenite_case_12_4_2.json create mode 100644 autobahn/client/tungstenite_case_12_4_3.html create mode 100644 autobahn/client/tungstenite_case_12_4_3.json create mode 100644 autobahn/client/tungstenite_case_12_4_4.html create mode 100644 autobahn/client/tungstenite_case_12_4_4.json create mode 100644 autobahn/client/tungstenite_case_12_4_5.html create mode 100644 autobahn/client/tungstenite_case_12_4_5.json create mode 100644 autobahn/client/tungstenite_case_12_4_6.html create mode 100644 autobahn/client/tungstenite_case_12_4_6.json create mode 100644 autobahn/client/tungstenite_case_12_4_7.html create mode 100644 autobahn/client/tungstenite_case_12_4_7.json create mode 100644 autobahn/client/tungstenite_case_12_4_8.html create mode 100644 autobahn/client/tungstenite_case_12_4_8.json create mode 100644 autobahn/client/tungstenite_case_12_4_9.html create mode 100644 autobahn/client/tungstenite_case_12_4_9.json create mode 100644 autobahn/client/tungstenite_case_12_5_1.html create mode 100644 autobahn/client/tungstenite_case_12_5_1.json create mode 100644 autobahn/client/tungstenite_case_12_5_10.html create mode 100644 autobahn/client/tungstenite_case_12_5_10.json create mode 100644 autobahn/client/tungstenite_case_12_5_11.html create mode 100644 autobahn/client/tungstenite_case_12_5_11.json create mode 100644 autobahn/client/tungstenite_case_12_5_12.html create mode 100644 autobahn/client/tungstenite_case_12_5_12.json create mode 100644 autobahn/client/tungstenite_case_12_5_13.html create mode 100644 autobahn/client/tungstenite_case_12_5_13.json create mode 100644 autobahn/client/tungstenite_case_12_5_14.html create mode 100644 autobahn/client/tungstenite_case_12_5_14.json create mode 100644 autobahn/client/tungstenite_case_12_5_15.html create mode 100644 autobahn/client/tungstenite_case_12_5_15.json create mode 100644 autobahn/client/tungstenite_case_12_5_16.html create mode 100644 autobahn/client/tungstenite_case_12_5_16.json create mode 100644 autobahn/client/tungstenite_case_12_5_17.html create mode 100644 autobahn/client/tungstenite_case_12_5_17.json create mode 100644 autobahn/client/tungstenite_case_12_5_18.html create mode 100644 autobahn/client/tungstenite_case_12_5_18.json create mode 100644 autobahn/client/tungstenite_case_12_5_2.html create mode 100644 autobahn/client/tungstenite_case_12_5_2.json create mode 100644 autobahn/client/tungstenite_case_12_5_3.html create mode 100644 autobahn/client/tungstenite_case_12_5_3.json create mode 100644 autobahn/client/tungstenite_case_12_5_4.html create mode 100644 autobahn/client/tungstenite_case_12_5_4.json create mode 100644 autobahn/client/tungstenite_case_12_5_5.html create mode 100644 autobahn/client/tungstenite_case_12_5_5.json create mode 100644 autobahn/client/tungstenite_case_12_5_6.html create mode 100644 autobahn/client/tungstenite_case_12_5_6.json create mode 100644 autobahn/client/tungstenite_case_12_5_7.html create mode 100644 autobahn/client/tungstenite_case_12_5_7.json create mode 100644 autobahn/client/tungstenite_case_12_5_8.html create mode 100644 autobahn/client/tungstenite_case_12_5_8.json create mode 100644 autobahn/client/tungstenite_case_12_5_9.html create mode 100644 autobahn/client/tungstenite_case_12_5_9.json create mode 100644 autobahn/client/tungstenite_case_13_1_1.html create mode 100644 autobahn/client/tungstenite_case_13_1_1.json create mode 100644 autobahn/client/tungstenite_case_13_1_10.html create mode 100644 autobahn/client/tungstenite_case_13_1_10.json create mode 100644 autobahn/client/tungstenite_case_13_1_11.html create mode 100644 autobahn/client/tungstenite_case_13_1_11.json create mode 100644 autobahn/client/tungstenite_case_13_1_12.html create mode 100644 autobahn/client/tungstenite_case_13_1_12.json create mode 100644 autobahn/client/tungstenite_case_13_1_13.html create mode 100644 autobahn/client/tungstenite_case_13_1_13.json create mode 100644 autobahn/client/tungstenite_case_13_1_14.html create mode 100644 autobahn/client/tungstenite_case_13_1_14.json create mode 100644 autobahn/client/tungstenite_case_13_1_15.html create mode 100644 autobahn/client/tungstenite_case_13_1_15.json create mode 100644 autobahn/client/tungstenite_case_13_1_16.html create mode 100644 autobahn/client/tungstenite_case_13_1_16.json create mode 100644 autobahn/client/tungstenite_case_13_1_17.html create mode 100644 autobahn/client/tungstenite_case_13_1_17.json create mode 100644 autobahn/client/tungstenite_case_13_1_18.html create mode 100644 autobahn/client/tungstenite_case_13_1_18.json create mode 100644 autobahn/client/tungstenite_case_13_1_2.html create mode 100644 autobahn/client/tungstenite_case_13_1_2.json create mode 100644 autobahn/client/tungstenite_case_13_1_3.html create mode 100644 autobahn/client/tungstenite_case_13_1_3.json create mode 100644 autobahn/client/tungstenite_case_13_1_4.html create mode 100644 autobahn/client/tungstenite_case_13_1_4.json create mode 100644 autobahn/client/tungstenite_case_13_1_5.html create mode 100644 autobahn/client/tungstenite_case_13_1_5.json create mode 100644 autobahn/client/tungstenite_case_13_1_6.html create mode 100644 autobahn/client/tungstenite_case_13_1_6.json create mode 100644 autobahn/client/tungstenite_case_13_1_7.html create mode 100644 autobahn/client/tungstenite_case_13_1_7.json create mode 100644 autobahn/client/tungstenite_case_13_1_8.html create mode 100644 autobahn/client/tungstenite_case_13_1_8.json create mode 100644 autobahn/client/tungstenite_case_13_1_9.html create mode 100644 autobahn/client/tungstenite_case_13_1_9.json create mode 100644 autobahn/client/tungstenite_case_13_2_1.html create mode 100644 autobahn/client/tungstenite_case_13_2_1.json create mode 100644 autobahn/client/tungstenite_case_13_2_10.html create mode 100644 autobahn/client/tungstenite_case_13_2_10.json create mode 100644 autobahn/client/tungstenite_case_13_2_11.html create mode 100644 autobahn/client/tungstenite_case_13_2_11.json create mode 100644 autobahn/client/tungstenite_case_13_2_12.html create mode 100644 autobahn/client/tungstenite_case_13_2_12.json create mode 100644 autobahn/client/tungstenite_case_13_2_13.html create mode 100644 autobahn/client/tungstenite_case_13_2_13.json create mode 100644 autobahn/client/tungstenite_case_13_2_14.html create mode 100644 autobahn/client/tungstenite_case_13_2_14.json create mode 100644 autobahn/client/tungstenite_case_13_2_15.html create mode 100644 autobahn/client/tungstenite_case_13_2_15.json create mode 100644 autobahn/client/tungstenite_case_13_2_16.html create mode 100644 autobahn/client/tungstenite_case_13_2_16.json create mode 100644 autobahn/client/tungstenite_case_13_2_17.html create mode 100644 autobahn/client/tungstenite_case_13_2_17.json create mode 100644 autobahn/client/tungstenite_case_13_2_18.html create mode 100644 autobahn/client/tungstenite_case_13_2_18.json create mode 100644 autobahn/client/tungstenite_case_13_2_2.html create mode 100644 autobahn/client/tungstenite_case_13_2_2.json create mode 100644 autobahn/client/tungstenite_case_13_2_3.html create mode 100644 autobahn/client/tungstenite_case_13_2_3.json create mode 100644 autobahn/client/tungstenite_case_13_2_4.html create mode 100644 autobahn/client/tungstenite_case_13_2_4.json create mode 100644 autobahn/client/tungstenite_case_13_2_5.html create mode 100644 autobahn/client/tungstenite_case_13_2_5.json create mode 100644 autobahn/client/tungstenite_case_13_2_6.html create mode 100644 autobahn/client/tungstenite_case_13_2_6.json create mode 100644 autobahn/client/tungstenite_case_13_2_7.html create mode 100644 autobahn/client/tungstenite_case_13_2_7.json create mode 100644 autobahn/client/tungstenite_case_13_2_8.html create mode 100644 autobahn/client/tungstenite_case_13_2_8.json create mode 100644 autobahn/client/tungstenite_case_13_2_9.html create mode 100644 autobahn/client/tungstenite_case_13_2_9.json create mode 100644 autobahn/client/tungstenite_case_13_3_1.html create mode 100644 autobahn/client/tungstenite_case_13_3_1.json create mode 100644 autobahn/client/tungstenite_case_13_3_10.html create mode 100644 autobahn/client/tungstenite_case_13_3_10.json create mode 100644 autobahn/client/tungstenite_case_13_3_11.html create mode 100644 autobahn/client/tungstenite_case_13_3_11.json create mode 100644 autobahn/client/tungstenite_case_13_3_12.html create mode 100644 autobahn/client/tungstenite_case_13_3_12.json create mode 100644 autobahn/client/tungstenite_case_13_3_13.html create mode 100644 autobahn/client/tungstenite_case_13_3_13.json create mode 100644 autobahn/client/tungstenite_case_13_3_14.html create mode 100644 autobahn/client/tungstenite_case_13_3_14.json create mode 100644 autobahn/client/tungstenite_case_13_3_15.html create mode 100644 autobahn/client/tungstenite_case_13_3_15.json create mode 100644 autobahn/client/tungstenite_case_13_3_16.html create mode 100644 autobahn/client/tungstenite_case_13_3_16.json create mode 100644 autobahn/client/tungstenite_case_13_3_17.html create mode 100644 autobahn/client/tungstenite_case_13_3_17.json create mode 100644 autobahn/client/tungstenite_case_13_3_18.html create mode 100644 autobahn/client/tungstenite_case_13_3_18.json create mode 100644 autobahn/client/tungstenite_case_13_3_2.html create mode 100644 autobahn/client/tungstenite_case_13_3_2.json create mode 100644 autobahn/client/tungstenite_case_13_3_3.html create mode 100644 autobahn/client/tungstenite_case_13_3_3.json create mode 100644 autobahn/client/tungstenite_case_13_3_4.html create mode 100644 autobahn/client/tungstenite_case_13_3_4.json create mode 100644 autobahn/client/tungstenite_case_13_3_5.html create mode 100644 autobahn/client/tungstenite_case_13_3_5.json create mode 100644 autobahn/client/tungstenite_case_13_3_6.html create mode 100644 autobahn/client/tungstenite_case_13_3_6.json create mode 100644 autobahn/client/tungstenite_case_13_3_7.html create mode 100644 autobahn/client/tungstenite_case_13_3_7.json create mode 100644 autobahn/client/tungstenite_case_13_3_8.html create mode 100644 autobahn/client/tungstenite_case_13_3_8.json create mode 100644 autobahn/client/tungstenite_case_13_3_9.html create mode 100644 autobahn/client/tungstenite_case_13_3_9.json create mode 100644 autobahn/client/tungstenite_case_13_4_1.html create mode 100644 autobahn/client/tungstenite_case_13_4_1.json create mode 100644 autobahn/client/tungstenite_case_13_4_10.html create mode 100644 autobahn/client/tungstenite_case_13_4_10.json create mode 100644 autobahn/client/tungstenite_case_13_4_11.html create mode 100644 autobahn/client/tungstenite_case_13_4_11.json create mode 100644 autobahn/client/tungstenite_case_13_4_12.html create mode 100644 autobahn/client/tungstenite_case_13_4_12.json create mode 100644 autobahn/client/tungstenite_case_13_4_13.html create mode 100644 autobahn/client/tungstenite_case_13_4_13.json create mode 100644 autobahn/client/tungstenite_case_13_4_14.html create mode 100644 autobahn/client/tungstenite_case_13_4_14.json create mode 100644 autobahn/client/tungstenite_case_13_4_15.html create mode 100644 autobahn/client/tungstenite_case_13_4_15.json create mode 100644 autobahn/client/tungstenite_case_13_4_16.html create mode 100644 autobahn/client/tungstenite_case_13_4_16.json create mode 100644 autobahn/client/tungstenite_case_13_4_17.html create mode 100644 autobahn/client/tungstenite_case_13_4_17.json create mode 100644 autobahn/client/tungstenite_case_13_4_18.html create mode 100644 autobahn/client/tungstenite_case_13_4_18.json create mode 100644 autobahn/client/tungstenite_case_13_4_2.html create mode 100644 autobahn/client/tungstenite_case_13_4_2.json create mode 100644 autobahn/client/tungstenite_case_13_4_3.html create mode 100644 autobahn/client/tungstenite_case_13_4_3.json create mode 100644 autobahn/client/tungstenite_case_13_4_4.html create mode 100644 autobahn/client/tungstenite_case_13_4_4.json create mode 100644 autobahn/client/tungstenite_case_13_4_5.html create mode 100644 autobahn/client/tungstenite_case_13_4_5.json create mode 100644 autobahn/client/tungstenite_case_13_4_6.html create mode 100644 autobahn/client/tungstenite_case_13_4_6.json create mode 100644 autobahn/client/tungstenite_case_13_4_7.html create mode 100644 autobahn/client/tungstenite_case_13_4_7.json create mode 100644 autobahn/client/tungstenite_case_13_4_8.html create mode 100644 autobahn/client/tungstenite_case_13_4_8.json create mode 100644 autobahn/client/tungstenite_case_13_4_9.html create mode 100644 autobahn/client/tungstenite_case_13_4_9.json create mode 100644 autobahn/client/tungstenite_case_13_5_1.html create mode 100644 autobahn/client/tungstenite_case_13_5_1.json create mode 100644 autobahn/client/tungstenite_case_13_5_10.html create mode 100644 autobahn/client/tungstenite_case_13_5_10.json create mode 100644 autobahn/client/tungstenite_case_13_5_11.html create mode 100644 autobahn/client/tungstenite_case_13_5_11.json create mode 100644 autobahn/client/tungstenite_case_13_5_12.html create mode 100644 autobahn/client/tungstenite_case_13_5_12.json create mode 100644 autobahn/client/tungstenite_case_13_5_13.html create mode 100644 autobahn/client/tungstenite_case_13_5_13.json create mode 100644 autobahn/client/tungstenite_case_13_5_14.html create mode 100644 autobahn/client/tungstenite_case_13_5_14.json create mode 100644 autobahn/client/tungstenite_case_13_5_15.html create mode 100644 autobahn/client/tungstenite_case_13_5_15.json create mode 100644 autobahn/client/tungstenite_case_13_5_16.html create mode 100644 autobahn/client/tungstenite_case_13_5_16.json create mode 100644 autobahn/client/tungstenite_case_13_5_17.html create mode 100644 autobahn/client/tungstenite_case_13_5_17.json create mode 100644 autobahn/client/tungstenite_case_13_5_18.html create mode 100644 autobahn/client/tungstenite_case_13_5_18.json create mode 100644 autobahn/client/tungstenite_case_13_5_2.html create mode 100644 autobahn/client/tungstenite_case_13_5_2.json create mode 100644 autobahn/client/tungstenite_case_13_5_3.html create mode 100644 autobahn/client/tungstenite_case_13_5_3.json create mode 100644 autobahn/client/tungstenite_case_13_5_4.html create mode 100644 autobahn/client/tungstenite_case_13_5_4.json create mode 100644 autobahn/client/tungstenite_case_13_5_5.html create mode 100644 autobahn/client/tungstenite_case_13_5_5.json create mode 100644 autobahn/client/tungstenite_case_13_5_6.html create mode 100644 autobahn/client/tungstenite_case_13_5_6.json create mode 100644 autobahn/client/tungstenite_case_13_5_7.html create mode 100644 autobahn/client/tungstenite_case_13_5_7.json create mode 100644 autobahn/client/tungstenite_case_13_5_8.html create mode 100644 autobahn/client/tungstenite_case_13_5_8.json create mode 100644 autobahn/client/tungstenite_case_13_5_9.html create mode 100644 autobahn/client/tungstenite_case_13_5_9.json create mode 100644 autobahn/client/tungstenite_case_13_6_1.html create mode 100644 autobahn/client/tungstenite_case_13_6_1.json create mode 100644 autobahn/client/tungstenite_case_13_6_10.html create mode 100644 autobahn/client/tungstenite_case_13_6_10.json create mode 100644 autobahn/client/tungstenite_case_13_6_11.html create mode 100644 autobahn/client/tungstenite_case_13_6_11.json create mode 100644 autobahn/client/tungstenite_case_13_6_12.html create mode 100644 autobahn/client/tungstenite_case_13_6_12.json create mode 100644 autobahn/client/tungstenite_case_13_6_13.html create mode 100644 autobahn/client/tungstenite_case_13_6_13.json create mode 100644 autobahn/client/tungstenite_case_13_6_14.html create mode 100644 autobahn/client/tungstenite_case_13_6_14.json create mode 100644 autobahn/client/tungstenite_case_13_6_15.html create mode 100644 autobahn/client/tungstenite_case_13_6_15.json create mode 100644 autobahn/client/tungstenite_case_13_6_16.html create mode 100644 autobahn/client/tungstenite_case_13_6_16.json create mode 100644 autobahn/client/tungstenite_case_13_6_17.html create mode 100644 autobahn/client/tungstenite_case_13_6_17.json create mode 100644 autobahn/client/tungstenite_case_13_6_18.html create mode 100644 autobahn/client/tungstenite_case_13_6_18.json create mode 100644 autobahn/client/tungstenite_case_13_6_2.html create mode 100644 autobahn/client/tungstenite_case_13_6_2.json create mode 100644 autobahn/client/tungstenite_case_13_6_3.html create mode 100644 autobahn/client/tungstenite_case_13_6_3.json create mode 100644 autobahn/client/tungstenite_case_13_6_4.html create mode 100644 autobahn/client/tungstenite_case_13_6_4.json create mode 100644 autobahn/client/tungstenite_case_13_6_5.html create mode 100644 autobahn/client/tungstenite_case_13_6_5.json create mode 100644 autobahn/client/tungstenite_case_13_6_6.html create mode 100644 autobahn/client/tungstenite_case_13_6_6.json create mode 100644 autobahn/client/tungstenite_case_13_6_7.html create mode 100644 autobahn/client/tungstenite_case_13_6_7.json create mode 100644 autobahn/client/tungstenite_case_13_6_8.html create mode 100644 autobahn/client/tungstenite_case_13_6_8.json create mode 100644 autobahn/client/tungstenite_case_13_6_9.html create mode 100644 autobahn/client/tungstenite_case_13_6_9.json create mode 100644 autobahn/client/tungstenite_case_13_7_1.html create mode 100644 autobahn/client/tungstenite_case_13_7_1.json create mode 100644 autobahn/client/tungstenite_case_13_7_10.html create mode 100644 autobahn/client/tungstenite_case_13_7_10.json create mode 100644 autobahn/client/tungstenite_case_13_7_11.html create mode 100644 autobahn/client/tungstenite_case_13_7_11.json create mode 100644 autobahn/client/tungstenite_case_13_7_12.html create mode 100644 autobahn/client/tungstenite_case_13_7_12.json create mode 100644 autobahn/client/tungstenite_case_13_7_13.html create mode 100644 autobahn/client/tungstenite_case_13_7_13.json create mode 100644 autobahn/client/tungstenite_case_13_7_14.html create mode 100644 autobahn/client/tungstenite_case_13_7_14.json create mode 100644 autobahn/client/tungstenite_case_13_7_15.html create mode 100644 autobahn/client/tungstenite_case_13_7_15.json create mode 100644 autobahn/client/tungstenite_case_13_7_16.html create mode 100644 autobahn/client/tungstenite_case_13_7_16.json create mode 100644 autobahn/client/tungstenite_case_13_7_17.html create mode 100644 autobahn/client/tungstenite_case_13_7_17.json create mode 100644 autobahn/client/tungstenite_case_13_7_18.html create mode 100644 autobahn/client/tungstenite_case_13_7_18.json create mode 100644 autobahn/client/tungstenite_case_13_7_2.html create mode 100644 autobahn/client/tungstenite_case_13_7_2.json create mode 100644 autobahn/client/tungstenite_case_13_7_3.html create mode 100644 autobahn/client/tungstenite_case_13_7_3.json create mode 100644 autobahn/client/tungstenite_case_13_7_4.html create mode 100644 autobahn/client/tungstenite_case_13_7_4.json create mode 100644 autobahn/client/tungstenite_case_13_7_5.html create mode 100644 autobahn/client/tungstenite_case_13_7_5.json create mode 100644 autobahn/client/tungstenite_case_13_7_6.html create mode 100644 autobahn/client/tungstenite_case_13_7_6.json create mode 100644 autobahn/client/tungstenite_case_13_7_7.html create mode 100644 autobahn/client/tungstenite_case_13_7_7.json create mode 100644 autobahn/client/tungstenite_case_13_7_8.html create mode 100644 autobahn/client/tungstenite_case_13_7_8.json create mode 100644 autobahn/client/tungstenite_case_13_7_9.html create mode 100644 autobahn/client/tungstenite_case_13_7_9.json create mode 100644 autobahn/client/tungstenite_case_1_1_1.html create mode 100644 autobahn/client/tungstenite_case_1_1_1.json create mode 100644 autobahn/client/tungstenite_case_1_1_2.html create mode 100644 autobahn/client/tungstenite_case_1_1_2.json create mode 100644 autobahn/client/tungstenite_case_1_1_3.html create mode 100644 autobahn/client/tungstenite_case_1_1_3.json create mode 100644 autobahn/client/tungstenite_case_1_1_4.html create mode 100644 autobahn/client/tungstenite_case_1_1_4.json create mode 100644 autobahn/client/tungstenite_case_1_1_5.html create mode 100644 autobahn/client/tungstenite_case_1_1_5.json create mode 100644 autobahn/client/tungstenite_case_1_1_6.html create mode 100644 autobahn/client/tungstenite_case_1_1_6.json create mode 100644 autobahn/client/tungstenite_case_1_1_7.html create mode 100644 autobahn/client/tungstenite_case_1_1_7.json create mode 100644 autobahn/client/tungstenite_case_1_1_8.html create mode 100644 autobahn/client/tungstenite_case_1_1_8.json create mode 100644 autobahn/client/tungstenite_case_1_2_1.html create mode 100644 autobahn/client/tungstenite_case_1_2_1.json create mode 100644 autobahn/client/tungstenite_case_1_2_2.html create mode 100644 autobahn/client/tungstenite_case_1_2_2.json create mode 100644 autobahn/client/tungstenite_case_1_2_3.html create mode 100644 autobahn/client/tungstenite_case_1_2_3.json create mode 100644 autobahn/client/tungstenite_case_1_2_4.html create mode 100644 autobahn/client/tungstenite_case_1_2_4.json create mode 100644 autobahn/client/tungstenite_case_1_2_5.html create mode 100644 autobahn/client/tungstenite_case_1_2_5.json create mode 100644 autobahn/client/tungstenite_case_1_2_6.html create mode 100644 autobahn/client/tungstenite_case_1_2_6.json create mode 100644 autobahn/client/tungstenite_case_1_2_7.html create mode 100644 autobahn/client/tungstenite_case_1_2_7.json create mode 100644 autobahn/client/tungstenite_case_1_2_8.html create mode 100644 autobahn/client/tungstenite_case_1_2_8.json create mode 100644 autobahn/client/tungstenite_case_2_1.html create mode 100644 autobahn/client/tungstenite_case_2_1.json create mode 100644 autobahn/client/tungstenite_case_2_10.html create mode 100644 autobahn/client/tungstenite_case_2_10.json create mode 100644 autobahn/client/tungstenite_case_2_11.html create mode 100644 autobahn/client/tungstenite_case_2_11.json create mode 100644 autobahn/client/tungstenite_case_2_2.html create mode 100644 autobahn/client/tungstenite_case_2_2.json create mode 100644 autobahn/client/tungstenite_case_2_3.html create mode 100644 autobahn/client/tungstenite_case_2_3.json create mode 100644 autobahn/client/tungstenite_case_2_4.html create mode 100644 autobahn/client/tungstenite_case_2_4.json create mode 100644 autobahn/client/tungstenite_case_2_5.html create mode 100644 autobahn/client/tungstenite_case_2_5.json create mode 100644 autobahn/client/tungstenite_case_2_6.html create mode 100644 autobahn/client/tungstenite_case_2_6.json create mode 100644 autobahn/client/tungstenite_case_2_7.html create mode 100644 autobahn/client/tungstenite_case_2_7.json create mode 100644 autobahn/client/tungstenite_case_2_8.html create mode 100644 autobahn/client/tungstenite_case_2_8.json create mode 100644 autobahn/client/tungstenite_case_2_9.html create mode 100644 autobahn/client/tungstenite_case_2_9.json create mode 100644 autobahn/client/tungstenite_case_3_1.html create mode 100644 autobahn/client/tungstenite_case_3_1.json create mode 100644 autobahn/client/tungstenite_case_3_2.html create mode 100644 autobahn/client/tungstenite_case_3_2.json create mode 100644 autobahn/client/tungstenite_case_3_3.html create mode 100644 autobahn/client/tungstenite_case_3_3.json create mode 100644 autobahn/client/tungstenite_case_3_4.html create mode 100644 autobahn/client/tungstenite_case_3_4.json create mode 100644 autobahn/client/tungstenite_case_3_5.html create mode 100644 autobahn/client/tungstenite_case_3_5.json create mode 100644 autobahn/client/tungstenite_case_3_6.html create mode 100644 autobahn/client/tungstenite_case_3_6.json create mode 100644 autobahn/client/tungstenite_case_3_7.html create mode 100644 autobahn/client/tungstenite_case_3_7.json create mode 100644 autobahn/client/tungstenite_case_4_1_1.html create mode 100644 autobahn/client/tungstenite_case_4_1_1.json create mode 100644 autobahn/client/tungstenite_case_4_1_2.html create mode 100644 autobahn/client/tungstenite_case_4_1_2.json create mode 100644 autobahn/client/tungstenite_case_4_1_3.html create mode 100644 autobahn/client/tungstenite_case_4_1_3.json create mode 100644 autobahn/client/tungstenite_case_4_1_4.html create mode 100644 autobahn/client/tungstenite_case_4_1_4.json create mode 100644 autobahn/client/tungstenite_case_4_1_5.html create mode 100644 autobahn/client/tungstenite_case_4_1_5.json create mode 100644 autobahn/client/tungstenite_case_4_2_1.html create mode 100644 autobahn/client/tungstenite_case_4_2_1.json create mode 100644 autobahn/client/tungstenite_case_4_2_2.html create mode 100644 autobahn/client/tungstenite_case_4_2_2.json create mode 100644 autobahn/client/tungstenite_case_4_2_3.html create mode 100644 autobahn/client/tungstenite_case_4_2_3.json create mode 100644 autobahn/client/tungstenite_case_4_2_4.html create mode 100644 autobahn/client/tungstenite_case_4_2_4.json create mode 100644 autobahn/client/tungstenite_case_4_2_5.html create mode 100644 autobahn/client/tungstenite_case_4_2_5.json create mode 100644 autobahn/client/tungstenite_case_5_1.html create mode 100644 autobahn/client/tungstenite_case_5_1.json create mode 100644 autobahn/client/tungstenite_case_5_10.html create mode 100644 autobahn/client/tungstenite_case_5_10.json create mode 100644 autobahn/client/tungstenite_case_5_11.html create mode 100644 autobahn/client/tungstenite_case_5_11.json create mode 100644 autobahn/client/tungstenite_case_5_12.html create mode 100644 autobahn/client/tungstenite_case_5_12.json create mode 100644 autobahn/client/tungstenite_case_5_13.html create mode 100644 autobahn/client/tungstenite_case_5_13.json create mode 100644 autobahn/client/tungstenite_case_5_14.html create mode 100644 autobahn/client/tungstenite_case_5_14.json create mode 100644 autobahn/client/tungstenite_case_5_15.html create mode 100644 autobahn/client/tungstenite_case_5_15.json create mode 100644 autobahn/client/tungstenite_case_5_16.html create mode 100644 autobahn/client/tungstenite_case_5_16.json create mode 100644 autobahn/client/tungstenite_case_5_17.html create mode 100644 autobahn/client/tungstenite_case_5_17.json create mode 100644 autobahn/client/tungstenite_case_5_18.html create mode 100644 autobahn/client/tungstenite_case_5_18.json create mode 100644 autobahn/client/tungstenite_case_5_19.html create mode 100644 autobahn/client/tungstenite_case_5_19.json create mode 100644 autobahn/client/tungstenite_case_5_2.html create mode 100644 autobahn/client/tungstenite_case_5_2.json create mode 100644 autobahn/client/tungstenite_case_5_20.html create mode 100644 autobahn/client/tungstenite_case_5_20.json create mode 100644 autobahn/client/tungstenite_case_5_3.html create mode 100644 autobahn/client/tungstenite_case_5_3.json create mode 100644 autobahn/client/tungstenite_case_5_4.html create mode 100644 autobahn/client/tungstenite_case_5_4.json create mode 100644 autobahn/client/tungstenite_case_5_5.html create mode 100644 autobahn/client/tungstenite_case_5_5.json create mode 100644 autobahn/client/tungstenite_case_5_6.html create mode 100644 autobahn/client/tungstenite_case_5_6.json create mode 100644 autobahn/client/tungstenite_case_5_7.html create mode 100644 autobahn/client/tungstenite_case_5_7.json create mode 100644 autobahn/client/tungstenite_case_5_8.html create mode 100644 autobahn/client/tungstenite_case_5_8.json create mode 100644 autobahn/client/tungstenite_case_5_9.html create mode 100644 autobahn/client/tungstenite_case_5_9.json create mode 100644 autobahn/client/tungstenite_case_6_10_1.html create mode 100644 autobahn/client/tungstenite_case_6_10_1.json create mode 100644 autobahn/client/tungstenite_case_6_10_2.html create mode 100644 autobahn/client/tungstenite_case_6_10_2.json create mode 100644 autobahn/client/tungstenite_case_6_10_3.html create mode 100644 autobahn/client/tungstenite_case_6_10_3.json create mode 100644 autobahn/client/tungstenite_case_6_11_1.html create mode 100644 autobahn/client/tungstenite_case_6_11_1.json create mode 100644 autobahn/client/tungstenite_case_6_11_2.html create mode 100644 autobahn/client/tungstenite_case_6_11_2.json create mode 100644 autobahn/client/tungstenite_case_6_11_3.html create mode 100644 autobahn/client/tungstenite_case_6_11_3.json create mode 100644 autobahn/client/tungstenite_case_6_11_4.html create mode 100644 autobahn/client/tungstenite_case_6_11_4.json create mode 100644 autobahn/client/tungstenite_case_6_11_5.html create mode 100644 autobahn/client/tungstenite_case_6_11_5.json create mode 100644 autobahn/client/tungstenite_case_6_12_1.html create mode 100644 autobahn/client/tungstenite_case_6_12_1.json create mode 100644 autobahn/client/tungstenite_case_6_12_2.html create mode 100644 autobahn/client/tungstenite_case_6_12_2.json create mode 100644 autobahn/client/tungstenite_case_6_12_3.html create mode 100644 autobahn/client/tungstenite_case_6_12_3.json create mode 100644 autobahn/client/tungstenite_case_6_12_4.html create mode 100644 autobahn/client/tungstenite_case_6_12_4.json create mode 100644 autobahn/client/tungstenite_case_6_12_5.html create mode 100644 autobahn/client/tungstenite_case_6_12_5.json create mode 100644 autobahn/client/tungstenite_case_6_12_6.html create mode 100644 autobahn/client/tungstenite_case_6_12_6.json create mode 100644 autobahn/client/tungstenite_case_6_12_7.html create mode 100644 autobahn/client/tungstenite_case_6_12_7.json create mode 100644 autobahn/client/tungstenite_case_6_12_8.html create mode 100644 autobahn/client/tungstenite_case_6_12_8.json create mode 100644 autobahn/client/tungstenite_case_6_13_1.html create mode 100644 autobahn/client/tungstenite_case_6_13_1.json create mode 100644 autobahn/client/tungstenite_case_6_13_2.html create mode 100644 autobahn/client/tungstenite_case_6_13_2.json create mode 100644 autobahn/client/tungstenite_case_6_13_3.html create mode 100644 autobahn/client/tungstenite_case_6_13_3.json create mode 100644 autobahn/client/tungstenite_case_6_13_4.html create mode 100644 autobahn/client/tungstenite_case_6_13_4.json create mode 100644 autobahn/client/tungstenite_case_6_13_5.html create mode 100644 autobahn/client/tungstenite_case_6_13_5.json create mode 100644 autobahn/client/tungstenite_case_6_14_1.html create mode 100644 autobahn/client/tungstenite_case_6_14_1.json create mode 100644 autobahn/client/tungstenite_case_6_14_10.html create mode 100644 autobahn/client/tungstenite_case_6_14_10.json create mode 100644 autobahn/client/tungstenite_case_6_14_2.html create mode 100644 autobahn/client/tungstenite_case_6_14_2.json create mode 100644 autobahn/client/tungstenite_case_6_14_3.html create mode 100644 autobahn/client/tungstenite_case_6_14_3.json create mode 100644 autobahn/client/tungstenite_case_6_14_4.html create mode 100644 autobahn/client/tungstenite_case_6_14_4.json create mode 100644 autobahn/client/tungstenite_case_6_14_5.html create mode 100644 autobahn/client/tungstenite_case_6_14_5.json create mode 100644 autobahn/client/tungstenite_case_6_14_6.html create mode 100644 autobahn/client/tungstenite_case_6_14_6.json create mode 100644 autobahn/client/tungstenite_case_6_14_7.html create mode 100644 autobahn/client/tungstenite_case_6_14_7.json create mode 100644 autobahn/client/tungstenite_case_6_14_8.html create mode 100644 autobahn/client/tungstenite_case_6_14_8.json create mode 100644 autobahn/client/tungstenite_case_6_14_9.html create mode 100644 autobahn/client/tungstenite_case_6_14_9.json create mode 100644 autobahn/client/tungstenite_case_6_15_1.html create mode 100644 autobahn/client/tungstenite_case_6_15_1.json create mode 100644 autobahn/client/tungstenite_case_6_16_1.html create mode 100644 autobahn/client/tungstenite_case_6_16_1.json create mode 100644 autobahn/client/tungstenite_case_6_16_2.html create mode 100644 autobahn/client/tungstenite_case_6_16_2.json create mode 100644 autobahn/client/tungstenite_case_6_16_3.html create mode 100644 autobahn/client/tungstenite_case_6_16_3.json create mode 100644 autobahn/client/tungstenite_case_6_17_1.html create mode 100644 autobahn/client/tungstenite_case_6_17_1.json create mode 100644 autobahn/client/tungstenite_case_6_17_2.html create mode 100644 autobahn/client/tungstenite_case_6_17_2.json create mode 100644 autobahn/client/tungstenite_case_6_17_3.html create mode 100644 autobahn/client/tungstenite_case_6_17_3.json create mode 100644 autobahn/client/tungstenite_case_6_17_4.html create mode 100644 autobahn/client/tungstenite_case_6_17_4.json create mode 100644 autobahn/client/tungstenite_case_6_17_5.html create mode 100644 autobahn/client/tungstenite_case_6_17_5.json create mode 100644 autobahn/client/tungstenite_case_6_18_1.html create mode 100644 autobahn/client/tungstenite_case_6_18_1.json create mode 100644 autobahn/client/tungstenite_case_6_18_2.html create mode 100644 autobahn/client/tungstenite_case_6_18_2.json create mode 100644 autobahn/client/tungstenite_case_6_18_3.html create mode 100644 autobahn/client/tungstenite_case_6_18_3.json create mode 100644 autobahn/client/tungstenite_case_6_18_4.html create mode 100644 autobahn/client/tungstenite_case_6_18_4.json create mode 100644 autobahn/client/tungstenite_case_6_18_5.html create mode 100644 autobahn/client/tungstenite_case_6_18_5.json create mode 100644 autobahn/client/tungstenite_case_6_19_1.html create mode 100644 autobahn/client/tungstenite_case_6_19_1.json create mode 100644 autobahn/client/tungstenite_case_6_19_2.html create mode 100644 autobahn/client/tungstenite_case_6_19_2.json create mode 100644 autobahn/client/tungstenite_case_6_19_3.html create mode 100644 autobahn/client/tungstenite_case_6_19_3.json create mode 100644 autobahn/client/tungstenite_case_6_19_4.html create mode 100644 autobahn/client/tungstenite_case_6_19_4.json create mode 100644 autobahn/client/tungstenite_case_6_19_5.html create mode 100644 autobahn/client/tungstenite_case_6_19_5.json create mode 100644 autobahn/client/tungstenite_case_6_1_1.html create mode 100644 autobahn/client/tungstenite_case_6_1_1.json create mode 100644 autobahn/client/tungstenite_case_6_1_2.html create mode 100644 autobahn/client/tungstenite_case_6_1_2.json create mode 100644 autobahn/client/tungstenite_case_6_1_3.html create mode 100644 autobahn/client/tungstenite_case_6_1_3.json create mode 100644 autobahn/client/tungstenite_case_6_20_1.html create mode 100644 autobahn/client/tungstenite_case_6_20_1.json create mode 100644 autobahn/client/tungstenite_case_6_20_2.html create mode 100644 autobahn/client/tungstenite_case_6_20_2.json create mode 100644 autobahn/client/tungstenite_case_6_20_3.html create mode 100644 autobahn/client/tungstenite_case_6_20_3.json create mode 100644 autobahn/client/tungstenite_case_6_20_4.html create mode 100644 autobahn/client/tungstenite_case_6_20_4.json create mode 100644 autobahn/client/tungstenite_case_6_20_5.html create mode 100644 autobahn/client/tungstenite_case_6_20_5.json create mode 100644 autobahn/client/tungstenite_case_6_20_6.html create mode 100644 autobahn/client/tungstenite_case_6_20_6.json create mode 100644 autobahn/client/tungstenite_case_6_20_7.html create mode 100644 autobahn/client/tungstenite_case_6_20_7.json create mode 100644 autobahn/client/tungstenite_case_6_21_1.html create mode 100644 autobahn/client/tungstenite_case_6_21_1.json create mode 100644 autobahn/client/tungstenite_case_6_21_2.html create mode 100644 autobahn/client/tungstenite_case_6_21_2.json create mode 100644 autobahn/client/tungstenite_case_6_21_3.html create mode 100644 autobahn/client/tungstenite_case_6_21_3.json create mode 100644 autobahn/client/tungstenite_case_6_21_4.html create mode 100644 autobahn/client/tungstenite_case_6_21_4.json create mode 100644 autobahn/client/tungstenite_case_6_21_5.html create mode 100644 autobahn/client/tungstenite_case_6_21_5.json create mode 100644 autobahn/client/tungstenite_case_6_21_6.html create mode 100644 autobahn/client/tungstenite_case_6_21_6.json create mode 100644 autobahn/client/tungstenite_case_6_21_7.html create mode 100644 autobahn/client/tungstenite_case_6_21_7.json create mode 100644 autobahn/client/tungstenite_case_6_21_8.html create mode 100644 autobahn/client/tungstenite_case_6_21_8.json create mode 100644 autobahn/client/tungstenite_case_6_22_1.html create mode 100644 autobahn/client/tungstenite_case_6_22_1.json create mode 100644 autobahn/client/tungstenite_case_6_22_10.html create mode 100644 autobahn/client/tungstenite_case_6_22_10.json create mode 100644 autobahn/client/tungstenite_case_6_22_11.html create mode 100644 autobahn/client/tungstenite_case_6_22_11.json create mode 100644 autobahn/client/tungstenite_case_6_22_12.html create mode 100644 autobahn/client/tungstenite_case_6_22_12.json create mode 100644 autobahn/client/tungstenite_case_6_22_13.html create mode 100644 autobahn/client/tungstenite_case_6_22_13.json create mode 100644 autobahn/client/tungstenite_case_6_22_14.html create mode 100644 autobahn/client/tungstenite_case_6_22_14.json create mode 100644 autobahn/client/tungstenite_case_6_22_15.html create mode 100644 autobahn/client/tungstenite_case_6_22_15.json create mode 100644 autobahn/client/tungstenite_case_6_22_16.html create mode 100644 autobahn/client/tungstenite_case_6_22_16.json create mode 100644 autobahn/client/tungstenite_case_6_22_17.html create mode 100644 autobahn/client/tungstenite_case_6_22_17.json create mode 100644 autobahn/client/tungstenite_case_6_22_18.html create mode 100644 autobahn/client/tungstenite_case_6_22_18.json create mode 100644 autobahn/client/tungstenite_case_6_22_19.html create mode 100644 autobahn/client/tungstenite_case_6_22_19.json create mode 100644 autobahn/client/tungstenite_case_6_22_2.html create mode 100644 autobahn/client/tungstenite_case_6_22_2.json create mode 100644 autobahn/client/tungstenite_case_6_22_20.html create mode 100644 autobahn/client/tungstenite_case_6_22_20.json create mode 100644 autobahn/client/tungstenite_case_6_22_21.html create mode 100644 autobahn/client/tungstenite_case_6_22_21.json create mode 100644 autobahn/client/tungstenite_case_6_22_22.html create mode 100644 autobahn/client/tungstenite_case_6_22_22.json create mode 100644 autobahn/client/tungstenite_case_6_22_23.html create mode 100644 autobahn/client/tungstenite_case_6_22_23.json create mode 100644 autobahn/client/tungstenite_case_6_22_24.html create mode 100644 autobahn/client/tungstenite_case_6_22_24.json create mode 100644 autobahn/client/tungstenite_case_6_22_25.html create mode 100644 autobahn/client/tungstenite_case_6_22_25.json create mode 100644 autobahn/client/tungstenite_case_6_22_26.html create mode 100644 autobahn/client/tungstenite_case_6_22_26.json create mode 100644 autobahn/client/tungstenite_case_6_22_27.html create mode 100644 autobahn/client/tungstenite_case_6_22_27.json create mode 100644 autobahn/client/tungstenite_case_6_22_28.html create mode 100644 autobahn/client/tungstenite_case_6_22_28.json create mode 100644 autobahn/client/tungstenite_case_6_22_29.html create mode 100644 autobahn/client/tungstenite_case_6_22_29.json create mode 100644 autobahn/client/tungstenite_case_6_22_3.html create mode 100644 autobahn/client/tungstenite_case_6_22_3.json create mode 100644 autobahn/client/tungstenite_case_6_22_30.html create mode 100644 autobahn/client/tungstenite_case_6_22_30.json create mode 100644 autobahn/client/tungstenite_case_6_22_31.html create mode 100644 autobahn/client/tungstenite_case_6_22_31.json create mode 100644 autobahn/client/tungstenite_case_6_22_32.html create mode 100644 autobahn/client/tungstenite_case_6_22_32.json create mode 100644 autobahn/client/tungstenite_case_6_22_33.html create mode 100644 autobahn/client/tungstenite_case_6_22_33.json create mode 100644 autobahn/client/tungstenite_case_6_22_34.html create mode 100644 autobahn/client/tungstenite_case_6_22_34.json create mode 100644 autobahn/client/tungstenite_case_6_22_4.html create mode 100644 autobahn/client/tungstenite_case_6_22_4.json create mode 100644 autobahn/client/tungstenite_case_6_22_5.html create mode 100644 autobahn/client/tungstenite_case_6_22_5.json create mode 100644 autobahn/client/tungstenite_case_6_22_6.html create mode 100644 autobahn/client/tungstenite_case_6_22_6.json create mode 100644 autobahn/client/tungstenite_case_6_22_7.html create mode 100644 autobahn/client/tungstenite_case_6_22_7.json create mode 100644 autobahn/client/tungstenite_case_6_22_8.html create mode 100644 autobahn/client/tungstenite_case_6_22_8.json create mode 100644 autobahn/client/tungstenite_case_6_22_9.html create mode 100644 autobahn/client/tungstenite_case_6_22_9.json create mode 100644 autobahn/client/tungstenite_case_6_23_1.html create mode 100644 autobahn/client/tungstenite_case_6_23_1.json create mode 100644 autobahn/client/tungstenite_case_6_23_2.html create mode 100644 autobahn/client/tungstenite_case_6_23_2.json create mode 100644 autobahn/client/tungstenite_case_6_23_3.html create mode 100644 autobahn/client/tungstenite_case_6_23_3.json create mode 100644 autobahn/client/tungstenite_case_6_23_4.html create mode 100644 autobahn/client/tungstenite_case_6_23_4.json create mode 100644 autobahn/client/tungstenite_case_6_23_5.html create mode 100644 autobahn/client/tungstenite_case_6_23_5.json create mode 100644 autobahn/client/tungstenite_case_6_23_6.html create mode 100644 autobahn/client/tungstenite_case_6_23_6.json create mode 100644 autobahn/client/tungstenite_case_6_23_7.html create mode 100644 autobahn/client/tungstenite_case_6_23_7.json create mode 100644 autobahn/client/tungstenite_case_6_2_1.html create mode 100644 autobahn/client/tungstenite_case_6_2_1.json create mode 100644 autobahn/client/tungstenite_case_6_2_2.html create mode 100644 autobahn/client/tungstenite_case_6_2_2.json create mode 100644 autobahn/client/tungstenite_case_6_2_3.html create mode 100644 autobahn/client/tungstenite_case_6_2_3.json create mode 100644 autobahn/client/tungstenite_case_6_2_4.html create mode 100644 autobahn/client/tungstenite_case_6_2_4.json create mode 100644 autobahn/client/tungstenite_case_6_3_1.html create mode 100644 autobahn/client/tungstenite_case_6_3_1.json create mode 100644 autobahn/client/tungstenite_case_6_3_2.html create mode 100644 autobahn/client/tungstenite_case_6_3_2.json create mode 100644 autobahn/client/tungstenite_case_6_4_1.html create mode 100644 autobahn/client/tungstenite_case_6_4_1.json create mode 100644 autobahn/client/tungstenite_case_6_4_2.html create mode 100644 autobahn/client/tungstenite_case_6_4_2.json create mode 100644 autobahn/client/tungstenite_case_6_4_3.html create mode 100644 autobahn/client/tungstenite_case_6_4_3.json create mode 100644 autobahn/client/tungstenite_case_6_4_4.html create mode 100644 autobahn/client/tungstenite_case_6_4_4.json create mode 100644 autobahn/client/tungstenite_case_6_5_1.html create mode 100644 autobahn/client/tungstenite_case_6_5_1.json create mode 100644 autobahn/client/tungstenite_case_6_5_2.html create mode 100644 autobahn/client/tungstenite_case_6_5_2.json create mode 100644 autobahn/client/tungstenite_case_6_5_3.html create mode 100644 autobahn/client/tungstenite_case_6_5_3.json create mode 100644 autobahn/client/tungstenite_case_6_5_4.html create mode 100644 autobahn/client/tungstenite_case_6_5_4.json create mode 100644 autobahn/client/tungstenite_case_6_5_5.html create mode 100644 autobahn/client/tungstenite_case_6_5_5.json create mode 100644 autobahn/client/tungstenite_case_6_6_1.html create mode 100644 autobahn/client/tungstenite_case_6_6_1.json create mode 100644 autobahn/client/tungstenite_case_6_6_10.html create mode 100644 autobahn/client/tungstenite_case_6_6_10.json create mode 100644 autobahn/client/tungstenite_case_6_6_11.html create mode 100644 autobahn/client/tungstenite_case_6_6_11.json create mode 100644 autobahn/client/tungstenite_case_6_6_2.html create mode 100644 autobahn/client/tungstenite_case_6_6_2.json create mode 100644 autobahn/client/tungstenite_case_6_6_3.html create mode 100644 autobahn/client/tungstenite_case_6_6_3.json create mode 100644 autobahn/client/tungstenite_case_6_6_4.html create mode 100644 autobahn/client/tungstenite_case_6_6_4.json create mode 100644 autobahn/client/tungstenite_case_6_6_5.html create mode 100644 autobahn/client/tungstenite_case_6_6_5.json create mode 100644 autobahn/client/tungstenite_case_6_6_6.html create mode 100644 autobahn/client/tungstenite_case_6_6_6.json create mode 100644 autobahn/client/tungstenite_case_6_6_7.html create mode 100644 autobahn/client/tungstenite_case_6_6_7.json create mode 100644 autobahn/client/tungstenite_case_6_6_8.html create mode 100644 autobahn/client/tungstenite_case_6_6_8.json create mode 100644 autobahn/client/tungstenite_case_6_6_9.html create mode 100644 autobahn/client/tungstenite_case_6_6_9.json create mode 100644 autobahn/client/tungstenite_case_6_7_1.html create mode 100644 autobahn/client/tungstenite_case_6_7_1.json create mode 100644 autobahn/client/tungstenite_case_6_7_2.html create mode 100644 autobahn/client/tungstenite_case_6_7_2.json create mode 100644 autobahn/client/tungstenite_case_6_7_3.html create mode 100644 autobahn/client/tungstenite_case_6_7_3.json create mode 100644 autobahn/client/tungstenite_case_6_7_4.html create mode 100644 autobahn/client/tungstenite_case_6_7_4.json create mode 100644 autobahn/client/tungstenite_case_6_8_1.html create mode 100644 autobahn/client/tungstenite_case_6_8_1.json create mode 100644 autobahn/client/tungstenite_case_6_8_2.html create mode 100644 autobahn/client/tungstenite_case_6_8_2.json create mode 100644 autobahn/client/tungstenite_case_6_9_1.html create mode 100644 autobahn/client/tungstenite_case_6_9_1.json create mode 100644 autobahn/client/tungstenite_case_6_9_2.html create mode 100644 autobahn/client/tungstenite_case_6_9_2.json create mode 100644 autobahn/client/tungstenite_case_6_9_3.html create mode 100644 autobahn/client/tungstenite_case_6_9_3.json create mode 100644 autobahn/client/tungstenite_case_6_9_4.html create mode 100644 autobahn/client/tungstenite_case_6_9_4.json create mode 100644 autobahn/client/tungstenite_case_7_13_1.html create mode 100644 autobahn/client/tungstenite_case_7_13_1.json create mode 100644 autobahn/client/tungstenite_case_7_13_2.html create mode 100644 autobahn/client/tungstenite_case_7_13_2.json create mode 100644 autobahn/client/tungstenite_case_7_1_1.html create mode 100644 autobahn/client/tungstenite_case_7_1_1.json create mode 100644 autobahn/client/tungstenite_case_7_1_2.html create mode 100644 autobahn/client/tungstenite_case_7_1_2.json create mode 100644 autobahn/client/tungstenite_case_7_1_3.html create mode 100644 autobahn/client/tungstenite_case_7_1_3.json create mode 100644 autobahn/client/tungstenite_case_7_1_4.html create mode 100644 autobahn/client/tungstenite_case_7_1_4.json create mode 100644 autobahn/client/tungstenite_case_7_1_5.html create mode 100644 autobahn/client/tungstenite_case_7_1_5.json create mode 100644 autobahn/client/tungstenite_case_7_1_6.html create mode 100644 autobahn/client/tungstenite_case_7_1_6.json create mode 100644 autobahn/client/tungstenite_case_7_3_1.html create mode 100644 autobahn/client/tungstenite_case_7_3_1.json create mode 100644 autobahn/client/tungstenite_case_7_3_2.html create mode 100644 autobahn/client/tungstenite_case_7_3_2.json create mode 100644 autobahn/client/tungstenite_case_7_3_3.html create mode 100644 autobahn/client/tungstenite_case_7_3_3.json create mode 100644 autobahn/client/tungstenite_case_7_3_4.html create mode 100644 autobahn/client/tungstenite_case_7_3_4.json create mode 100644 autobahn/client/tungstenite_case_7_3_5.html create mode 100644 autobahn/client/tungstenite_case_7_3_5.json create mode 100644 autobahn/client/tungstenite_case_7_3_6.html create mode 100644 autobahn/client/tungstenite_case_7_3_6.json create mode 100644 autobahn/client/tungstenite_case_7_5_1.html create mode 100644 autobahn/client/tungstenite_case_7_5_1.json create mode 100644 autobahn/client/tungstenite_case_7_7_1.html create mode 100644 autobahn/client/tungstenite_case_7_7_1.json create mode 100644 autobahn/client/tungstenite_case_7_7_10.html create mode 100644 autobahn/client/tungstenite_case_7_7_10.json create mode 100644 autobahn/client/tungstenite_case_7_7_11.html create mode 100644 autobahn/client/tungstenite_case_7_7_11.json create mode 100644 autobahn/client/tungstenite_case_7_7_12.html create mode 100644 autobahn/client/tungstenite_case_7_7_12.json create mode 100644 autobahn/client/tungstenite_case_7_7_13.html create mode 100644 autobahn/client/tungstenite_case_7_7_13.json create mode 100644 autobahn/client/tungstenite_case_7_7_2.html create mode 100644 autobahn/client/tungstenite_case_7_7_2.json create mode 100644 autobahn/client/tungstenite_case_7_7_3.html create mode 100644 autobahn/client/tungstenite_case_7_7_3.json create mode 100644 autobahn/client/tungstenite_case_7_7_4.html create mode 100644 autobahn/client/tungstenite_case_7_7_4.json create mode 100644 autobahn/client/tungstenite_case_7_7_5.html create mode 100644 autobahn/client/tungstenite_case_7_7_5.json create mode 100644 autobahn/client/tungstenite_case_7_7_6.html create mode 100644 autobahn/client/tungstenite_case_7_7_6.json create mode 100644 autobahn/client/tungstenite_case_7_7_7.html create mode 100644 autobahn/client/tungstenite_case_7_7_7.json create mode 100644 autobahn/client/tungstenite_case_7_7_8.html create mode 100644 autobahn/client/tungstenite_case_7_7_8.json create mode 100644 autobahn/client/tungstenite_case_7_7_9.html create mode 100644 autobahn/client/tungstenite_case_7_7_9.json create mode 100644 autobahn/client/tungstenite_case_7_9_1.html create mode 100644 autobahn/client/tungstenite_case_7_9_1.json create mode 100644 autobahn/client/tungstenite_case_7_9_2.html create mode 100644 autobahn/client/tungstenite_case_7_9_2.json create mode 100644 autobahn/client/tungstenite_case_7_9_3.html create mode 100644 autobahn/client/tungstenite_case_7_9_3.json create mode 100644 autobahn/client/tungstenite_case_7_9_4.html create mode 100644 autobahn/client/tungstenite_case_7_9_4.json create mode 100644 autobahn/client/tungstenite_case_7_9_5.html create mode 100644 autobahn/client/tungstenite_case_7_9_5.json create mode 100644 autobahn/client/tungstenite_case_7_9_6.html create mode 100644 autobahn/client/tungstenite_case_7_9_6.json create mode 100644 autobahn/client/tungstenite_case_7_9_7.html create mode 100644 autobahn/client/tungstenite_case_7_9_7.json create mode 100644 autobahn/client/tungstenite_case_7_9_8.html create mode 100644 autobahn/client/tungstenite_case_7_9_8.json create mode 100644 autobahn/client/tungstenite_case_7_9_9.html create mode 100644 autobahn/client/tungstenite_case_7_9_9.json create mode 100644 autobahn/client/tungstenite_case_9_1_1.html create mode 100644 autobahn/client/tungstenite_case_9_1_1.json create mode 100644 autobahn/client/tungstenite_case_9_1_2.html create mode 100644 autobahn/client/tungstenite_case_9_1_2.json create mode 100644 autobahn/client/tungstenite_case_9_1_3.html create mode 100644 autobahn/client/tungstenite_case_9_1_3.json create mode 100644 autobahn/client/tungstenite_case_9_1_4.html create mode 100644 autobahn/client/tungstenite_case_9_1_4.json create mode 100644 autobahn/client/tungstenite_case_9_1_5.html create mode 100644 autobahn/client/tungstenite_case_9_1_5.json create mode 100644 autobahn/client/tungstenite_case_9_1_6.html create mode 100644 autobahn/client/tungstenite_case_9_1_6.json create mode 100644 autobahn/client/tungstenite_case_9_2_1.html create mode 100644 autobahn/client/tungstenite_case_9_2_1.json create mode 100644 autobahn/client/tungstenite_case_9_2_2.html create mode 100644 autobahn/client/tungstenite_case_9_2_2.json create mode 100644 autobahn/client/tungstenite_case_9_2_3.html create mode 100644 autobahn/client/tungstenite_case_9_2_3.json create mode 100644 autobahn/client/tungstenite_case_9_2_4.html create mode 100644 autobahn/client/tungstenite_case_9_2_4.json create mode 100644 autobahn/client/tungstenite_case_9_2_5.html create mode 100644 autobahn/client/tungstenite_case_9_2_5.json create mode 100644 autobahn/client/tungstenite_case_9_2_6.html create mode 100644 autobahn/client/tungstenite_case_9_2_6.json create mode 100644 autobahn/client/tungstenite_case_9_3_1.html create mode 100644 autobahn/client/tungstenite_case_9_3_1.json create mode 100644 autobahn/client/tungstenite_case_9_3_2.html create mode 100644 autobahn/client/tungstenite_case_9_3_2.json create mode 100644 autobahn/client/tungstenite_case_9_3_3.html create mode 100644 autobahn/client/tungstenite_case_9_3_3.json create mode 100644 autobahn/client/tungstenite_case_9_3_4.html create mode 100644 autobahn/client/tungstenite_case_9_3_4.json create mode 100644 autobahn/client/tungstenite_case_9_3_5.html create mode 100644 autobahn/client/tungstenite_case_9_3_5.json create mode 100644 autobahn/client/tungstenite_case_9_3_6.html create mode 100644 autobahn/client/tungstenite_case_9_3_6.json create mode 100644 autobahn/client/tungstenite_case_9_3_7.html create mode 100644 autobahn/client/tungstenite_case_9_3_7.json create mode 100644 autobahn/client/tungstenite_case_9_3_8.html create mode 100644 autobahn/client/tungstenite_case_9_3_8.json create mode 100644 autobahn/client/tungstenite_case_9_3_9.html create mode 100644 autobahn/client/tungstenite_case_9_3_9.json create mode 100644 autobahn/client/tungstenite_case_9_4_1.html create mode 100644 autobahn/client/tungstenite_case_9_4_1.json create mode 100644 autobahn/client/tungstenite_case_9_4_2.html create mode 100644 autobahn/client/tungstenite_case_9_4_2.json create mode 100644 autobahn/client/tungstenite_case_9_4_3.html create mode 100644 autobahn/client/tungstenite_case_9_4_3.json create mode 100644 autobahn/client/tungstenite_case_9_4_4.html create mode 100644 autobahn/client/tungstenite_case_9_4_4.json create mode 100644 autobahn/client/tungstenite_case_9_4_5.html create mode 100644 autobahn/client/tungstenite_case_9_4_5.json create mode 100644 autobahn/client/tungstenite_case_9_4_6.html create mode 100644 autobahn/client/tungstenite_case_9_4_6.json create mode 100644 autobahn/client/tungstenite_case_9_4_7.html create mode 100644 autobahn/client/tungstenite_case_9_4_7.json create mode 100644 autobahn/client/tungstenite_case_9_4_8.html create mode 100644 autobahn/client/tungstenite_case_9_4_8.json create mode 100644 autobahn/client/tungstenite_case_9_4_9.html create mode 100644 autobahn/client/tungstenite_case_9_4_9.json create mode 100644 autobahn/client/tungstenite_case_9_5_1.html create mode 100644 autobahn/client/tungstenite_case_9_5_1.json create mode 100644 autobahn/client/tungstenite_case_9_5_2.html create mode 100644 autobahn/client/tungstenite_case_9_5_2.json create mode 100644 autobahn/client/tungstenite_case_9_5_3.html create mode 100644 autobahn/client/tungstenite_case_9_5_3.json create mode 100644 autobahn/client/tungstenite_case_9_5_4.html create mode 100644 autobahn/client/tungstenite_case_9_5_4.json create mode 100644 autobahn/client/tungstenite_case_9_5_5.html create mode 100644 autobahn/client/tungstenite_case_9_5_5.json create mode 100644 autobahn/client/tungstenite_case_9_5_6.html create mode 100644 autobahn/client/tungstenite_case_9_5_6.json create mode 100644 autobahn/client/tungstenite_case_9_6_1.html create mode 100644 autobahn/client/tungstenite_case_9_6_1.json create mode 100644 autobahn/client/tungstenite_case_9_6_2.html create mode 100644 autobahn/client/tungstenite_case_9_6_2.json create mode 100644 autobahn/client/tungstenite_case_9_6_3.html create mode 100644 autobahn/client/tungstenite_case_9_6_3.json create mode 100644 autobahn/client/tungstenite_case_9_6_4.html create mode 100644 autobahn/client/tungstenite_case_9_6_4.json create mode 100644 autobahn/client/tungstenite_case_9_6_5.html create mode 100644 autobahn/client/tungstenite_case_9_6_5.json create mode 100644 autobahn/client/tungstenite_case_9_6_6.html create mode 100644 autobahn/client/tungstenite_case_9_6_6.json create mode 100644 autobahn/client/tungstenite_case_9_7_1.html create mode 100644 autobahn/client/tungstenite_case_9_7_1.json create mode 100644 autobahn/client/tungstenite_case_9_7_2.html create mode 100644 autobahn/client/tungstenite_case_9_7_2.json create mode 100644 autobahn/client/tungstenite_case_9_7_3.html create mode 100644 autobahn/client/tungstenite_case_9_7_3.json create mode 100644 autobahn/client/tungstenite_case_9_7_4.html create mode 100644 autobahn/client/tungstenite_case_9_7_4.json create mode 100644 autobahn/client/tungstenite_case_9_7_5.html create mode 100644 autobahn/client/tungstenite_case_9_7_5.json create mode 100644 autobahn/client/tungstenite_case_9_7_6.html create mode 100644 autobahn/client/tungstenite_case_9_7_6.json create mode 100644 autobahn/client/tungstenite_case_9_8_1.html create mode 100644 autobahn/client/tungstenite_case_9_8_1.json create mode 100644 autobahn/client/tungstenite_case_9_8_2.html create mode 100644 autobahn/client/tungstenite_case_9_8_2.json create mode 100644 autobahn/client/tungstenite_case_9_8_3.html create mode 100644 autobahn/client/tungstenite_case_9_8_3.json create mode 100644 autobahn/client/tungstenite_case_9_8_4.html create mode 100644 autobahn/client/tungstenite_case_9_8_4.json create mode 100644 autobahn/client/tungstenite_case_9_8_5.html create mode 100644 autobahn/client/tungstenite_case_9_8_5.json create mode 100644 autobahn/client/tungstenite_case_9_8_6.html create mode 100644 autobahn/client/tungstenite_case_9_8_6.json create mode 100644 autobahn/client/ws_rs_case_12_5_4.html create mode 100644 autobahn/client/ws_rs_case_12_5_4.json diff --git a/autobahn/client-results.json b/autobahn/client-results.json index 4add9bb..6d7a78f 100644 --- a/autobahn/client-results.json +++ b/autobahn/client-results.json @@ -120,1512 +120,1512 @@ "reportfile": "tungstenite_case_10_1_1.json" }, "12.1.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_1_1.json" }, "12.1.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_1_10.json" }, "12.1.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_1_11.json" }, "12.1.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_1_12.json" }, "12.1.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_1_13.json" }, "12.1.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_1_14.json" }, "12.1.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_1_15.json" }, "12.1.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_1_16.json" }, "12.1.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_1_17.json" }, "12.1.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_1_18.json" }, "12.1.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_1_2.json" }, "12.1.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_1_3.json" }, "12.1.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_1_4.json" }, "12.1.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_1_5.json" }, "12.1.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_1_6.json" }, "12.1.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_1_7.json" }, "12.1.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_1_8.json" }, "12.1.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_1_9.json" }, "12.2.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_2_1.json" }, "12.2.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_2_10.json" }, "12.2.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_2_11.json" }, "12.2.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_2_12.json" }, "12.2.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_2_13.json" }, "12.2.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_2_14.json" }, "12.2.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_2_15.json" }, "12.2.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_2_16.json" }, "12.2.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_2_17.json" }, "12.2.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_2_18.json" }, "12.2.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_2_2.json" }, "12.2.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_2_3.json" }, "12.2.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_2_4.json" }, "12.2.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_2_5.json" }, "12.2.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_2_6.json" }, "12.2.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_2_7.json" }, "12.2.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_2_8.json" }, "12.2.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_2_9.json" }, "12.3.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_3_1.json" }, "12.3.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_3_10.json" }, "12.3.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_3_11.json" }, "12.3.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_3_12.json" }, "12.3.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_3_13.json" }, "12.3.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_3_14.json" }, "12.3.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_3_15.json" }, "12.3.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_3_16.json" }, "12.3.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_3_17.json" }, "12.3.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_3_18.json" }, "12.3.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_3_2.json" }, "12.3.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_3_3.json" }, "12.3.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_3_4.json" }, "12.3.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_3_5.json" }, "12.3.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 2, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_3_6.json" }, "12.3.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_3_7.json" }, "12.3.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_3_8.json" }, "12.3.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_3_9.json" }, "12.4.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_4_1.json" }, "12.4.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_4_10.json" }, "12.4.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_4_11.json" }, "12.4.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_4_12.json" }, "12.4.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_4_13.json" }, "12.4.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_4_14.json" }, "12.4.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_4_15.json" }, "12.4.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_4_16.json" }, "12.4.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_4_17.json" }, "12.4.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_4_18.json" }, "12.4.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_4_2.json" }, "12.4.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_4_3.json" }, "12.4.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_4_4.json" }, "12.4.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_4_5.json" }, "12.4.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_4_6.json" }, "12.4.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_4_7.json" }, "12.4.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_4_8.json" }, "12.4.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_4_9.json" }, "12.5.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_5_1.json" }, "12.5.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_5_10.json" }, "12.5.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_5_11.json" }, "12.5.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_5_12.json" }, "12.5.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_5_13.json" }, "12.5.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_5_14.json" }, "12.5.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_5_15.json" }, "12.5.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_5_16.json" }, "12.5.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_5_17.json" }, "12.5.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_5_18.json" }, "12.5.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_5_2.json" }, "12.5.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_5_3.json" }, "12.5.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_5_4.json" }, "12.5.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_5_5.json" }, "12.5.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_5_6.json" }, "12.5.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_5_7.json" }, "12.5.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_5_8.json" }, "12.5.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_12_5_9.json" }, "13.1.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_1_1.json" }, "13.1.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_1_10.json" }, "13.1.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_1_11.json" }, "13.1.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_1_12.json" }, "13.1.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_1_13.json" }, "13.1.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_1_14.json" }, "13.1.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_1_15.json" }, "13.1.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_1_16.json" }, "13.1.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_1_17.json" }, "13.1.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_1_18.json" }, "13.1.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_1_2.json" }, "13.1.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_1_3.json" }, "13.1.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_1_4.json" }, "13.1.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_1_5.json" }, "13.1.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 2, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_1_6.json" }, "13.1.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 2, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_1_7.json" }, "13.1.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_1_8.json" }, "13.1.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_1_9.json" }, "13.2.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_2_1.json" }, "13.2.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_2_10.json" }, "13.2.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_2_11.json" }, "13.2.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_2_12.json" }, "13.2.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_2_13.json" }, "13.2.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_2_14.json" }, "13.2.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 2, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_2_15.json" }, "13.2.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 4, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_2_16.json" }, "13.2.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_2_17.json" }, "13.2.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_2_18.json" }, "13.2.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_2_2.json" }, "13.2.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_2_3.json" }, "13.2.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_2_4.json" }, "13.2.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_2_5.json" }, "13.2.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_2_6.json" }, "13.2.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_2_7.json" }, "13.2.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_2_8.json" }, "13.2.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_2_9.json" }, "13.3.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_3_1.json" }, "13.3.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_3_10.json" }, "13.3.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_3_11.json" }, "13.3.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_3_12.json" }, "13.3.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_3_13.json" }, "13.3.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_3_14.json" }, "13.3.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_3_15.json" }, "13.3.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_3_16.json" }, "13.3.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_3_17.json" }, "13.3.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_3_18.json" }, "13.3.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_3_2.json" }, "13.3.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_3_3.json" }, "13.3.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_3_4.json" }, "13.3.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_3_5.json" }, "13.3.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_3_6.json" }, "13.3.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_3_7.json" }, "13.3.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_3_8.json" }, "13.3.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_3_9.json" }, "13.4.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_4_1.json" }, "13.4.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_4_10.json" }, "13.4.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_4_11.json" }, "13.4.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_4_12.json" }, "13.4.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_4_13.json" }, "13.4.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_4_14.json" }, "13.4.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_4_15.json" }, "13.4.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_4_16.json" }, "13.4.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_4_17.json" }, "13.4.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_4_18.json" }, "13.4.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_4_2.json" }, "13.4.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_4_3.json" }, "13.4.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_4_4.json" }, "13.4.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_4_5.json" }, "13.4.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 2, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_4_6.json" }, "13.4.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 2, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_4_7.json" }, "13.4.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_4_8.json" }, "13.4.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_4_9.json" }, "13.5.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_5_1.json" }, "13.5.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_5_10.json" }, "13.5.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_5_11.json" }, "13.5.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_5_12.json" }, "13.5.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_5_13.json" }, "13.5.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_5_14.json" }, "13.5.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 2, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_5_15.json" }, "13.5.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 2, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_5_16.json" }, "13.5.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_5_17.json" }, "13.5.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_5_18.json" }, "13.5.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_5_2.json" }, "13.5.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_5_3.json" }, "13.5.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_5_4.json" }, "13.5.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_5_5.json" }, "13.5.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_5_6.json" }, "13.5.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_5_7.json" }, "13.5.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_5_8.json" }, "13.5.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_5_9.json" }, "13.6.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_6_1.json" }, "13.6.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_6_10.json" }, "13.6.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_6_11.json" }, "13.6.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_6_12.json" }, "13.6.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_6_13.json" }, "13.6.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_6_14.json" }, "13.6.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_6_15.json" }, "13.6.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_6_16.json" }, "13.6.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_6_17.json" }, "13.6.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_6_18.json" }, "13.6.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_6_2.json" }, "13.6.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_6_3.json" }, "13.6.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_6_4.json" }, "13.6.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_6_5.json" }, "13.6.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_6_6.json" }, "13.6.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_6_7.json" }, "13.6.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_6_8.json" }, "13.6.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_6_9.json" }, "13.7.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_7_1.json" }, "13.7.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_7_10.json" }, "13.7.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_7_11.json" }, "13.7.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_7_12.json" }, "13.7.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_7_13.json" }, "13.7.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_7_14.json" }, "13.7.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_7_15.json" }, "13.7.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_7_16.json" }, "13.7.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_7_17.json" }, "13.7.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_7_18.json" }, "13.7.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_7_2.json" }, "13.7.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_7_3.json" }, "13.7.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_7_4.json" }, "13.7.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_7_5.json" }, "13.7.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_7_6.json" }, "13.7.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 2, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_7_7.json" }, "13.7.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 2, "remoteCloseCode": 1000, "reportfile": "tungstenite_case_13_7_8.json" }, "13.7.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": 1000, diff --git a/autobahn/client/index.html b/autobahn/client/index.html new file mode 100644 index 0000000..614a588 --- /dev/null +++ b/autobahn/client/index.html @@ -0,0 +1,5923 @@ + + + + + + + + + +
Toggle Details
+ +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Summary report generated on 2020-09-08T17:26:03.112Z (UTC) by Autobahn WebSocket Testsuite v0.8.1/v0.10.9.

+ + + + + + + + + + + + + + + + + + + + + + +
PassTest case was executed and passed successfully.
Non-StrictTest case was executed and passed non-strictly. + A non-strict behavior is one that does not adhere to a SHOULD-behavior as described in the protocol specification or + a well-defined, canonical behavior that appears to be desirable but left open in the protocol specification. + An implementation with non-strict behavior is still conformant to the protocol specification.
FailTest case was executed and failed. An implementation which fails a test case - other + than a performance/limits related one - is non-conforming to a MUST-behavior as described in the protocol specification.
InfoInformational test case which detects certain implementation behavior left unspecified by the spec + but nevertheless potentially interesting to implementors.
MissingTest case is missing, either because it was skipped via the test suite configuration + or deactivated, i.e. because the implementation does not implement the tested feature or breaks during running + the test case.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1 FramingWS-RS
1.1 Text Messages
Case 1.1.1Missing
Case 1.1.2Missing
Case 1.1.3Missing
Case 1.1.4Missing
Case 1.1.5Missing
Case 1.1.6Missing
Case 1.1.7Missing
Case 1.1.8Missing
1 FramingWS-RS
1.2 Binary Messages
Case 1.2.1Missing
Case 1.2.2Missing
Case 1.2.3Missing
Case 1.2.4Missing
Case 1.2.5Missing
Case 1.2.6Missing
Case 1.2.7Missing
Case 1.2.8Missing
2 Pings/PongsWS-RS
Case 2.1Missing
Case 2.2Missing
Case 2.3Missing
Case 2.4Missing
Case 2.5Missing
Case 2.6Missing
Case 2.7Missing
Case 2.8Missing
Case 2.9Missing
Case 2.10Missing
Case 2.11Missing
3 Reserved BitsWS-RS
Case 3.1Missing
Case 3.2Missing
Case 3.3Missing
Case 3.4Missing
Case 3.5Missing
Case 3.6Missing
Case 3.7Missing
4 OpcodesWS-RS
4.1 Non-control Opcodes
Case 4.1.1Missing
Case 4.1.2Missing
Case 4.1.3Missing
Case 4.1.4Missing
Case 4.1.5Missing
4 OpcodesWS-RS
4.2 Control Opcodes
Case 4.2.1Missing
Case 4.2.2Missing
Case 4.2.3Missing
Case 4.2.4Missing
Case 4.2.5Missing
5 FragmentationWS-RS
Case 5.1Missing
Case 5.2Missing
Case 5.3Missing
Case 5.4Missing
Case 5.5Missing
Case 5.6Missing
Case 5.7Missing
Case 5.8Missing
Case 5.9Missing
Case 5.10Missing
Case 5.11Missing
Case 5.12Missing
Case 5.13Missing
Case 5.14Missing
Case 5.15Missing
Case 5.16Missing
Case 5.17Missing
Case 5.18Missing
Case 5.19Missing
Case 5.20Missing
6 UTF-8 HandlingWS-RS
6.1 Valid UTF-8 with zero payload fragments
Case 6.1.1Missing
Case 6.1.2Missing
Case 6.1.3Missing
6 UTF-8 HandlingWS-RS
6.2 Valid UTF-8 unfragmented, fragmented on code-points and within code-points
Case 6.2.1Missing
Case 6.2.2Missing
Case 6.2.3Missing
Case 6.2.4Missing
6 UTF-8 HandlingWS-RS
6.3 Invalid UTF-8 differently fragmented
Case 6.3.1Missing
Case 6.3.2Missing
6 UTF-8 HandlingWS-RS
6.4 Fail-fast on invalid UTF-8
Case 6.4.1Missing
Case 6.4.2Missing
Case 6.4.3Missing
Case 6.4.4Missing
6 UTF-8 HandlingWS-RS
6.5 Some valid UTF-8 sequences
Case 6.5.1Missing
Case 6.5.2Missing
Case 6.5.3Missing
Case 6.5.4Missing
Case 6.5.5Missing
6 UTF-8 HandlingWS-RS
6.6 All prefixes of a valid UTF-8 string that contains multi-byte code points
Case 6.6.1Missing
Case 6.6.2Missing
Case 6.6.3Missing
Case 6.6.4Missing
Case 6.6.5Missing
Case 6.6.6Missing
Case 6.6.7Missing
Case 6.6.8Missing
Case 6.6.9Missing
Case 6.6.10Missing
Case 6.6.11Missing
6 UTF-8 HandlingWS-RS
6.7 First possible sequence of a certain length
Case 6.7.1Missing
Case 6.7.2Missing
Case 6.7.3Missing
Case 6.7.4Missing
6 UTF-8 HandlingWS-RS
6.8 First possible sequence length 5/6 (invalid codepoints)
Case 6.8.1Missing
Case 6.8.2Missing
6 UTF-8 HandlingWS-RS
6.9 Last possible sequence of a certain length
Case 6.9.1Missing
Case 6.9.2Missing
Case 6.9.3Missing
Case 6.9.4Missing
6 UTF-8 HandlingWS-RS
6.10 Last possible sequence length 4/5/6 (invalid codepoints)
Case 6.10.1Missing
Case 6.10.2Missing
Case 6.10.3Missing
6 UTF-8 HandlingWS-RS
6.11 Other boundary conditions
Case 6.11.1Missing
Case 6.11.2Missing
Case 6.11.3Missing
Case 6.11.4Missing
Case 6.11.5Missing
6 UTF-8 HandlingWS-RS
6.12 Unexpected continuation bytes
Case 6.12.1Missing
Case 6.12.2Missing
Case 6.12.3Missing
Case 6.12.4Missing
Case 6.12.5Missing
Case 6.12.6Missing
Case 6.12.7Missing
Case 6.12.8Missing
6 UTF-8 HandlingWS-RS
6.13 Lonely start characters
Case 6.13.1Missing
Case 6.13.2Missing
Case 6.13.3Missing
Case 6.13.4Missing
Case 6.13.5Missing
6 UTF-8 HandlingWS-RS
6.14 Sequences with last continuation byte missing
Case 6.14.1Missing
Case 6.14.2Missing
Case 6.14.3Missing
Case 6.14.4Missing
Case 6.14.5Missing
Case 6.14.6Missing
Case 6.14.7Missing
Case 6.14.8Missing
Case 6.14.9Missing
Case 6.14.10Missing
6 UTF-8 HandlingWS-RS
6.15 Concatenation of incomplete sequences
Case 6.15.1Missing
6 UTF-8 HandlingWS-RS
6.16 Impossible bytes
Case 6.16.1Missing
Case 6.16.2Missing
Case 6.16.3Missing
6 UTF-8 HandlingWS-RS
6.17 Examples of an overlong ASCII character
Case 6.17.1Missing
Case 6.17.2Missing
Case 6.17.3Missing
Case 6.17.4Missing
Case 6.17.5Missing
6 UTF-8 HandlingWS-RS
6.18 Maximum overlong sequences
Case 6.18.1Missing
Case 6.18.2Missing
Case 6.18.3Missing
Case 6.18.4Missing
Case 6.18.5Missing
6 UTF-8 HandlingWS-RS
6.19 Overlong representation of the NUL character
Case 6.19.1Missing
Case 6.19.2Missing
Case 6.19.3Missing
Case 6.19.4Missing
Case 6.19.5Missing
6 UTF-8 HandlingWS-RS
6.20 Single UTF-16 surrogates
Case 6.20.1Missing
Case 6.20.2Missing
Case 6.20.3Missing
Case 6.20.4Missing
Case 6.20.5Missing
Case 6.20.6Missing
Case 6.20.7Missing
6 UTF-8 HandlingWS-RS
6.21 Paired UTF-16 surrogates
Case 6.21.1Missing
Case 6.21.2Missing
Case 6.21.3Missing
Case 6.21.4Missing
Case 6.21.5Missing
Case 6.21.6Missing
Case 6.21.7Missing
Case 6.21.8Missing
6 UTF-8 HandlingWS-RS
6.22 Non-character code points (valid UTF-8)
Case 6.22.1Missing
Case 6.22.2Missing
Case 6.22.3Missing
Case 6.22.4Missing
Case 6.22.5Missing
Case 6.22.6Missing
Case 6.22.7Missing
Case 6.22.8Missing
Case 6.22.9Missing
Case 6.22.10Missing
Case 6.22.11Missing
Case 6.22.12Missing
Case 6.22.13Missing
Case 6.22.14Missing
Case 6.22.15Missing
Case 6.22.16Missing
Case 6.22.17Missing
Case 6.22.18Missing
Case 6.22.19Missing
Case 6.22.20Missing
Case 6.22.21Missing
Case 6.22.22Missing
Case 6.22.23Missing
Case 6.22.24Missing
Case 6.22.25Missing
Case 6.22.26Missing
Case 6.22.27Missing
Case 6.22.28Missing
Case 6.22.29Missing
Case 6.22.30Missing
Case 6.22.31Missing
Case 6.22.32Missing
Case 6.22.33Missing
Case 6.22.34Missing
6 UTF-8 HandlingWS-RS
6.23 Unicode specials (i.e. replacement char)
Case 6.23.1Missing
Case 6.23.2Missing
Case 6.23.3Missing
Case 6.23.4Missing
Case 6.23.5Missing
Case 6.23.6Missing
Case 6.23.7Missing
7 Close HandlingWS-RS
7.1 Basic close behavior (fuzzer initiated)
Case 7.1.1Missing
Case 7.1.2Missing
Case 7.1.3Missing
Case 7.1.4Missing
Case 7.1.5Missing
Case 7.1.6Missing
7 Close HandlingWS-RS
7.3 Close frame structure: payload length (fuzzer initiated)
Case 7.3.1Missing
Case 7.3.2Missing
Case 7.3.3Missing
Case 7.3.4Missing
Case 7.3.5Missing
Case 7.3.6Missing
7 Close HandlingWS-RS
7.5 Close frame structure: payload value (fuzzer initiated)
Case 7.5.1Missing
7 Close HandlingWS-RS
7.7 Close frame structure: valid close codes (fuzzer initiated)
Case 7.7.1Missing
Case 7.7.2Missing
Case 7.7.3Missing
Case 7.7.4Missing
Case 7.7.5Missing
Case 7.7.6Missing
Case 7.7.7Missing
Case 7.7.8Missing
Case 7.7.9Missing
Case 7.7.10Missing
Case 7.7.11Missing
Case 7.7.12Missing
Case 7.7.13Missing
7 Close HandlingWS-RS
7.9 Close frame structure: invalid close codes (fuzzer initiated)
Case 7.9.1Missing
Case 7.9.2Missing
Case 7.9.3Missing
Case 7.9.4Missing
Case 7.9.5Missing
Case 7.9.6Missing
Case 7.9.7Missing
Case 7.9.8Missing
Case 7.9.9Missing
7 Close HandlingWS-RS
7.13 Informational close information (fuzzer initiated)
Case 7.13.1Missing
Case 7.13.2Missing
9 Limits/PerformanceWS-RS
9.1 Text Message (increasing size)
Case 9.1.1Missing
Case 9.1.2Missing
Case 9.1.3Missing
Case 9.1.4Missing
Case 9.1.5Missing
Case 9.1.6Missing
9 Limits/PerformanceWS-RS
9.2 Binary Message (increasing size)
Case 9.2.1Missing
Case 9.2.2Missing
Case 9.2.3Missing
Case 9.2.4Missing
Case 9.2.5Missing
Case 9.2.6Missing
9 Limits/PerformanceWS-RS
9.3 Fragmented Text Message (fixed size, increasing fragment size)
Case 9.3.1Missing
Case 9.3.2Missing
Case 9.3.3Missing
Case 9.3.4Missing
Case 9.3.5Missing
Case 9.3.6Missing
Case 9.3.7Missing
Case 9.3.8Missing
Case 9.3.9Missing
9 Limits/PerformanceWS-RS
9.4 Fragmented Binary Message (fixed size, increasing fragment size)
Case 9.4.1Missing
Case 9.4.2Missing
Case 9.4.3Missing
Case 9.4.4Missing
Case 9.4.5Missing
Case 9.4.6Missing
Case 9.4.7Missing
Case 9.4.8Missing
Case 9.4.9Missing
9 Limits/PerformanceWS-RS
9.5 Text Message (fixed size, increasing chop size)
Case 9.5.1Missing
Case 9.5.2Missing
Case 9.5.3Missing
Case 9.5.4Missing
Case 9.5.5Missing
Case 9.5.6Missing
9 Limits/PerformanceWS-RS
9.6 Binary Text Message (fixed size, increasing chop size)
Case 9.6.1Missing
Case 9.6.2Missing
Case 9.6.3Missing
Case 9.6.4Missing
Case 9.6.5Missing
Case 9.6.6Missing
9 Limits/PerformanceWS-RS
9.7 Text Message Roundtrip Time (fixed number, increasing size)
Case 9.7.1Missing
Case 9.7.2Missing
Case 9.7.3Missing
Case 9.7.4Missing
Case 9.7.5Missing
Case 9.7.6Missing
9 Limits/PerformanceWS-RS
9.8 Binary Message Roundtrip Time (fixed number, increasing size)
Case 9.8.1Missing
Case 9.8.2Missing
Case 9.8.3Missing
Case 9.8.4Missing
Case 9.8.5Missing
Case 9.8.6Missing
10 MiscWS-RS
10.1 Auto-Fragmentation
Case 10.1.1Missing
12 WebSocket Compression (different payloads)WS-RS
12.1 Large JSON data file (utf8, 194056 bytes)
Case 12.1.1Missing
Case 12.1.2Missing
Case 12.1.3Missing
Case 12.1.4Missing
Case 12.1.5Missing
Case 12.1.6Missing
Case 12.1.7Missing
Case 12.1.8Missing
Case 12.1.9Missing
Case 12.1.10Missing
Case 12.1.11Missing
Case 12.1.12Missing
Case 12.1.13Missing
Case 12.1.14Missing
Case 12.1.15Missing
Case 12.1.16Missing
Case 12.1.17Missing
Case 12.1.18Missing
12 WebSocket Compression (different payloads)WS-RS
12.2 Lena Picture, Bitmap 512x512 bw (binary, 263222 bytes)
Case 12.2.1Missing
Case 12.2.2Missing
Case 12.2.3Missing
Case 12.2.4Missing
Case 12.2.5Missing
Case 12.2.6Missing
Case 12.2.7Missing
Case 12.2.8Missing
Case 12.2.9Missing
Case 12.2.10Missing
Case 12.2.11Missing
Case 12.2.12Missing
Case 12.2.13Missing
Case 12.2.14Missing
Case 12.2.15Missing
Case 12.2.16Missing
Case 12.2.17Missing
Case 12.2.18Missing
12 WebSocket Compression (different payloads)WS-RS
12.3 Human readable text, Goethe's Faust I (German) (binary, 222218 bytes)
Case 12.3.1Missing
Case 12.3.2Missing
Case 12.3.3Missing
Case 12.3.4Missing
Case 12.3.5Missing
Case 12.3.6Missing
Case 12.3.7Missing
Case 12.3.8Missing
Case 12.3.9Missing
Case 12.3.10Missing
Case 12.3.11Missing
Case 12.3.12Missing
Case 12.3.13Missing
Case 12.3.14Missing
Case 12.3.15Missing
Case 12.3.16Missing
Case 12.3.17Missing
Case 12.3.18Missing
12 WebSocket Compression (different payloads)WS-RS
12.4 Large HTML file (utf8, 263527 bytes)
Case 12.4.1Missing
Case 12.4.2Missing
Case 12.4.3Missing
Case 12.4.4Missing
Case 12.4.5Missing
Case 12.4.6Missing
Case 12.4.7Missing
Case 12.4.8Missing
Case 12.4.9Missing
Case 12.4.10Missing
Case 12.4.11Missing
Case 12.4.12Missing
Case 12.4.13Missing
Case 12.4.14Missing
Case 12.4.15Missing
Case 12.4.16Missing
Case 12.4.17Missing
Case 12.4.18Missing
12 WebSocket Compression (different payloads)WS-RS
12.5 A larger PDF (binary, 1042328 bytes)
Case 12.5.1Missing
Case 12.5.2Missing
Case 12.5.3Missing
Case 12.5.4Pass
452 ms [0.785/0.786]
1000
Case 12.5.5Missing
Case 12.5.6Missing
Case 12.5.7Missing
Case 12.5.8Missing
Case 12.5.9Missing
Case 12.5.10Missing
Case 12.5.11Missing
Case 12.5.12Missing
Case 12.5.13Missing
Case 12.5.14Missing
Case 12.5.15Missing
Case 12.5.16Missing
Case 12.5.17Missing
Case 12.5.18Missing
13 WebSocket Compression (different parameters)WS-RS
13.1 Large JSON data file (utf8, 194056 bytes) - client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)] / server accept (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]
Case 13.1.1Missing
Case 13.1.2Missing
Case 13.1.3Missing
Case 13.1.4Missing
Case 13.1.5Missing
Case 13.1.6Missing
Case 13.1.7Missing
Case 13.1.8Missing
Case 13.1.9Missing
Case 13.1.10Missing
Case 13.1.11Missing
Case 13.1.12Missing
Case 13.1.13Missing
Case 13.1.14Missing
Case 13.1.15Missing
Case 13.1.16Missing
Case 13.1.17Missing
Case 13.1.18Missing
13 WebSocket Compression (different parameters)WS-RS
13.2 Large JSON data file (utf8, 194056 bytes) - client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)] / server accept (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]
Case 13.2.1Missing
Case 13.2.2Missing
Case 13.2.3Missing
Case 13.2.4Missing
Case 13.2.5Missing
Case 13.2.6Missing
Case 13.2.7Missing
Case 13.2.8Missing
Case 13.2.9Missing
Case 13.2.10Missing
Case 13.2.11Missing
Case 13.2.12Missing
Case 13.2.13Missing
Case 13.2.14Missing
Case 13.2.15Missing
Case 13.2.16Missing
Case 13.2.17Missing
Case 13.2.18Missing
13 WebSocket Compression (different parameters)WS-RS
13.3 Large JSON data file (utf8, 194056 bytes) - client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)] / server accept (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]
Case 13.3.1Missing
Case 13.3.2Missing
Case 13.3.3Missing
Case 13.3.4Missing
Case 13.3.5Missing
Case 13.3.6Missing
Case 13.3.7Missing
Case 13.3.8Missing
Case 13.3.9Missing
Case 13.3.10Missing
Case 13.3.11Missing
Case 13.3.12Missing
Case 13.3.13Missing
Case 13.3.14Missing
Case 13.3.15Missing
Case 13.3.16Missing
Case 13.3.17Missing
Case 13.3.18Missing
13 WebSocket Compression (different parameters)WS-RS
13.4 Large JSON data file (utf8, 194056 bytes) - client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)] / server accept (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]
Case 13.4.1Missing
Case 13.4.2Missing
Case 13.4.3Missing
Case 13.4.4Missing
Case 13.4.5Missing
Case 13.4.6Missing
Case 13.4.7Missing
Case 13.4.8Missing
Case 13.4.9Missing
Case 13.4.10Missing
Case 13.4.11Missing
Case 13.4.12Missing
Case 13.4.13Missing
Case 13.4.14Missing
Case 13.4.15Missing
Case 13.4.16Missing
Case 13.4.17Missing
Case 13.4.18Missing
13 WebSocket Compression (different parameters)WS-RS
13.5 Large JSON data file (utf8, 194056 bytes) - client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)] / server accept (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]
Case 13.5.1Missing
Case 13.5.2Missing
Case 13.5.3Missing
Case 13.5.4Missing
Case 13.5.5Missing
Case 13.5.6Missing
Case 13.5.7Missing
Case 13.5.8Missing
Case 13.5.9Missing
Case 13.5.10Missing
Case 13.5.11Missing
Case 13.5.12Missing
Case 13.5.13Missing
Case 13.5.14Missing
Case 13.5.15Missing
Case 13.5.16Missing
Case 13.5.17Missing
Case 13.5.18Missing
13 WebSocket Compression (different parameters)WS-RS
13.6 Large JSON data file (utf8, 194056 bytes) - client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)] / server accept (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]
Case 13.6.1Missing
Case 13.6.2Missing
Case 13.6.3Missing
Case 13.6.4Missing
Case 13.6.5Missing
Case 13.6.6Missing
Case 13.6.7Missing
Case 13.6.8Missing
Case 13.6.9Missing
Case 13.6.10Missing
Case 13.6.11Missing
Case 13.6.12Missing
Case 13.6.13Missing
Case 13.6.14Missing
Case 13.6.15Missing
Case 13.6.16Missing
Case 13.6.17Missing
Case 13.6.18Missing
13 WebSocket Compression (different parameters)WS-RS
13.7 Large JSON data file (utf8, 194056 bytes) - client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)] / server accept (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]
Case 13.7.1Missing
Case 13.7.2Missing
Case 13.7.3Missing
Case 13.7.4Missing
Case 13.7.5Missing
Case 13.7.6Missing
Case 13.7.7Missing
Case 13.7.8Missing
Case 13.7.9Missing
Case 13.7.10Missing
Case 13.7.11Missing
Case 13.7.12Missing
Case 13.7.13Missing
Case 13.7.14Missing
Case 13.7.15Missing
Case 13.7.16Missing
Case 13.7.17Missing
Case 13.7.18Missing
+

+
+
+ +

Case 1.1.1

+ Up +

Case Description

Send text message with payload 0.

+

Case Expectation

Receive echo'ed text message (with empty payload). Clean close with normal code.

+
+ +

Case 1.1.2

+ Up +

Case Description

Send text message message with payload of length 125.

+

Case Expectation

Receive echo'ed text message (with payload as sent). Clean close with normal code.

+
+ +

Case 1.1.3

+ Up +

Case Description

Send text message message with payload of length 126.

+

Case Expectation

Receive echo'ed text message (with payload as sent). Clean close with normal code.

+
+ +

Case 1.1.4

+ Up +

Case Description

Send text message message with payload of length 127.

+

Case Expectation

Receive echo'ed text message (with payload as sent). Clean close with normal code.

+
+ +

Case 1.1.5

+ Up +

Case Description

Send text message message with payload of length 128.

+

Case Expectation

Receive echo'ed text message (with payload as sent). Clean close with normal code.

+
+ +

Case 1.1.6

+ Up +

Case Description

Send text message message with payload of length 65535.

+

Case Expectation

Receive echo'ed text message (with payload as sent). Clean close with normal code.

+
+ +

Case 1.1.7

+ Up +

Case Description

Send text message message with payload of length 65536.

+

Case Expectation

Receive echo'ed text message (with payload as sent). Clean close with normal code.

+
+ +

Case 1.1.8

+ Up +

Case Description

Send text message message with payload of length 65536. Sent out data in chops of 997 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent). Clean close with normal code.

+
+ +

Case 1.2.1

+ Up +

Case Description

Send binary message with payload 0.

+

Case Expectation

Receive echo'ed binary message (with empty payload). Clean close with normal code.

+
+ +

Case 1.2.2

+ Up +

Case Description

Send binary message message with payload of length 125.

+

Case Expectation

Receive echo'ed binary message (with payload as sent). Clean close with normal code.

+
+ +

Case 1.2.3

+ Up +

Case Description

Send binary message message with payload of length 126.

+

Case Expectation

Receive echo'ed binary message (with payload as sent). Clean close with normal code.

+
+ +

Case 1.2.4

+ Up +

Case Description

Send binary message message with payload of length 127.

+

Case Expectation

Receive echo'ed binary message (with payload as sent). Clean close with normal code.

+
+ +

Case 1.2.5

+ Up +

Case Description

Send binary message message with payload of length 128.

+

Case Expectation

Receive echo'ed binary message (with payload as sent). Clean close with normal code.

+
+ +

Case 1.2.6

+ Up +

Case Description

Send binary message message with payload of length 65535.

+

Case Expectation

Receive echo'ed binary message (with payload as sent). Clean close with normal code.

+
+ +

Case 1.2.7

+ Up +

Case Description

Send binary message message with payload of length 65536.

+

Case Expectation

Receive echo'ed binary message (with payload as sent). Clean close with normal code.

+
+ +

Case 1.2.8

+ Up +

Case Description

Send binary message message with payload of length 65536. Sent out data in chops of 997 octets.

+

Case Expectation

Receive echo'ed binary message (with payload as sent). Clean close with normal code.

+
+ +

Case 2.1

+ Up +

Case Description

Send ping without payload.

+

Case Expectation

Pong (with empty payload) is sent in reply to Ping. Clean close with normal code.

+
+ +

Case 2.2

+ Up +

Case Description

Send ping with small text payload.

+

Case Expectation

Pong with payload echo'ed is sent in reply to Ping. Clean close with normal code.

+
+ +

Case 2.3

+ Up +

Case Description

Send ping with small binary (non UTF-8) payload.

+

Case Expectation

Pong with payload echo'ed is sent in reply to Ping. Clean close with normal code.

+
+ +

Case 2.4

+ Up +

Case Description

Send ping with binary payload of 125 octets.

+

Case Expectation

Pong with payload echo'ed is sent in reply to Ping. Clean close with normal code.

+
+ +

Case 2.5

+ Up +

Case Description

Send ping with binary payload of 126 octets.

+

Case Expectation

Connection is failed immediately (1002/Protocol Error), since control frames are only allowed to have payload up to and including 125 octets..

+
+ +

Case 2.6

+ Up +

Case Description

Send ping with binary payload of 125 octets, send in octet-wise chops.

+

Case Expectation

Pong with payload echo'ed is sent in reply to Ping. Implementations must be TCP clean. Clean close with normal code.

+
+ +

Case 2.7

+ Up +

Case Description

Send unsolicited pong without payload. Verify nothing is received. Clean close with normal code.

+

Case Expectation

Nothing.

+
+ +

Case 2.8

+ Up +

Case Description

Send unsolicited pong with payload. Verify nothing is received. Clean close with normal code.

+

Case Expectation

Nothing.

+
+ +

Case 2.9

+ Up +

Case Description

Send unsolicited pong with payload. Send ping with payload. Verify pong for ping is received.

+

Case Expectation

Nothing in reply to own Pong, but Pong with payload echo'ed in reply to Ping. Clean close with normal code.

+
+ +

Case 2.10

+ Up +

Case Description

Send 10 Pings with payload.

+

Case Expectation

Pongs for our Pings with all the payloads. Note: This is not required by the Spec .. but we check for this behaviour anyway. Clean close with normal code.

+
+ +

Case 2.11

+ Up +

Case Description

Send 10 Pings with payload. Send out octets in octet-wise chops.

+

Case Expectation

Pongs for our Pings with all the payloads. Note: This is not required by the Spec .. but we check for this behaviour anyway. Clean close with normal code.

+
+ +

Case 3.1

+ Up +

Case Description

Send small text message with RSV = 1.

+

Case Expectation

The connection is failed immediately (1002/protocol error), since RSV must be 0, when no extension defining RSV meaning has been negotiated.

+
+ +

Case 3.2

+ Up +

Case Description

Send small text message, then send again with RSV = 2, then send Ping.

+

Case Expectation

Echo for first message is received, but then connection is failed immediately, since RSV must be 0, when no extension defining RSV meaning has been negotiated. The Pong is not received.

+
+ +

Case 3.3

+ Up +

Case Description

Send small text message, then send again with RSV = 3, then send Ping. Octets are sent in frame-wise chops. Octets are sent in octet-wise chops.

+

Case Expectation

Echo for first message is received, but then connection is failed immediately, since RSV must be 0, when no extension defining RSV meaning has been negotiated. The Pong is not received.

+
+ +

Case 3.4

+ Up +

Case Description

Send small text message, then send again with RSV = 4, then send Ping. Octets are sent in octet-wise chops.

+

Case Expectation

Echo for first message is received, but then connection is failed immediately, since RSV must be 0, when no extension defining RSV meaning has been negotiated. The Pong is not received.

+
+ +

Case 3.5

+ Up +

Case Description

Send small binary message with RSV = 5.

+

Case Expectation

The connection is failed immediately, since RSV must be 0.

+
+ +

Case 3.6

+ Up +

Case Description

Send Ping with RSV = 6.

+

Case Expectation

The connection is failed immediately, since RSV must be 0.

+
+ +

Case 3.7

+ Up +

Case Description

Send Close with RSV = 7.

+

Case Expectation

The connection is failed immediately, since RSV must be 0.

+
+ +

Case 4.1.1

+ Up +

Case Description

Send frame with reserved non-control Opcode = 3.

+

Case Expectation

The connection is failed immediately.

+
+ +

Case 4.1.2

+ Up +

Case Description

Send frame with reserved non-control Opcode = 4 and non-empty payload.

+

Case Expectation

The connection is failed immediately.

+
+ +

Case 4.1.3

+ Up +

Case Description

Send small text message, then send frame with reserved non-control Opcode = 5, then send Ping.

+

Case Expectation

Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.

+
+ +

Case 4.1.4

+ Up +

Case Description

Send small text message, then send frame with reserved non-control Opcode = 6 and non-empty payload, then send Ping.

+

Case Expectation

Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.

+
+ +

Case 4.1.5

+ Up +

Case Description

Send small text message, then send frame with reserved non-control Opcode = 7 and non-empty payload, then send Ping.

+

Case Expectation

Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.

+
+ +

Case 4.2.1

+ Up +

Case Description

Send frame with reserved control Opcode = 11.

+

Case Expectation

The connection is failed immediately.

+
+ +

Case 4.2.2

+ Up +

Case Description

Send frame with reserved control Opcode = 12 and non-empty payload.

+

Case Expectation

The connection is failed immediately.

+
+ +

Case 4.2.3

+ Up +

Case Description

Send small text message, then send frame with reserved control Opcode = 13, then send Ping.

+

Case Expectation

Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.

+
+ +

Case 4.2.4

+ Up +

Case Description

Send small text message, then send frame with reserved control Opcode = 14 and non-empty payload, then send Ping.

+

Case Expectation

Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.

+
+ +

Case 4.2.5

+ Up +

Case Description

Send small text message, then send frame with reserved control Opcode = 15 and non-empty payload, then send Ping.

+

Case Expectation

Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.

+
+ +

Case 5.1

+ Up +

Case Description

Send Ping fragmented into 2 fragments.

+

Case Expectation

Connection is failed immediately, since control message MUST NOT be fragmented.

+
+ +

Case 5.2

+ Up +

Case Description

Send Pong fragmented into 2 fragments.

+

Case Expectation

Connection is failed immediately, since control message MUST NOT be fragmented.

+
+ +

Case 5.3

+ Up +

Case Description

Send text Message fragmented into 2 fragments.

+

Case Expectation

Message is processed and echo'ed back to us.

+
+ +

Case 5.4

+ Up +

Case Description

Send text Message fragmented into 2 fragments, octets are sent in frame-wise chops.

+

Case Expectation

Message is processed and echo'ed back to us.

+
+ +

Case 5.5

+ Up +

Case Description

Send text Message fragmented into 2 fragments, octets are sent in octet-wise chops.

+

Case Expectation

Message is processed and echo'ed back to us.

+
+ +

Case 5.6

+ Up +

Case Description

Send text Message fragmented into 2 fragments, one ping with payload in-between.

+

Case Expectation

A pong is received, then the message is echo'ed back to us.

+
+ +

Case 5.7

+ Up +

Case Description

Send text Message fragmented into 2 fragments, one ping with payload in-between. Octets are sent in frame-wise chops.

+

Case Expectation

A pong is received, then the message is echo'ed back to us.

+
+ +

Case 5.8

+ Up +

Case Description

Send text Message fragmented into 2 fragments, one ping with payload in-between. Octets are sent in octet-wise chops.

+

Case Expectation

A pong is received, then the message is echo'ed back to us.

+
+ +

Case 5.9

+ Up +

Case Description

Send unfragmented Text Message after Continuation Frame with FIN = true, where there is nothing to continue, sent in one chop.

+

Case Expectation

The connection is failed immediately, since there is no message to continue.

+
+ +

Case 5.10

+ Up +

Case Description

Send unfragmented Text Message after Continuation Frame with FIN = true, where there is nothing to continue, sent in per-frame chops.

+

Case Expectation

The connection is failed immediately, since there is no message to continue.

+
+ +

Case 5.11

+ Up +

Case Description

Send unfragmented Text Message after Continuation Frame with FIN = true, where there is nothing to continue, sent in octet-wise chops.

+

Case Expectation

The connection is failed immediately, since there is no message to continue.

+
+ +

Case 5.12

+ Up +

Case Description

Send unfragmented Text Message after Continuation Frame with FIN = false, where there is nothing to continue, sent in one chop.

+

Case Expectation

The connection is failed immediately, since there is no message to continue.

+
+ +

Case 5.13

+ Up +

Case Description

Send unfragmented Text Message after Continuation Frame with FIN = false, where there is nothing to continue, sent in per-frame chops.

+

Case Expectation

The connection is failed immediately, since there is no message to continue.

+
+ +

Case 5.14

+ Up +

Case Description

Send unfragmented Text Message after Continuation Frame with FIN = false, where there is nothing to continue, sent in octet-wise chops.

+

Case Expectation

The connection is failed immediately, since there is no message to continue.

+
+ +

Case 5.15

+ Up +

Case Description

Send text Message fragmented into 2 fragments, then Continuation Frame with FIN = false where there is nothing to continue, then unfragmented Text Message, all sent in one chop.

+

Case Expectation

The connection is failed immediately, since there is no message to continue.

+
+ +

Case 5.16

+ Up +

Case Description

Repeated 2x: Continuation Frame with FIN = false (where there is nothing to continue), then text Message fragmented into 2 fragments.

+

Case Expectation

The connection is failed immediately, since there is no message to continue.

+
+ +

Case 5.17

+ Up +

Case Description

Repeated 2x: Continuation Frame with FIN = true (where there is nothing to continue), then text Message fragmented into 2 fragments.

+

Case Expectation

The connection is failed immediately, since there is no message to continue.

+
+ +

Case 5.18

+ Up +

Case Description

Send text Message fragmented into 2 fragments, with both frame opcodes set to text, sent in one chop.

+

Case Expectation

The connection is failed immediately, since all data frames after the initial data frame must have opcode 0.

+
+ +

Case 5.19

+ Up +

Case Description

A fragmented text message is sent in multiple frames. After + sending the first 2 frames of the text message, a Ping is sent. Then we wait 1s, + then we send 2 more text fragments, another Ping and then the final text fragment. + Everything is legal.

+

Case Expectation

The peer immediately answers the first Ping before + it has received the last text message fragment. The peer pong's back the Ping's + payload exactly, and echo's the payload of the fragmented message back to us.

+
+ +

Case 5.20

+ Up +

Case Description

Same as Case 5.19, but send all frames with SYNC = True. + Note, this does not change the octets sent in any way, only how the stream + is chopped up on the wire.

+

Case Expectation

Same as Case 5.19. Implementations must be agnostic to how + octet stream is chopped up on wire (must be TCP clean).

+
+ +

Case 6.1.1

+ Up +

Case Description

Send text message of length 0.

+

Case Expectation

A message is echo'ed back to us (with empty payload).

+
+ +

Case 6.1.2

+ Up +

Case Description

Send fragmented text message, 3 fragments each of length 0.

+

Case Expectation

A message is echo'ed back to us (with empty payload).

+
+ +

Case 6.1.3

+ Up +

Case Description

Send fragmented text message, 3 fragments, first and last of length 0, middle non-empty.

+

Case Expectation

A message is echo'ed back to us (with payload = payload of middle fragment).

+
+ +

Case 6.2.1

+ Up +

Case Description

Send a valid UTF-8 text message in one fragment.

MESSAGE:
Hello-µ@ßöäüàá-UTF-8!!
48656c6c6f2dc2b540c39fc3b6c3a4c3bcc3a0c3a12d5554462d382121

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.2.2

+ Up +

Case Description

Send a valid UTF-8 text message in two fragments, fragmented on UTF-8 code point boundary.

MESSAGE FRAGMENT 1:
Hello-µ@ßöä
48656c6c6f2dc2b540c39fc3b6c3a4

MESSAGE FRAGMENT 2:
üàá-UTF-8!!
c3bcc3a0c3a12d5554462d382121

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.2.3

+ Up +

Case Description

Send a valid UTF-8 text message in fragments of 1 octet, resulting in frames ending on positions which are not code point ends.

MESSAGE:
Hello-µ@ßöäüàá-UTF-8!!
48656c6c6f2dc2b540c39fc3b6c3a4c3bcc3a0c3a12d5554462d382121

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.2.4

+ Up +

Case Description

Send a valid UTF-8 text message in fragments of 1 octet, resulting in frames ending on positions which are not code point ends.

MESSAGE:
κόσμε
cebae1bdb9cf83cebcceb5

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.3.1

+ Up +

Case Description

Send invalid UTF-8 text message unfragmented.

MESSAGE:
cebae1bdb9cf83cebcceb5eda080656469746564

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.3.2

+ Up +

Case Description

Send invalid UTF-8 text message in fragments of 1 octet, resulting in frames ending on positions which are not code point ends.

MESSAGE:
cebae1bdb9cf83cebcceb5eda080656469746564

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.4.1

+ Up +

Case Description

Send invalid UTF-8 text message in 3 fragments (frames). +First frame payload is valid, then wait, then 2nd frame which contains the payload making the sequence invalid, then wait, then 3rd frame with rest. +Note that PART1 and PART3 are valid UTF-8 in themselves, PART2 is a 0x110000 encoded as in the UTF-8 integer encoding scheme, but the codepoint is invalid (out of range). +

MESSAGE PARTS:
+PART1 = cebae1bdb9cf83cebcceb5
+PART2 = f4908080
+PART3 = 656469746564
+

+

Case Expectation

The first frame is accepted, we expect to timeout on the first wait. The 2nd frame should be rejected immediately (fail fast on UTF-8). If we timeout, we expect the connection is failed at least then, since the complete message payload is not valid UTF-8.

+
+ +

Case 6.4.2

+ Up +

Case Description

Same as Case 6.4.1, but in 2nd frame, we send only up to and including the octet making the complete payload invalid. +

MESSAGE PARTS:
+PART1 = cebae1bdb9cf83cebcceb5f4
+PART2 = 90
+PART3 = 8080656469746564
+

+

Case Expectation

The first frame is accepted, we expect to timeout on the first wait. The 2nd frame should be rejected immediately (fail fast on UTF-8). If we timeout, we expect the connection is failed at least then, since the complete message payload is not valid UTF-8.

+
+ +

Case 6.4.3

+ Up +

Case Description

Same as Case 6.4.1, but we send message not in 3 frames, but in 3 chops of the same message frame. +

MESSAGE PARTS:
+PART1 = cebae1bdb9cf83cebcceb5
+PART2 = f4908080
+PART3 = 656469746564
+

+

Case Expectation

The first chop is accepted, we expect to timeout on the first wait. The 2nd chop should be rejected immediately (fail fast on UTF-8). If we timeout, we expect the connection is failed at least then, since the complete message payload is not valid UTF-8.

+
+ +

Case 6.4.4

+ Up +

Case Description

Same as Case 6.4.2, but we send message not in 3 frames, but in 3 chops of the same message frame. +

MESSAGE PARTS:
+PART1 = cebae1bdb9cf83cebcceb5f4
+PART2 = 90
+PART3 =
+

+

Case Expectation

The first chop is accepted, we expect to timeout on the first wait. The 2nd chop should be rejected immediately (fail fast on UTF-8). If we timeout, we expect the connection is failed at least then, since the complete message payload is not valid UTF-8.

+
+ +

Case 6.5.1

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0x68656c6c6f24776f726c64

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.5.2

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0x68656c6c6fc2a2776f726c64

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.5.3

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0x68656c6c6fe282ac776f726c64

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.5.4

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0x68656c6c6ff0a4ada2776f726c64

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.5.5

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9cf83cebcceb5

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.6.1

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xce

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.6.2

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xceba

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.6.3

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xcebae1

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.6.4

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xcebae1bd

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.6.5

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.6.6

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9cf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.6.7

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9cf83

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.6.8

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9cf83ce

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.6.9

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9cf83cebc

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.6.10

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9cf83cebcce

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.6.11

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9cf83cebcceb5

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.7.1

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0x00

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.7.2

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xc280

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.7.3

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xe0a080

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.7.4

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf0908080

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.8.1

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf888808080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.8.2

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfc8480808080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.9.1

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0x7f

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.9.2

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xdfbf

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.9.3

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbf

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.9.4

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf48fbfbf

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.10.1

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf7bfbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.10.2

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfbbfbfbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.10.3

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfdbfbfbfbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.11.1

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xed9fbf

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.11.2

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xee8080

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.11.3

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbd

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.11.4

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf48fbfbf

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.11.5

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf4908080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.12.1

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0x80

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.12.2

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.12.3

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0x80bf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.12.4

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0x80bf80

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.12.5

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0x80bf80bf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.12.6

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0x80bf80bf80

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.12.7

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0x80bf80bf80bf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.12.8

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0x808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbe

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.13.1

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xc020c120c220c320c420c520c620c720c820c920ca20cb20cc20cd20ce20cf20d020d120d220d320d420d520d620d720d820d920da20db20dc20dd20de20

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.13.2

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xe020e120e220e320e420e520e620e720e820e920ea20eb20ec20ed20ee20

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.13.3

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf020f120f220f320f420f520f620

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.13.4

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf820f920fa20

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.13.5

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfc20

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.14.1

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xc0

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.14.2

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xe080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.14.3

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf08080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.14.4

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf8808080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.14.5

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfc80808080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.14.6

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xdf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.14.7

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xefbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.14.8

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf7bfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.14.9

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfbbfbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.14.10

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfdbfbfbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.15.1

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xc0e080f08080f8808080fc80808080dfefbff7bfbffbbfbfbffdbfbfbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.16.1

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfe

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.16.2

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xff

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.16.3

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfefeffff

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.17.1

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xc0af

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.17.2

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xe080af

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.17.3

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf08080af

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.17.4

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf8808080af

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.17.5

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfc80808080af

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.18.1

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xc1bf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.18.2

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xe09fbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.18.3

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf08fbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.18.4

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf887bfbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.18.5

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfc83bfbfbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.19.1

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xc080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.19.2

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xe08080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.19.3

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf0808080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.19.4

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf880808080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.19.5

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfc8080808080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.20.1

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xeda080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.20.2

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedadbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.20.3

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedae80

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.20.4

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedafbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.20.5

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedb080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.20.6

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedbe80

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.20.7

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.21.1

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xeda080edb080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.21.2

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xeda080edbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.21.3

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedadbfedb080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.21.4

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedadbfedbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.21.5

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedae80edb080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.21.6

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedae80edbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.21.7

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedafbfedb080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.21.8

+ Up +

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedafbfedbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+
+ +

Case 6.22.1

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbe

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.2

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbf

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.3

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf09fbfbe

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.4

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf09fbfbf

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.5

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf0afbfbe

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.6

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf0afbfbf

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.7

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf0bfbfbe

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.8

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf0bfbfbf

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.9

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf18fbfbe

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.10

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf18fbfbf

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.11

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf19fbfbe

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.12

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf19fbfbf

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.13

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf1afbfbe

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.14

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf1afbfbf

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.15

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf1bfbfbe

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.16

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf1bfbfbf

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.17

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf28fbfbe

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.18

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf28fbfbf

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.19

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf29fbfbe

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.20

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf29fbfbf

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.21

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf2afbfbe

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.22

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf2afbfbf

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.23

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf2bfbfbe

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.24

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf2bfbfbf

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.25

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf38fbfbe

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.26

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf38fbfbf

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.27

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf39fbfbe

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.28

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf39fbfbf

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.29

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf3afbfbe

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.30

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf3afbfbf

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.31

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf3bfbfbe

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.32

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf3bfbfbf

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.33

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf48fbfbe

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.22.34

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf48fbfbf

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.23.1

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfb9

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.23.2

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfba

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.23.3

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbb

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.23.4

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbc

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.23.5

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbd

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.23.6

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbe

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 6.23.7

+ Up +

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbf

+

Case Expectation

The message is echo'ed back to us.

+
+ +

Case 7.1.1

+ Up +

Case Description

Send a message followed by a close frame

+

Case Expectation

Echoed message followed by clean close with normal code.

+
+ +

Case 7.1.2

+ Up +

Case Description

Send two close frames

+

Case Expectation

Clean close with normal code. Second close frame ignored.

+
+ +

Case 7.1.3

+ Up +

Case Description

Send a ping after close message

+

Case Expectation

Clean close with normal code, no pong.

+
+ +

Case 7.1.4

+ Up +

Case Description

Send text message after sending a close frame.

+

Case Expectation

Clean close with normal code. Text message ignored.

+
+ +

Case 7.1.5

+ Up +

Case Description

Send message fragment1 followed by close then fragment

+

Case Expectation

Clean close with normal code.

+
+ +

Case 7.1.6

+ Up +

Case Description

Send 256K message followed by close then a ping

+

Case Expectation

Case outcome depends on implementation defined close behavior. Message and close frame are sent back to back. If the close frame is processed before the text message write is complete (as can happen in asynchronous processing models) the close frame is processed first and the text message may not be received or may only be partially recieved.

+
+ +

Case 7.3.1

+ Up +

Case Description

Send a close frame with payload length 0 (no close code, no close reason)

+

Case Expectation

Clean close with normal code.

+
+ +

Case 7.3.2

+ Up +

Case Description

Send a close frame with payload length 1

+

Case Expectation

Clean close with protocol error or drop TCP.

+
+ +

Case 7.3.3

+ Up +

Case Description

Send a close frame with payload length 2 (regular close with a code)

+

Case Expectation

Clean close with normal code.

+
+ +

Case 7.3.4

+ Up +

Case Description

Send a close frame with close code and close reason

+

Case Expectation

Clean close with normal code.

+
+ +

Case 7.3.5

+ Up +

Case Description

Send a close frame with close code and close reason of maximum length (123)

+

Case Expectation

Clean close with normal code.

+
+ +

Case 7.3.6

+ Up +

Case Description

Send a close frame with close code and close reason which is too long (124) - total frame payload 126 octets

+

Case Expectation

Clean close with protocol error code or dropped TCP connection.

+
+ +

Case 7.5.1

+ Up +

Case Description

Send a close frame with invalid UTF8 payload

+

Case Expectation

Clean close with protocol error or invalid utf8 code or dropped TCP.

+
+ +

Case 7.7.1

+ Up +

Case Description

Send close with valid close code 1000

+

Case Expectation

Clean close with normal or echoed code

+
+ +

Case 7.7.2

+ Up +

Case Description

Send close with valid close code 1001

+

Case Expectation

Clean close with normal or echoed code

+
+ +

Case 7.7.3

+ Up +

Case Description

Send close with valid close code 1002

+

Case Expectation

Clean close with normal or echoed code

+
+ +

Case 7.7.4

+ Up +

Case Description

Send close with valid close code 1003

+

Case Expectation

Clean close with normal or echoed code

+
+ +

Case 7.7.5

+ Up +

Case Description

Send close with valid close code 1007

+

Case Expectation

Clean close with normal or echoed code

+
+ +

Case 7.7.6

+ Up +

Case Description

Send close with valid close code 1008

+

Case Expectation

Clean close with normal or echoed code

+
+ +

Case 7.7.7

+ Up +

Case Description

Send close with valid close code 1009

+

Case Expectation

Clean close with normal or echoed code

+
+ +

Case 7.7.8

+ Up +

Case Description

Send close with valid close code 1010

+

Case Expectation

Clean close with normal or echoed code

+
+ +

Case 7.7.9

+ Up +

Case Description

Send close with valid close code 1011

+

Case Expectation

Clean close with normal or echoed code

+
+ +

Case 7.7.10

+ Up +

Case Description

Send close with valid close code 3000

+

Case Expectation

Clean close with normal or echoed code

+
+ +

Case 7.7.11

+ Up +

Case Description

Send close with valid close code 3999

+

Case Expectation

Clean close with normal or echoed code

+
+ +

Case 7.7.12

+ Up +

Case Description

Send close with valid close code 4000

+

Case Expectation

Clean close with normal or echoed code

+
+ +

Case 7.7.13

+ Up +

Case Description

Send close with valid close code 4999

+

Case Expectation

Clean close with normal or echoed code

+
+ +

Case 7.9.1

+ Up +

Case Description

Send close with invalid close code 0

+

Case Expectation

Clean close with protocol error code or drop TCP

+
+ +

Case 7.9.2

+ Up +

Case Description

Send close with invalid close code 999

+

Case Expectation

Clean close with protocol error code or drop TCP

+
+ +

Case 7.9.3

+ Up +

Case Description

Send close with invalid close code 1004

+

Case Expectation

Clean close with protocol error code or drop TCP

+
+ +

Case 7.9.4

+ Up +

Case Description

Send close with invalid close code 1005

+

Case Expectation

Clean close with protocol error code or drop TCP

+
+ +

Case 7.9.5

+ Up +

Case Description

Send close with invalid close code 1006

+

Case Expectation

Clean close with protocol error code or drop TCP

+
+ +

Case 7.9.6

+ Up +

Case Description

Send close with invalid close code 1016

+

Case Expectation

Clean close with protocol error code or drop TCP

+
+ +

Case 7.9.7

+ Up +

Case Description

Send close with invalid close code 1100

+

Case Expectation

Clean close with protocol error code or drop TCP

+
+ +

Case 7.9.8

+ Up +

Case Description

Send close with invalid close code 2000

+

Case Expectation

Clean close with protocol error code or drop TCP

+
+ +

Case 7.9.9

+ Up +

Case Description

Send close with invalid close code 2999

+

Case Expectation

Clean close with protocol error code or drop TCP

+
+ +

Case 7.13.1

+ Up +

Case Description

Send close with close code 5000

+

Case Expectation

Actual events are undefined by the spec.

+
+ +

Case 7.13.2

+ Up +

Case Description

Send close with close code 65536

+

Case Expectation

Actual events are undefined by the spec.

+
+ +

Case 9.1.1

+ Up +

Case Description

Send text message message with payload of length 64 * 2**10 (64k).

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.1.2

+ Up +

Case Description

Send text message message with payload of length 256 * 2**10 (256k).

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.1.3

+ Up +

Case Description

Send text message message with payload of length 1 * 2**20 (1M).

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.1.4

+ Up +

Case Description

Send text message message with payload of length 4 * 2**20 (4M).

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.1.5

+ Up +

Case Description

Send text message message with payload of length 8 * 2**20 (8M).

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.1.6

+ Up +

Case Description

Send text message message with payload of length 16 * 2**20 (16M).

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.2.1

+ Up +

Case Description

Send binary message message with payload of length 64 * 2**10 (64k).

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+
+ +

Case 9.2.2

+ Up +

Case Description

Send binary message message with payload of length 256 * 2**10 (256k).

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+
+ +

Case 9.2.3

+ Up +

Case Description

Send binary message message with payload of length 1 * 2**20 (1M).

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+
+ +

Case 9.2.4

+ Up +

Case Description

Send binary message message with payload of length 4 * 2**20 (4M).

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+
+ +

Case 9.2.5

+ Up +

Case Description

Send binary message message with payload of length 8 * 2**20 (16M).

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+
+ +

Case 9.2.6

+ Up +

Case Description

Send binary message message with payload of length 16 * 2**20 (16M).

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+
+ +

Case 9.3.1

+ Up +

Case Description

Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 64.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.3.2

+ Up +

Case Description

Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 256.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.3.3

+ Up +

Case Description

Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 1k.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.3.4

+ Up +

Case Description

Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 4k.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.3.5

+ Up +

Case Description

Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 16k.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.3.6

+ Up +

Case Description

Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 64k.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.3.7

+ Up +

Case Description

Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 256k.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.3.8

+ Up +

Case Description

Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 1M.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.3.9

+ Up +

Case Description

Send fragmented text message message with message payload of length 4 * 2**20 (8M). Sent out in fragments of 4M.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.4.1

+ Up +

Case Description

Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 64.

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+
+ +

Case 9.4.2

+ Up +

Case Description

Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 256.

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+
+ +

Case 9.4.3

+ Up +

Case Description

Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 1k.

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+
+ +

Case 9.4.4

+ Up +

Case Description

Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 4k.

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+
+ +

Case 9.4.5

+ Up +

Case Description

Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 16k.

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+
+ +

Case 9.4.6

+ Up +

Case Description

Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 64k.

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+
+ +

Case 9.4.7

+ Up +

Case Description

Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 256k.

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+
+ +

Case 9.4.8

+ Up +

Case Description

Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 1M.

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+
+ +

Case 9.4.9

+ Up +

Case Description

Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 4M.

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+
+ +

Case 9.5.1

+ Up +

Case Description

Send text message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 64 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.5.2

+ Up +

Case Description

Send text message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 128 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.5.3

+ Up +

Case Description

Send text message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 256 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.5.4

+ Up +

Case Description

Send text message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 512 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.5.5

+ Up +

Case Description

Send text message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 1024 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.5.6

+ Up +

Case Description

Send text message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 2048 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.6.1

+ Up +

Case Description

Send binary message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 64 octets.

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+
+ +

Case 9.6.2

+ Up +

Case Description

Send binary message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 128 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.6.3

+ Up +

Case Description

Send binary message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 256 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.6.4

+ Up +

Case Description

Send binary message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 512 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.6.5

+ Up +

Case Description

Send binary message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 1024 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.6.6

+ Up +

Case Description

Send binary message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 2048 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+
+ +

Case 9.7.1

+ Up +

Case Description

Send 1000 text messages of payload size 0 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed text messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 9.7.2

+ Up +

Case Description

Send 1000 text messages of payload size 16 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed text messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 9.7.3

+ Up +

Case Description

Send 1000 text messages of payload size 64 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed text messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 9.7.4

+ Up +

Case Description

Send 1000 text messages of payload size 256 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed text messages (with payload as sent). Timeout case after 120 secs.

+
+ +

Case 9.7.5

+ Up +

Case Description

Send 1000 text messages of payload size 1024 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed text messages (with payload as sent). Timeout case after 240 secs.

+
+ +

Case 9.7.6

+ Up +

Case Description

Send 1000 text messages of payload size 4096 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed text messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 9.8.1

+ Up +

Case Description

Send 1000 binary messages of payload size 0 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed binary messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 9.8.2

+ Up +

Case Description

Send 1000 binary messages of payload size 16 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed binary messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 9.8.3

+ Up +

Case Description

Send 1000 binary messages of payload size 64 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed binary messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 9.8.4

+ Up +

Case Description

Send 1000 binary messages of payload size 256 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed binary messages (with payload as sent). Timeout case after 120 secs.

+
+ +

Case 9.8.5

+ Up +

Case Description

Send 1000 binary messages of payload size 1024 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed binary messages (with payload as sent). Timeout case after 240 secs.

+
+ +

Case 9.8.6

+ Up +

Case Description

Send 1000 binary messages of payload size 4096 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed binary messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 10.1.1

+ Up +

Case Description

Send text message with payload of length 65536 auto-fragmented with autoFragmentSize = 1300.

+

Case Expectation

Receive echo'ed text message (with payload as sent and transmitted frame counts as expected). Clean close with normal code.

+
+ +

Case 12.1.1

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 12.1.2

+ Up +

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 12.1.3

+ Up +

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+
+ +

Case 12.1.4

+ Up +

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+
+ +

Case 12.1.5

+ Up +

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.1.6

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.1.7

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.1.8

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.1.9

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.1.10

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.1.11

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.1.12

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.1.13

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.1.14

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.1.15

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.1.16

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.1.17

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.1.18

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.2.1

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 12.2.2

+ Up +

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 12.2.3

+ Up +

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+
+ +

Case 12.2.4

+ Up +

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+
+ +

Case 12.2.5

+ Up +

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.2.6

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.2.7

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.2.8

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.2.9

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.2.10

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.2.11

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.2.12

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.2.13

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.2.14

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.2.15

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.2.16

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.2.17

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.2.18

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.3.1

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 12.3.2

+ Up +

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 12.3.3

+ Up +

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+
+ +

Case 12.3.4

+ Up +

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+
+ +

Case 12.3.5

+ Up +

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.3.6

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.3.7

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.3.8

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.3.9

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.3.10

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.3.11

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.3.12

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.3.13

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.3.14

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.3.15

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.3.16

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.3.17

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.3.18

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.4.1

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 12.4.2

+ Up +

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 12.4.3

+ Up +

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+
+ +

Case 12.4.4

+ Up +

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+
+ +

Case 12.4.5

+ Up +

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.4.6

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.4.7

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.4.8

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.4.9

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.4.10

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.4.11

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.4.12

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.4.13

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.4.14

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.4.15

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.4.16

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.4.17

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.4.18

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.5.1

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 12.5.2

+ Up +

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 12.5.3

+ Up +

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+
+ +

Case 12.5.4

+ Up +

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+
+ +

Case 12.5.5

+ Up +

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.5.6

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.5.7

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.5.8

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.5.9

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.5.10

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.5.11

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.5.12

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.5.13

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.5.14

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.5.15

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.5.16

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.5.17

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 12.5.18

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.1.1

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 13.1.2

+ Up +

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 13.1.3

+ Up +

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+
+ +

Case 13.1.4

+ Up +

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+
+ +

Case 13.1.5

+ Up +

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.1.6

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.1.7

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.1.8

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.1.9

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.1.10

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.1.11

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.1.12

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.1.13

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.1.14

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.1.15

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.1.16

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.1.17

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.1.18

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.2.1

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 13.2.2

+ Up +

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 13.2.3

+ Up +

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+
+ +

Case 13.2.4

+ Up +

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+
+ +

Case 13.2.5

+ Up +

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.2.6

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.2.7

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.2.8

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.2.9

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.2.10

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.2.11

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.2.12

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.2.13

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.2.14

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.2.15

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.2.16

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.2.17

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.2.18

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.3.1

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 13.3.2

+ Up +

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 13.3.3

+ Up +

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+
+ +

Case 13.3.4

+ Up +

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+
+ +

Case 13.3.5

+ Up +

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.3.6

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.3.7

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.3.8

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.3.9

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.3.10

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.3.11

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.3.12

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.3.13

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.3.14

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.3.15

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.3.16

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.3.17

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.3.18

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.4.1

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 13.4.2

+ Up +

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 13.4.3

+ Up +

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+
+ +

Case 13.4.4

+ Up +

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+
+ +

Case 13.4.5

+ Up +

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.4.6

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.4.7

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.4.8

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.4.9

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.4.10

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.4.11

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.4.12

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.4.13

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.4.14

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.4.15

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.4.16

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.4.17

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.4.18

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.5.1

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 13.5.2

+ Up +

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 13.5.3

+ Up +

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+
+ +

Case 13.5.4

+ Up +

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+
+ +

Case 13.5.5

+ Up +

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.5.6

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.5.7

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.5.8

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.5.9

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.5.10

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.5.11

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.5.12

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.5.13

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.5.14

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.5.15

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.5.16

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.5.17

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.5.18

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.6.1

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 13.6.2

+ Up +

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 13.6.3

+ Up +

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+
+ +

Case 13.6.4

+ Up +

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+
+ +

Case 13.6.5

+ Up +

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.6.6

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.6.7

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.6.8

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.6.9

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.6.10

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.6.11

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.6.12

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.6.13

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.6.14

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.6.15

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.6.16

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.6.17

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.6.18

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.7.1

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 13.7.2

+ Up +

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+
+ +

Case 13.7.3

+ Up +

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+
+ +

Case 13.7.4

+ Up +

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+
+ +

Case 13.7.5

+ Up +

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.7.6

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.7.7

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.7.8

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.7.9

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.7.10

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.7.11

+ Up +

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.7.12

+ Up +

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.7.13

+ Up +

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.7.14

+ Up +

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.7.15

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.7.16

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.7.17

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+ +

Case 13.7.18

+ Up +

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+
+

+ + diff --git a/autobahn/client/index.json b/autobahn/client/index.json new file mode 100644 index 0000000..aa70f1e --- /dev/null +++ b/autobahn/client/index.json @@ -0,0 +1,11 @@ +{ + "WS-RS": { + "12.5.4": { + "behavior": "OK", + "behaviorClose": "OK", + "duration": 452, + "remoteCloseCode": 1000, + "reportfile": "ws_rs_case_12_5_4.json" + } + } +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_10_1_1.html b/autobahn/client/tungstenite_case_10_1_1.html new file mode 100644 index 0000000..d7a9e12 --- /dev/null +++ b/autobahn/client/tungstenite_case_10_1_1.html @@ -0,0 +1,509 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 10.1.1 : Pass - 2 ms @ 2020-09-07T18:44:08.086Z

+

Case Description

Send text message with payload of length 65536 auto-fragmented with autoFragmentSize = 1300.

+

Case Expectation

Receive echo'ed text message (with payload as sent and transmitted frame counts as expected). Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'**************************************************************** ...', False)]}

+ Observed:
[('message', u'**************************************************************** ...', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=301&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: T2ynyuRyyAIA3HB43FBfgQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 7DxZEfjX+SM/AxIT79+h5ADKugY=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536165536
Total465815
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
414
2061206
5401540
13045065200
Total5365950
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
050
11
81
Total52
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333031266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
003 TX OCTETS: 017e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
004 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
005 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
006 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
007 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
008 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
009 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
010 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
011 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
012 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
013 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
014 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
015 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
016 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
017 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
018 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
019 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
020 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
021 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
022 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
023 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
024 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
025 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
026 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
027 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
028 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
029 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
030 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
031 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
032 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
033 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
034 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
035 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
036 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
037 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
038 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
039 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
040 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
041 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
042 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
043 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
044 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
045 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
046 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
047 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
048 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
049 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
050 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
051 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
052 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
053 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
054 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
055 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
056 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
057 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
058 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
059 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
060 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
061 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
062 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
063 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
064 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
065 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
066 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
067 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
068 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
069 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
070 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
071 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
072 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
073 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
074 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
075 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
076 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
077 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
078 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
079 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
080 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
081 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
082 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
083 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
084 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
085 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
086 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
087 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
088 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
089 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
090 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
091 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
092 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
093 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
094 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
095 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
096 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
097 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
098 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
099 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
100 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1300, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
101 TX OCTETS: 007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
102 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=536, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
103 TX OCTETS: 807e02182a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
104 FAIL CONNECTION AFTER 10.000000 sec
+
105 RX OCTETS: 81ff0000000000010000fdf29880d7d8b2aad7d8b2aad7d8b2aad7d8b2aad7d8b2aad7d8b2aad7d8b2aad7d8b2aad7d8b2aa
+
               d7d8b2aad7d8b2aad7d8b2aad7d8 ...
+
106 RX OCTETS: b2aad7d8b2aad7d8b2aad7d8b2aa
+
107 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=65536, MASKED=True, MASK=6664663239383830
+
               **************************************************************** ...
+
108 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
109 TX OCTETS: 880203e8
+
110 RX OCTETS: 8882dfd83cb8dc30
+
111 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6466643833636238
+
               0x03e8
+
112 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_10_1_1.json b/autobahn/client/tungstenite_case_10_1_1.json new file mode 100644 index 0000000..fec32dd --- /dev/null +++ b/autobahn/client/tungstenite_case_10_1_1.json @@ -0,0 +1,1287 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 301, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text message with payload of length 65536 auto-fragmented with autoFragmentSize = 1300.", + "droppedByMe": true, + "duration": 2, + "expectation": "Receive echo'ed text message (with payload as sent and transmitted frame counts as expected). Clean close with normal code.", + "expected": { + "OK": [ + [ + "message", + "**************************************************************** ...", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=301&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: T2ynyuRyyAIA3HB43FBfgQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 7DxZEfjX+SM/AxIT79+h5ADKugY=\r\n\r\n", + "id": "10.1.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "**************************************************************** ...", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 1 + }, + "started": "2020-09-07T18:44:08.086Z", + "trafficStats": null, + "txFrameStats": { + "0": 50, + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "540": 1, + "1304": 50 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333031266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 1, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "017e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 1300, + "**************************************************************** ..." + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 1304, + "007e05142a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "TF", + [ + 536, + "**************************************************************** ..." + ], + 0, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 540, + "807e02182a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "KL", + 10 + ], + [ + "RO", + [ + 65536, + "81ff0000000000010000fdf29880d7d8b2aad7d8b2aad7d8b2aad7d8b2aad7d8b2aad7d8b2aad7d8b2aad7d8b2aad7d8b2aad7d8b2aad7d8b2aad7d8b2aad7d8 ..." + ] + ], + [ + "RO", + [ + 14, + "b2aad7d8b2aad7d8b2aad7d8b2aa" + ] + ], + [ + "RF", + [ + 65536, + "**************************************************************** ..." + ], + 1, + true, + 0, + true, + "fdf29880" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882dfd83cb8dc30" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "dfd83cb8" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_1_1.html b/autobahn/client/tungstenite_case_12_1_1.html new file mode 100644 index 0000000..6ba163e --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_1.html @@ -0,0 +1,324 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.1.1 : Pass - 527 ms @ 2020-09-07T18:44:08.089Z

+

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=302&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: A/t7Hn0jTvlZUgKlBjTHzQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: ivOYk1z0ulKPNLfcTo4F5KJqHHs=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
107557550
1166726
1237444
131031339
1424336
15460
16232
18118
19357
20120
21121
22122
24248
2571257
Total100210938
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
67554530
766462
837296
9103927
1024240
11444
12224
14114
15345
16116
17117
18118
20240
2521252
Total10026929
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333032266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882987f23cb9b97
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3938376632336362
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_1_1.json b/autobahn/client/tungstenite_case_12_1_1.json new file mode 100644 index 0000000..7a3c00e --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_1.json @@ -0,0 +1,171 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 302, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 527, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=302&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: A/t7Hn0jTvlZUgKlBjTHzQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: ivOYk1z0ulKPNLfcTo4F5KJqHHs=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.1.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 755, + "11": 66, + "12": 37, + "13": 103, + "14": 24, + "15": 4, + "16": 2, + "18": 1, + "19": 3, + "20": 1, + "21": 1, + "22": 1, + "24": 2, + "257": 1 + }, + "started": "2020-09-07T18:44:08.089Z", + "trafficStats": { + "incomingCompressionRatio": 0.2920625, + "incomingOctetsAppLevel": 16000, + "incomingOctetsWebSocketLevel": 4673, + "incomingOctetsWireLevel": 10673, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 1.2839717526214423, + "outgoingCompressionRatio": 0.2920625, + "outgoingOctetsAppLevel": 16000, + "outgoingOctetsWebSocketLevel": 4673, + "outgoingOctetsWireLevel": 6673, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.4279905842071474, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 755, + "7": 66, + "8": 37, + "9": 103, + "10": 24, + "11": 4, + "12": 2, + "14": 1, + "15": 3, + "16": 1, + "17": 1, + "18": 1, + "20": 2, + "252": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333032266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882987f23cb9b97" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "987f23cb" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_1_10.html b/autobahn/client/tungstenite_case_12_1_10.html new file mode 100644 index 0000000..32363f5 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_10.html @@ -0,0 +1,597 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.1.10 : Pass - 6972 ms @ 2020-09-07T18:44:19.530Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=311&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: sd5rocn7bJ3q6QMvZsqqPg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 8h6jM78abKU2lg35/qKAayCLpMU=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
457229144
457529150
457614576
457729154
4578313734
4580313740
4581313743
45821464148
4583836664
4584732088
4585836680
45861150446
4587522935
45881045880
4589627534
45901150490
4591732137
4592836736
459314593
4594418376
4595418380
45961045960
4597418388
459829196
4599836792
460029200
4601732207
4602627612
4603627618
4604732228
4605627630
4606732242
460714607
460829216
4609732263
46101046100
46111150721
46121046120
46131359969
46141150754
4615627690
46161046160
4617523085
461829236
4619418476
4620418480
462129242
4622418488
4623313869
462429248
462514625
463114631
463314633
463414634
463714637
463814638
463929278
464029280
464114641
4643313929
464514645
464814648
464929298
465029300
4651418604
4652418608
465314653
4654418616
465514655
465629312
465714657
465929318
466014660
466129322
4663313989
466429328
4665313995
4666313998
4667523335
4668418672
4669523345
4670732690
4671942039
4672418688
4673418692
4674837392
46751046750
4676314028
46771046770
4678837424
4679942111
46801151480
4681837448
46821151502
46831465562
46841256208
46851360905
46861151546
46871989053
4688732816
46891570335
46901675040
46911779747
46921675072
469323107939
46941570410
46951361035
46961989224
46971465758
46981989262
46991151689
47001465800
47011884618
47021884636
47031047030
47041256448
47051256460
47061151766
470729414
470814708
4709732963
471029420
471114711
4712628272
471329426
471414714
4715418860
471629432
4717628302
4718523590
4719523595
47201256640
4721837768
4722523610
4723314169
4724628344
472514725
4726628356
47271047270
47281885104
47291570935
47302199330
47311047310
4732942588
4733314199
4734523670
473529470
473614736
473714737
474914749
477014770
4771419084
477214772
477314773
477629552
Total10024668715
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
5575211150
557615576
557715577
557815578
5579211158
5580527900
5581739067
5582527910
5583422332
558415584
5585633510
5586844688
5587633522
5588422352
55891161479
5590844720
5591739137
5592633552
5593633558
5594422376
5595422380
5596527980
5597527985
5598739186
55991795183
56001689600
56011478414
56021372826
5603633618
5604633624
56051056050
56061689696
56071372891
5608950472
5609633654
5610633660
5611633666
5612211224
5613422452
5614528070
5615422460
5616633696
5617316851
5619211238
5620211240
5622211244
562415624
562515625
5627316881
5629316887
5630211260
563215632
5634211268
563515635
5637211274
5638316914
563915639
5640211280
5641211282
564215642
5643211286
564415644
5645316935
564615646
5647316941
5648633888
5649211298
5650211300
5651211302
565715657
566415664
5665211330
566715667
566815668
567015670
5671211342
5673317019
567415674
567515675
5676211352
5677317031
5678951102
5679528395
5680317040
56811056810
56821056820
56831585245
568420113680
56851479590
56861690976
56871479618
568821119448
568926147914
56901796730
56911162601
569225142300
569321119553
569424136656
56951691120
569625142400
569724136728
569824136752
56991268388
57001796900
570119108319
57021374126
5703951327
570425142600
570525142625
57061691296
57071268484
57081162788
5709845672
57101057100
57111374243
5712422848
5713634278
5714317142
571515715
5716211432
5717211434
5718528590
5719317157
5720317160
5721528605
5722422888
57231268676
57241057240
5725740075
57261162986
5727951543
5728211456
5729317187
5731211462
5732317196
573315733
574615746
574715747
574815748
5750317250
5751211502
575315753
576115761
5762211524
Total10025668354
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333131266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88829136007d92de
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3931333630303764
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_1_10.json b/autobahn/client/tungstenite_case_12_1_10.json new file mode 100644 index 0000000..bf00b4f --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_10.json @@ -0,0 +1,444 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 311, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 6972, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=311&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: sd5rocn7bJ3q6QMvZsqqPg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 8h6jM78abKU2lg35/qKAayCLpMU=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.1.10", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "4572": 2, + "4575": 2, + "4576": 1, + "4577": 2, + "4578": 3, + "4580": 3, + "4581": 3, + "4582": 14, + "4583": 8, + "4584": 7, + "4585": 8, + "4586": 11, + "4587": 5, + "4588": 10, + "4589": 6, + "4590": 11, + "4591": 7, + "4592": 8, + "4593": 1, + "4594": 4, + "4595": 4, + "4596": 10, + "4597": 4, + "4598": 2, + "4599": 8, + "4600": 2, + "4601": 7, + "4602": 6, + "4603": 6, + "4604": 7, + "4605": 6, + "4606": 7, + "4607": 1, + "4608": 2, + "4609": 7, + "4610": 10, + "4611": 11, + "4612": 10, + "4613": 13, + "4614": 11, + "4615": 6, + "4616": 10, + "4617": 5, + "4618": 2, + "4619": 4, + "4620": 4, + "4621": 2, + "4622": 4, + "4623": 3, + "4624": 2, + "4625": 1, + "4631": 1, + "4633": 1, + "4634": 1, + "4637": 1, + "4638": 1, + "4639": 2, + "4640": 2, + "4641": 1, + "4643": 3, + "4645": 1, + "4648": 1, + "4649": 2, + "4650": 2, + "4651": 4, + "4652": 4, + "4653": 1, + "4654": 4, + "4655": 1, + "4656": 2, + "4657": 1, + "4659": 2, + "4660": 1, + "4661": 2, + "4663": 3, + "4664": 2, + "4665": 3, + "4666": 3, + "4667": 5, + "4668": 4, + "4669": 5, + "4670": 7, + "4671": 9, + "4672": 4, + "4673": 4, + "4674": 8, + "4675": 10, + "4676": 3, + "4677": 10, + "4678": 8, + "4679": 9, + "4680": 11, + "4681": 8, + "4682": 11, + "4683": 14, + "4684": 12, + "4685": 13, + "4686": 11, + "4687": 19, + "4688": 7, + "4689": 15, + "4690": 16, + "4691": 17, + "4692": 16, + "4693": 23, + "4694": 15, + "4695": 13, + "4696": 19, + "4697": 14, + "4698": 19, + "4699": 11, + "4700": 14, + "4701": 18, + "4702": 18, + "4703": 10, + "4704": 12, + "4705": 12, + "4706": 11, + "4707": 2, + "4708": 1, + "4709": 7, + "4710": 2, + "4711": 1, + "4712": 6, + "4713": 2, + "4714": 1, + "4715": 4, + "4716": 2, + "4717": 6, + "4718": 5, + "4719": 5, + "4720": 12, + "4721": 8, + "4722": 5, + "4723": 3, + "4724": 6, + "4725": 1, + "4726": 6, + "4727": 10, + "4728": 18, + "4729": 15, + "4730": 21, + "4731": 10, + "4732": 9, + "4733": 3, + "4734": 5, + "4735": 2, + "4736": 1, + "4737": 1, + "4749": 1, + "4770": 1, + "4771": 4, + "4772": 1, + "4773": 1, + "4776": 2 + }, + "started": "2020-09-07T18:44:19.530Z", + "trafficStats": { + "incomingCompressionRatio": 0.03555641174316406, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 4660450, + "incomingOctetsWireLevel": 4668450, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0017165724339924255, + "outgoingCompressionRatio": 0.04321363830566406, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 5664098, + "outgoingOctetsWireLevel": 5668098, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0007062024703668616, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "5575": 2, + "5576": 1, + "5577": 1, + "5578": 1, + "5579": 2, + "5580": 5, + "5581": 7, + "5582": 5, + "5583": 4, + "5584": 1, + "5585": 6, + "5586": 8, + "5587": 6, + "5588": 4, + "5589": 11, + "5590": 8, + "5591": 7, + "5592": 6, + "5593": 6, + "5594": 4, + "5595": 4, + "5596": 5, + "5597": 5, + "5598": 7, + "5599": 17, + "5600": 16, + "5601": 14, + "5602": 13, + "5603": 6, + "5604": 6, + "5605": 10, + "5606": 16, + "5607": 13, + "5608": 9, + "5609": 6, + "5610": 6, + "5611": 6, + "5612": 2, + "5613": 4, + "5614": 5, + "5615": 4, + "5616": 6, + "5617": 3, + "5619": 2, + "5620": 2, + "5622": 2, + "5624": 1, + "5625": 1, + "5627": 3, + "5629": 3, + "5630": 2, + "5632": 1, + "5634": 2, + "5635": 1, + "5637": 2, + "5638": 3, + "5639": 1, + "5640": 2, + "5641": 2, + "5642": 1, + "5643": 2, + "5644": 1, + "5645": 3, + "5646": 1, + "5647": 3, + "5648": 6, + "5649": 2, + "5650": 2, + "5651": 2, + "5657": 1, + "5664": 1, + "5665": 2, + "5667": 1, + "5668": 1, + "5670": 1, + "5671": 2, + "5673": 3, + "5674": 1, + "5675": 1, + "5676": 2, + "5677": 3, + "5678": 9, + "5679": 5, + "5680": 3, + "5681": 10, + "5682": 10, + "5683": 15, + "5684": 20, + "5685": 14, + "5686": 16, + "5687": 14, + "5688": 21, + "5689": 26, + "5690": 17, + "5691": 11, + "5692": 25, + "5693": 21, + "5694": 24, + "5695": 16, + "5696": 25, + "5697": 24, + "5698": 24, + "5699": 12, + "5700": 17, + "5701": 19, + "5702": 13, + "5703": 9, + "5704": 25, + "5705": 25, + "5706": 16, + "5707": 12, + "5708": 11, + "5709": 8, + "5710": 10, + "5711": 13, + "5712": 4, + "5713": 6, + "5714": 3, + "5715": 1, + "5716": 2, + "5717": 2, + "5718": 5, + "5719": 3, + "5720": 3, + "5721": 5, + "5722": 4, + "5723": 12, + "5724": 10, + "5725": 7, + "5726": 11, + "5727": 9, + "5728": 2, + "5729": 3, + "5731": 2, + "5732": 3, + "5733": 1, + "5746": 1, + "5747": 1, + "5748": 1, + "5750": 3, + "5751": 2, + "5753": 1, + "5761": 1, + "5762": 2 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333131266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88829136007d92de" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "9136007d" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_1_11.html b/autobahn/client/tungstenite_case_12_1_11.html new file mode 100644 index 0000000..f1687e2 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_11.html @@ -0,0 +1,647 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.1.11 : Pass - 1069 ms @ 2020-09-07T18:44:26.503Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=312&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: sCoEieliRLf8bh0p9wNc6g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: rb4PQ8vdplfksAyAG4CBQcN/Q7A=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2481248
2494996
2503750
2511251
25241008
25371771
2543762
25561530
25661536
25751285
258102580
259133367
26071820
26182088
26241048
26382104
26471848
26551325
26651330
26751335
268112948
26961614
27051350
27192439
272154080
273102730
274133562
275143850
276123312
277133601
278123336
279102790
280174760
281143934
28292538
283123396
28482272
28592565
28672002
28792583
288102880
289102890
29082320
29141164
292164672
2933879
29461764
29592655
29641184
29782376
29892682
299113289
30082400
30151505
3022604
30351515
304123648
30592745
306123672
307113377
30861848
30982472
31072170
31151555
31292808
313103130
314103140
31561890
316154740
31761902
31851590
319103190
320103200
321123852
3223966
32351615
32461944
3253975
32661956
32782616
32861968
32941316
330113630
33182648
332134316
3333999
33451670
33551675
33682688
33762022
3382676
3392678
34051700
34141364
34241368
34351715
34451720
34541380
34631038
3471347
35041400
35162106
3522704
3541354
35831074
35951795
36051800
36131083
3622724
36351815
36451820
36541460
36662196
3672734
36862208
36931107
37062220
37172597
37241488
37351865
3741374
3752750
3772754
3781378
3841384
3872774
3881388
3891389
39072730
39162346
3922784
39362358
39431182
3952790
39651980
39783176
39872786
39941596
400104000
40183208
40231206
40372821
40493636
40562430
40631218
40741628
40862448
40952045
41052050
41162466
41231236
41341652
41431242
41562490
4171417
4181418
41941676
4201420
4211421
4222844
4242848
42552125
42631278
4271427
4282856
4321432
4691469
Total1002320226
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
435215
446264
45290
465230
476282
4811528
4910490
503150
51151
525260
53153
543162
55155
565280
577399
584232
596354
6012720
614244
6212744
6311693
6410640
6513845
6610660
67181206
68161088
69151035
7010700
71211491
72211512
73191387
7413962
75161200
767532
777539
7812936
7911869
8010800
815405
827574
834332
845420
855425
863258
87187
885440
895445
906540
919819
929828
939837
948752
9510950
968768
97141358
989882
9910990
100121200
1019909
1028816
103121236
1048832
105101050
1064424
1076642
1086648
1092218
1102220
111111221
1127784
1132226
114111254
1157805
1168928
1173351
1187826
1198952
1206720
121101210
1226732
1234492
1242248
1257875
1262252
1273381
1303390
1314524
1323396
1333399
1345670
1352270
1364544
1373411
1384552
1393417
1403420
1416846
1424568
1433429
1441144
1451145
1464584
1473441
1483444
1491149
1504600
15181208
1523456
1532306
15471078
1556930
1562312
1571157
1581158
1594636
160121920
1615805
1623486
1633489
1642328
1652330
16671162
1674668
1683504
1693507
1705850
1712342
1733519
1743522
1753525
1761176
1771177
1783534
1801180
1811181
1852370
1861186
1873561
1891189
1911191
1923576
1931193
1943582
1953585
1961196
19791773
19881584
1992398
20071400
201102010
20291818
2032406
20471428
205132665
20661236
20781656
20851040
20981672
21091890
21161266
21281696
2132426
2144856
2151215
2162432
2172434
2181218
2191219
2202440
2211221
2221222
2233669
2241224
2261226
2281228
2312462
2321232
2333699
2341234
2361236
2371237
2521252
2601000260000
Total2002376202
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
01000
11000
81
Total2001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333132266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88827a01c3ef79e9
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3761303163336566
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_1_11.json b/autobahn/client/tungstenite_case_12_1_11.json new file mode 100644 index 0000000..a92da99 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_11.json @@ -0,0 +1,494 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 312, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 1069, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=312&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: sCoEieliRLf8bh0p9wNc6g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: rb4PQ8vdplfksAyAG4CBQcN/Q7A=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.1.11", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "248": 1, + "249": 4, + "250": 3, + "251": 1, + "252": 4, + "253": 7, + "254": 3, + "255": 6, + "256": 6, + "257": 5, + "258": 10, + "259": 13, + "260": 7, + "261": 8, + "262": 4, + "263": 8, + "264": 7, + "265": 5, + "266": 5, + "267": 5, + "268": 11, + "269": 6, + "270": 5, + "271": 9, + "272": 15, + "273": 10, + "274": 13, + "275": 14, + "276": 12, + "277": 13, + "278": 12, + "279": 10, + "280": 17, + "281": 14, + "282": 9, + "283": 12, + "284": 8, + "285": 9, + "286": 7, + "287": 9, + "288": 10, + "289": 10, + "290": 8, + "291": 4, + "292": 16, + "293": 3, + "294": 6, + "295": 9, + "296": 4, + "297": 8, + "298": 9, + "299": 11, + "300": 8, + "301": 5, + "302": 2, + "303": 5, + "304": 12, + "305": 9, + "306": 12, + "307": 11, + "308": 6, + "309": 8, + "310": 7, + "311": 5, + "312": 9, + "313": 10, + "314": 10, + "315": 6, + "316": 15, + "317": 6, + "318": 5, + "319": 10, + "320": 10, + "321": 12, + "322": 3, + "323": 5, + "324": 6, + "325": 3, + "326": 6, + "327": 8, + "328": 6, + "329": 4, + "330": 11, + "331": 8, + "332": 13, + "333": 3, + "334": 5, + "335": 5, + "336": 8, + "337": 6, + "338": 2, + "339": 2, + "340": 5, + "341": 4, + "342": 4, + "343": 5, + "344": 5, + "345": 4, + "346": 3, + "347": 1, + "350": 4, + "351": 6, + "352": 2, + "354": 1, + "358": 3, + "359": 5, + "360": 5, + "361": 3, + "362": 2, + "363": 5, + "364": 5, + "365": 4, + "366": 6, + "367": 2, + "368": 6, + "369": 3, + "370": 6, + "371": 7, + "372": 4, + "373": 5, + "374": 1, + "375": 2, + "377": 2, + "378": 1, + "384": 1, + "387": 2, + "388": 1, + "389": 1, + "390": 7, + "391": 6, + "392": 2, + "393": 6, + "394": 3, + "395": 2, + "396": 5, + "397": 8, + "398": 7, + "399": 4, + "400": 10, + "401": 8, + "402": 3, + "403": 7, + "404": 9, + "405": 6, + "406": 3, + "407": 4, + "408": 6, + "409": 5, + "410": 5, + "411": 6, + "412": 3, + "413": 4, + "414": 3, + "415": 6, + "417": 1, + "418": 1, + "419": 4, + "420": 1, + "421": 1, + "422": 2, + "424": 2, + "425": 5, + "426": 3, + "427": 1, + "428": 2, + "432": 1, + "469": 1 + }, + "started": "2020-09-07T18:44:26.503Z", + "trafficStats": { + "incomingCompressionRatio": 0.0380811767578125, + "incomingOctetsAppLevel": 8192000, + "incomingOctetsWebSocketLevel": 311961, + "incomingOctetsWireLevel": 319961, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.025644231169921882, + "outgoingCompressionRatio": 0.045077392578125, + "outgoingOctetsAppLevel": 8192000, + "outgoingOctetsWebSocketLevel": 369274, + "outgoingOctetsWireLevel": 375946, + "outgoingWebSocketFrames": 2000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.018067884551850388, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 1000, + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "43": 5, + "44": 6, + "45": 2, + "46": 5, + "47": 6, + "48": 11, + "49": 10, + "50": 3, + "51": 1, + "52": 5, + "53": 1, + "54": 3, + "55": 1, + "56": 5, + "57": 7, + "58": 4, + "59": 6, + "60": 12, + "61": 4, + "62": 12, + "63": 11, + "64": 10, + "65": 13, + "66": 10, + "67": 18, + "68": 16, + "69": 15, + "70": 10, + "71": 21, + "72": 21, + "73": 19, + "74": 13, + "75": 16, + "76": 7, + "77": 7, + "78": 12, + "79": 11, + "80": 10, + "81": 5, + "82": 7, + "83": 4, + "84": 5, + "85": 5, + "86": 3, + "87": 1, + "88": 5, + "89": 5, + "90": 6, + "91": 9, + "92": 9, + "93": 9, + "94": 8, + "95": 10, + "96": 8, + "97": 14, + "98": 9, + "99": 10, + "100": 12, + "101": 9, + "102": 8, + "103": 12, + "104": 8, + "105": 10, + "106": 4, + "107": 6, + "108": 6, + "109": 2, + "110": 2, + "111": 11, + "112": 7, + "113": 2, + "114": 11, + "115": 7, + "116": 8, + "117": 3, + "118": 7, + "119": 8, + "120": 6, + "121": 10, + "122": 6, + "123": 4, + "124": 2, + "125": 7, + "126": 2, + "127": 3, + "130": 3, + "131": 4, + "132": 3, + "133": 3, + "134": 5, + "135": 2, + "136": 4, + "137": 3, + "138": 4, + "139": 3, + "140": 3, + "141": 6, + "142": 4, + "143": 3, + "144": 1, + "145": 1, + "146": 4, + "147": 3, + "148": 3, + "149": 1, + "150": 4, + "151": 8, + "152": 3, + "153": 2, + "154": 7, + "155": 6, + "156": 2, + "157": 1, + "158": 1, + "159": 4, + "160": 12, + "161": 5, + "162": 3, + "163": 3, + "164": 2, + "165": 2, + "166": 7, + "167": 4, + "168": 3, + "169": 3, + "170": 5, + "171": 2, + "173": 3, + "174": 3, + "175": 3, + "176": 1, + "177": 1, + "178": 3, + "180": 1, + "181": 1, + "185": 2, + "186": 1, + "187": 3, + "189": 1, + "191": 1, + "192": 3, + "193": 1, + "194": 3, + "195": 3, + "196": 1, + "197": 9, + "198": 8, + "199": 2, + "200": 7, + "201": 10, + "202": 9, + "203": 2, + "204": 7, + "205": 13, + "206": 6, + "207": 8, + "208": 5, + "209": 8, + "210": 9, + "211": 6, + "212": 8, + "213": 2, + "214": 4, + "215": 1, + "216": 2, + "217": 2, + "218": 1, + "219": 1, + "220": 2, + "221": 1, + "222": 1, + "223": 3, + "224": 1, + "226": 1, + "228": 1, + "231": 2, + "232": 1, + "233": 3, + "234": 1, + "236": 1, + "237": 1, + "252": 1, + "260": 1000 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333132266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88827a01c3ef79e9" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "7a01c3ef" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_1_12.html b/autobahn/client/tungstenite_case_12_1_12.html new file mode 100644 index 0000000..207dce7 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_12.html @@ -0,0 +1,804 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.1.12 : Pass - 1484 ms @ 2020-09-07T18:44:27.573Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=313&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: iwrbq9oCOArqJdZMHQisqg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: hQ54ZvU0VL7DFJ8NmqcDZF1o4EA=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
4922984
4932986
4942988
4952990
49652480
49741988
49852490
49931497
50031500
501105010
502126024
50352515
50494536
50584040
50684048
50731521
50863048
509105090
51084080
51173577
51273584
51342052
5141514
51531545
51621032
51742068
51842072
51931557
52021040
52121042
52252610
52342092
52463144
525115775
52694734
527105270
528105280
529115819
53094770
531126372
532115852
53373731
53494806
53584280
536126432
53752685
53852690
53973773
54052700
5411541
54231626
54331629
5441544
54521090
54663276
54721094
54821096
54963294
55142204
55221104
5531553
55421108
55542220
55663336
55752785
55842232
55984472
560126720
561105610
562158430
563137319
56452820
56595085
56663396
56763402
56863408
5701570
57131713
57242288
57321146
57421148
57531725
5761576
57763462
57852890
57942316
58042320
58142324
58221164
58342332
5841584
5851585
58631758
58831764
58921178
59021180
59142364
59221184
59321186
59421188
59521190
5961596
59721194
59842392
59942396
60042400
60184808
60231806
60342412
60442416
60542420
60642424
60763642
60831824
61021220
61131833
61231836
61342452
61474298
61542460
61631848
61731851
6181618
61921238
62031860
6211621
62221244
62321246
62421248
62521250
6261626
62921258
63021260
63131893
63231896
63331899
6341634
63531905
6371637
63831914
63921278
64031920
64142564
64321286
64431932
6451645
64653230
6471647
64842592
64921298
6501650
6521652
65321306
65421308
65521310
65721314
6581658
6591659
6601660
66121322
66321326
66642664
66742668
6681668
66942676
67032010
67132013
67221344
67332019
6741674
6751675
6761676
67721354
67821356
67921358
68064080
68153405
68253410
68332049
68453420
68553425
68753435
68821376
68932067
69021380
6911691
69221384
69332079
69421388
69532085
69632088
69732091
69842792
69921398
70021400
70121402
70274914
70321406
70432112
70574935
70642824
70732121
7081708
70932127
71053550
71121422
71232136
71385704
71442856
71532145
71621432
71753585
71853590
71942876
72042880
72132163
72232166
72385784
72442896
72553625
72675082
72732181
72875096
72942916
73042920
73142924
732118052
73342932
73464404
73532205
73642944
73742948
73832214
74053700
74132223
74232226
74321486
7441744
74521490
7461746
74742988
74842992
7491749
75053750
7511751
7521752
75321506
75421508
75532265
75632268
7571757
7601760
76221524
7781778
77932337
7811781
7831783
7851785
7861786
7871787
7881788
7891789
7901790
7921792
7941794
Total1002609789
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
212
326
428
5315
616
717
818
10110
13113
16232
17234
18354
19119
20480
21242
22244
24124
254100
275135
28256
30130
31262
32264
33133
34134
353105
367252
376222
38276
396234
404160
415205
423126
43286
44288
45290
464184
473141
484192
493147
502100
513153
535265
542108
556330
575285
584232
594236
604240
614244
622124
63163
648512
652130
662132
674268
684272
692138
705350
712142
727504
733219
746444
752150
76176
772154
782156
79179
805400
8110810
825410
834332
845420
855425
86186
877609
886528
894356
906540
915455
924368
938744
944376
955475
968768
979873
98141372
997693
1008800
101111111
1028816
1038824
1046624
105121260
1065530
1073321
1085540
1098872
1109990
111101110
112131456
11391017
114121368
115151725
116111276
117161872
11891062
1196714
12091080
1218968
1227854
1234492
1246744
1254500
1267882
1275635
1304520
1316786
1326792
1337931
1344536
1352270
1362272
1376822
1384552
1396834
1403420
1414564
1427994
1435715
14481152
1456870
14671022
1472294
14871036
14991341
150111650
151101510
152111672
15381224
15471078
15581240
15671092
1574628
15881264
1596954
1604640
1615805
1624648
1632326
1642328
1654660
1661166
1674668
1684672
1694676
1702340
1711171
1724688
1734692
1741174
1752350
1764704
1772354
1783534
1793537
1801180
1813543
1823546
1835915
1844736
1853555
1864744
1874748
1883564
1892378
1903570
1912382
19261152
1933579
19481552
1952390
1961196
1971197
1983594
1993597
2001200
2011201
2022404
2033609
2042408
2052410
2064824
2072414
2083624
2092418
21051050
2112422
2122424
21351065
2142428
2152430
2161216
2171217
2183654
2203660
2211221
2224888
2232446
22451120
2252450
2273681
2283684
22951145
2313693
2323696
2332466
2342468
2351235
2361236
23771659
2381238
2391239
2401240
2411241
2421242
2434972
2444976
2453735
24651230
2473741
2482496
2502500
2513753
25251260
2531253
2541254
2553765
2571257
2581258
2593777
2602331606060
Total3333733754
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
02331
11000
81
Total3332
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333133266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882457c1c014694
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3435376331633031
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_1_12.json b/autobahn/client/tungstenite_case_12_1_12.json new file mode 100644 index 0000000..d127940 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_12.json @@ -0,0 +1,651 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 313, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 1484, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=313&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: iwrbq9oCOArqJdZMHQisqg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: hQ54ZvU0VL7DFJ8NmqcDZF1o4EA=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.1.12", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "492": 2, + "493": 2, + "494": 2, + "495": 2, + "496": 5, + "497": 4, + "498": 5, + "499": 3, + "500": 3, + "501": 10, + "502": 12, + "503": 5, + "504": 9, + "505": 8, + "506": 8, + "507": 3, + "508": 6, + "509": 10, + "510": 8, + "511": 7, + "512": 7, + "513": 4, + "514": 1, + "515": 3, + "516": 2, + "517": 4, + "518": 4, + "519": 3, + "520": 2, + "521": 2, + "522": 5, + "523": 4, + "524": 6, + "525": 11, + "526": 9, + "527": 10, + "528": 10, + "529": 11, + "530": 9, + "531": 12, + "532": 11, + "533": 7, + "534": 9, + "535": 8, + "536": 12, + "537": 5, + "538": 5, + "539": 7, + "540": 5, + "541": 1, + "542": 3, + "543": 3, + "544": 1, + "545": 2, + "546": 6, + "547": 2, + "548": 2, + "549": 6, + "551": 4, + "552": 2, + "553": 1, + "554": 2, + "555": 4, + "556": 6, + "557": 5, + "558": 4, + "559": 8, + "560": 12, + "561": 10, + "562": 15, + "563": 13, + "564": 5, + "565": 9, + "566": 6, + "567": 6, + "568": 6, + "570": 1, + "571": 3, + "572": 4, + "573": 2, + "574": 2, + "575": 3, + "576": 1, + "577": 6, + "578": 5, + "579": 4, + "580": 4, + "581": 4, + "582": 2, + "583": 4, + "584": 1, + "585": 1, + "586": 3, + "588": 3, + "589": 2, + "590": 2, + "591": 4, + "592": 2, + "593": 2, + "594": 2, + "595": 2, + "596": 1, + "597": 2, + "598": 4, + "599": 4, + "600": 4, + "601": 8, + "602": 3, + "603": 4, + "604": 4, + "605": 4, + "606": 4, + "607": 6, + "608": 3, + "610": 2, + "611": 3, + "612": 3, + "613": 4, + "614": 7, + "615": 4, + "616": 3, + "617": 3, + "618": 1, + "619": 2, + "620": 3, + "621": 1, + "622": 2, + "623": 2, + "624": 2, + "625": 2, + "626": 1, + "629": 2, + "630": 2, + "631": 3, + "632": 3, + "633": 3, + "634": 1, + "635": 3, + "637": 1, + "638": 3, + "639": 2, + "640": 3, + "641": 4, + "643": 2, + "644": 3, + "645": 1, + "646": 5, + "647": 1, + "648": 4, + "649": 2, + "650": 1, + "652": 1, + "653": 2, + "654": 2, + "655": 2, + "657": 2, + "658": 1, + "659": 1, + "660": 1, + "661": 2, + "663": 2, + "666": 4, + "667": 4, + "668": 1, + "669": 4, + "670": 3, + "671": 3, + "672": 2, + "673": 3, + "674": 1, + "675": 1, + "676": 1, + "677": 2, + "678": 2, + "679": 2, + "680": 6, + "681": 5, + "682": 5, + "683": 3, + "684": 5, + "685": 5, + "687": 5, + "688": 2, + "689": 3, + "690": 2, + "691": 1, + "692": 2, + "693": 3, + "694": 2, + "695": 3, + "696": 3, + "697": 3, + "698": 4, + "699": 2, + "700": 2, + "701": 2, + "702": 7, + "703": 2, + "704": 3, + "705": 7, + "706": 4, + "707": 3, + "708": 1, + "709": 3, + "710": 5, + "711": 2, + "712": 3, + "713": 8, + "714": 4, + "715": 3, + "716": 2, + "717": 5, + "718": 5, + "719": 4, + "720": 4, + "721": 3, + "722": 3, + "723": 8, + "724": 4, + "725": 5, + "726": 7, + "727": 3, + "728": 7, + "729": 4, + "730": 4, + "731": 4, + "732": 11, + "733": 4, + "734": 6, + "735": 3, + "736": 4, + "737": 4, + "738": 3, + "740": 5, + "741": 3, + "742": 3, + "743": 2, + "744": 1, + "745": 2, + "746": 1, + "747": 4, + "748": 4, + "749": 1, + "750": 5, + "751": 1, + "752": 1, + "753": 2, + "754": 2, + "755": 3, + "756": 3, + "757": 1, + "760": 1, + "762": 2, + "778": 1, + "779": 3, + "781": 1, + "783": 1, + "785": 1, + "786": 1, + "787": 1, + "788": 1, + "789": 1, + "790": 1, + "792": 1, + "794": 1 + }, + "started": "2020-09-07T18:44:27.573Z", + "trafficStats": { + "incomingCompressionRatio": 0.036714111328125, + "incomingOctetsAppLevel": 16384000, + "incomingOctetsWebSocketLevel": 601524, + "incomingOctetsWireLevel": 609524, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.013299552470059383, + "outgoingCompressionRatio": 0.0440235595703125, + "outgoingOctetsAppLevel": 16384000, + "outgoingOctetsWebSocketLevel": 721282, + "outgoingOctetsWireLevel": 733498, + "outgoingWebSocketFrames": 3331, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.016936510269215093, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 2331, + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "3": 2, + "4": 2, + "5": 3, + "6": 1, + "7": 1, + "8": 1, + "10": 1, + "13": 1, + "16": 2, + "17": 2, + "18": 3, + "19": 1, + "20": 4, + "21": 2, + "22": 2, + "24": 1, + "25": 4, + "27": 5, + "28": 2, + "30": 1, + "31": 2, + "32": 2, + "33": 1, + "34": 1, + "35": 3, + "36": 7, + "37": 6, + "38": 2, + "39": 6, + "40": 4, + "41": 5, + "42": 3, + "43": 2, + "44": 2, + "45": 2, + "46": 4, + "47": 3, + "48": 4, + "49": 3, + "50": 2, + "51": 3, + "53": 5, + "54": 2, + "55": 6, + "57": 5, + "58": 4, + "59": 4, + "60": 4, + "61": 4, + "62": 2, + "63": 1, + "64": 8, + "65": 2, + "66": 2, + "67": 4, + "68": 4, + "69": 2, + "70": 5, + "71": 2, + "72": 7, + "73": 3, + "74": 6, + "75": 2, + "76": 1, + "77": 2, + "78": 2, + "79": 1, + "80": 5, + "81": 10, + "82": 5, + "83": 4, + "84": 5, + "85": 5, + "86": 1, + "87": 7, + "88": 6, + "89": 4, + "90": 6, + "91": 5, + "92": 4, + "93": 8, + "94": 4, + "95": 5, + "96": 8, + "97": 9, + "98": 14, + "99": 7, + "100": 8, + "101": 11, + "102": 8, + "103": 8, + "104": 6, + "105": 12, + "106": 5, + "107": 3, + "108": 5, + "109": 8, + "110": 9, + "111": 10, + "112": 13, + "113": 9, + "114": 12, + "115": 15, + "116": 11, + "117": 16, + "118": 9, + "119": 6, + "120": 9, + "121": 8, + "122": 7, + "123": 4, + "124": 6, + "125": 4, + "126": 7, + "127": 5, + "130": 4, + "131": 6, + "132": 6, + "133": 7, + "134": 4, + "135": 2, + "136": 2, + "137": 6, + "138": 4, + "139": 6, + "140": 3, + "141": 4, + "142": 7, + "143": 5, + "144": 8, + "145": 6, + "146": 7, + "147": 2, + "148": 7, + "149": 9, + "150": 11, + "151": 10, + "152": 11, + "153": 8, + "154": 7, + "155": 8, + "156": 7, + "157": 4, + "158": 8, + "159": 6, + "160": 4, + "161": 5, + "162": 4, + "163": 2, + "164": 2, + "165": 4, + "166": 1, + "167": 4, + "168": 4, + "169": 4, + "170": 2, + "171": 1, + "172": 4, + "173": 4, + "174": 1, + "175": 2, + "176": 4, + "177": 2, + "178": 3, + "179": 3, + "180": 1, + "181": 3, + "182": 3, + "183": 5, + "184": 4, + "185": 3, + "186": 4, + "187": 4, + "188": 3, + "189": 2, + "190": 3, + "191": 2, + "192": 6, + "193": 3, + "194": 8, + "195": 2, + "196": 1, + "197": 1, + "198": 3, + "199": 3, + "200": 1, + "201": 1, + "202": 2, + "203": 3, + "204": 2, + "205": 2, + "206": 4, + "207": 2, + "208": 3, + "209": 2, + "210": 5, + "211": 2, + "212": 2, + "213": 5, + "214": 2, + "215": 2, + "216": 1, + "217": 1, + "218": 3, + "220": 3, + "221": 1, + "222": 4, + "223": 2, + "224": 5, + "225": 2, + "227": 3, + "228": 3, + "229": 5, + "231": 3, + "232": 3, + "233": 2, + "234": 2, + "235": 1, + "236": 1, + "237": 7, + "238": 1, + "239": 1, + "240": 1, + "241": 1, + "242": 1, + "243": 4, + "244": 4, + "245": 3, + "246": 5, + "247": 3, + "248": 2, + "250": 2, + "251": 3, + "252": 5, + "253": 1, + "254": 1, + "255": 3, + "257": 1, + "258": 1, + "259": 3, + "260": 2331 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333133266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882457c1c014694" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "457c1c01" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_1_13.html b/autobahn/client/tungstenite_case_12_1_13.html new file mode 100644 index 0000000..b9e0d6e --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_13.html @@ -0,0 +1,883 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.1.13 : Pass - 2282 ms @ 2020-09-07T18:44:29.058Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=314&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: y6B4MPxvYKdVJbycZkfkjw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: On6fluw3EwzqxvhJ7azhzadTzcA=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
9951995
9971997
9981998
9991999
100011000
100122002
100233006
100355015
100411004
100511005
100611006
100822016
101033030
101222024
101611016
101711017
101922038
102022040
102111021
102233066
102311023
102455120
102577175
102655130
102711027
102844112
102922058
103055150
103122062
103266192
103311033
103444136
103522070
103655180
103711037
103822076
103922078
104044160
104311043
104411044
104522090
104622092
104766282
104844192
104922098
105066300
105155255
105266312
105399477
105466324
105577385
105677392
105777399
105855290
105966354
106055300
106144244
106233186
106344252
106466384
106566390
106622132
106711067
106855340
106933207
107055350
107133213
107266432
107388584
107433222
107566450
107677532
107755385
107877546
107977553
108033240
108166486
108255410
108322166
108444336
108511085
108611086
108733261
108822176
108966534
109044360
109255460
109322186
109422188
109511095
109744388
109866588
109911099
110044400
110222204
110322206
110422208
110511105
110622212
110722214
110811108
110922218
111033330
111211112
111333339
111433342
111622232
111711117
112022240
112111121
112211122
112422248
112511125
112611126
112711127
112922258
113022260
113111131
113233396
113311133
113411134
113511135
113644544
113722274
113822276
113933417
114222284
114311143
114622292
114722294
114911149
115011150
115122302
115233456
115422308
115511155
115611156
115733471
115822316
116011160
116122322
116244648
116322326
116422328
116511165
116622332
116733501
116933507
117011170
117111171
117233516
117344692
117422348
117511175
117655880
117733531
117822356
117911179
118022360
118155905
118222364
118322366
118433552
118633558
118733561
118822376
118911189
119033570
119222384
119355965
119411194
119522390
119633588
119711197
119811198
119911199
120033600
120222404
120311203
120411204
120533615
120611206
120711207
120811208
120933627
121022420
121111211
121211212
121322426
121444856
121533645
121644864
121733651
121833654
121933657
122011220
122122442
122211222
122433672
122511225
122633678
122822456
122922458
123033690
123111231
123211232
123333699
123511235
123633708
123733711
123833714
123911239
124033720
124122482
124233726
124322486
124422488
124522490
124656230
124722494
124844992
125011250
125178757
125233756
125333759
125422508
125533765
125633768
125722514
125945036
126033780
126133783
126211262
126356315
126433792
126533795
126611266
126745068
126856340
126956345
127045080
127122542
127222544
127333819
127433822
127545100
127656380
127722554
127822556
127956395
128011280
128167686
128278974
128345132
1284810272
128556425
128622572
128767722
128833864
128967734
129045160
129179037
129256460
129379051
129422588
129533885
129611296
129722594
129879086
129956495
130045200
130145204
1302810416
1303911727
130445216
13051418270
13061114366
1307810456
130867848
130979163
131067860
131156555
131233936
131333939
131445256
131556575
131622632
131811318
131911319
132011320
132122642
132245288
132311323
132411324
132511325
132622652
133611336
135611356
136022720
136411364
136511365
136611366
136711367
136822736
136945476
137056850
137134113
137222744
137345492
137434122
137568250
137622752
137722754
137911379
138211382
138411384
138522770
138611386
138822776
139011390
139411394
139511395
139611396
139722794
139834194
140022800
140111401
140211402
140311403
140411404
140511405
140611406
140811408
140979863
141079870
141122822
141222824
141434242
141545660
141622832
141722834
141911419
142011420
Total10021192856
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
21020
31133
41560
5840
61060
7642
8540
91199
10330
11555
12896
1310130
148112
1510150
168128
178136
189162
1911209
2014280
2111231
2215330
238184
248192
256150
268208
278216
287196
298232
306180
315155
326192
335165
345170
355175
36272
375185
38276
395195
40280
41141
425210
434172
443132
456270
46292
47294
483144
494196
504200
513153
524208
532106
544216
552110
572114
583174
593177
60160
612122
622124
634252
642128
656390
662132
67167
696414
706420
712142
737511
744296
75175
762152
773231
783234
793237
805400
812162
82182
83183
842168
856510
863258
875435
887616
893267
903270
914364
924368
942188
95195
963288
97197
983294
995495
1003300
1012202
1023306
1036618
1041104
1054420
1062212
1072214
1086648
1094436
1104440
1111111
1124448
1134452
1143342
1154460
1162232
1172234
1193357
1203360
1213363
1223366
1232246
1242248
1262252
1272254
1301130
1312262
1321132
1336798
1342268
1351135
1363408
1374548
1381138
1391139
1401140
1414564
1422284
1432286
1441144
1452290
1461146
1474588
1492298
1512302
1524608
1541154
1551155
1563468
1572314
1594636
1601160
1612322
1622324
1641164
1664664
1672334
1681168
1692338
1701170
1712342
1722344
1732346
1743522
1752350
1762352
1772354
1791179
1802360
1811181
1821182
1832366
1841184
1853555
1862372
1872374
1882376
1894756
1904760
19161146
1923576
1932386
1942388
1951195
1962392
1973591
1983594
1992398
2002400
2011201
2021202
2033609
2044816
20561230
2063618
2072414
2084832
2093627
2102420
2111211
2124848
2133639
2142428
21551075
21661296
2171217
2183654
2191219
2204880
22161326
2223666
2232446
2244896
2253675
2264904
2273681
2284912
2293687
2304920
2313693
2324928
23361398
23451170
2353705
2362472
23771659
23892142
23951195
24071680
2412482
242102420
2434972
2444976
24581960
24661476
24871736
249133237
25041000
251112761
25271764
253102530
254102540
255102550
256164096
257133341
258184644
259143626
26051161330160
Total61181454489
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
05116
11000
81
Total6117
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333134266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882a4acbe79a744
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6134616362653739
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_1_13.json b/autobahn/client/tungstenite_case_12_1_13.json new file mode 100644 index 0000000..14a0a77 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_13.json @@ -0,0 +1,730 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 314, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 2282, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=314&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: y6B4MPxvYKdVJbycZkfkjw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: On6fluw3EwzqxvhJ7azhzadTzcA=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.1.13", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "995": 1, + "997": 1, + "998": 1, + "999": 1, + "1000": 1, + "1001": 2, + "1002": 3, + "1003": 5, + "1004": 1, + "1005": 1, + "1006": 1, + "1008": 2, + "1010": 3, + "1012": 2, + "1016": 1, + "1017": 1, + "1019": 2, + "1020": 2, + "1021": 1, + "1022": 3, + "1023": 1, + "1024": 5, + "1025": 7, + "1026": 5, + "1027": 1, + "1028": 4, + "1029": 2, + "1030": 5, + "1031": 2, + "1032": 6, + "1033": 1, + "1034": 4, + "1035": 2, + "1036": 5, + "1037": 1, + "1038": 2, + "1039": 2, + "1040": 4, + "1043": 1, + "1044": 1, + "1045": 2, + "1046": 2, + "1047": 6, + "1048": 4, + "1049": 2, + "1050": 6, + "1051": 5, + "1052": 6, + "1053": 9, + "1054": 6, + "1055": 7, + "1056": 7, + "1057": 7, + "1058": 5, + "1059": 6, + "1060": 5, + "1061": 4, + "1062": 3, + "1063": 4, + "1064": 6, + "1065": 6, + "1066": 2, + "1067": 1, + "1068": 5, + "1069": 3, + "1070": 5, + "1071": 3, + "1072": 6, + "1073": 8, + "1074": 3, + "1075": 6, + "1076": 7, + "1077": 5, + "1078": 7, + "1079": 7, + "1080": 3, + "1081": 6, + "1082": 5, + "1083": 2, + "1084": 4, + "1085": 1, + "1086": 1, + "1087": 3, + "1088": 2, + "1089": 6, + "1090": 4, + "1092": 5, + "1093": 2, + "1094": 2, + "1095": 1, + "1097": 4, + "1098": 6, + "1099": 1, + "1100": 4, + "1102": 2, + "1103": 2, + "1104": 2, + "1105": 1, + "1106": 2, + "1107": 2, + "1108": 1, + "1109": 2, + "1110": 3, + "1112": 1, + "1113": 3, + "1114": 3, + "1116": 2, + "1117": 1, + "1120": 2, + "1121": 1, + "1122": 1, + "1124": 2, + "1125": 1, + "1126": 1, + "1127": 1, + "1129": 2, + "1130": 2, + "1131": 1, + "1132": 3, + "1133": 1, + "1134": 1, + "1135": 1, + "1136": 4, + "1137": 2, + "1138": 2, + "1139": 3, + "1142": 2, + "1143": 1, + "1146": 2, + "1147": 2, + "1149": 1, + "1150": 1, + "1151": 2, + "1152": 3, + "1154": 2, + "1155": 1, + "1156": 1, + "1157": 3, + "1158": 2, + "1160": 1, + "1161": 2, + "1162": 4, + "1163": 2, + "1164": 2, + "1165": 1, + "1166": 2, + "1167": 3, + "1169": 3, + "1170": 1, + "1171": 1, + "1172": 3, + "1173": 4, + "1174": 2, + "1175": 1, + "1176": 5, + "1177": 3, + "1178": 2, + "1179": 1, + "1180": 2, + "1181": 5, + "1182": 2, + "1183": 2, + "1184": 3, + "1186": 3, + "1187": 3, + "1188": 2, + "1189": 1, + "1190": 3, + "1192": 2, + "1193": 5, + "1194": 1, + "1195": 2, + "1196": 3, + "1197": 1, + "1198": 1, + "1199": 1, + "1200": 3, + "1202": 2, + "1203": 1, + "1204": 1, + "1205": 3, + "1206": 1, + "1207": 1, + "1208": 1, + "1209": 3, + "1210": 2, + "1211": 1, + "1212": 1, + "1213": 2, + "1214": 4, + "1215": 3, + "1216": 4, + "1217": 3, + "1218": 3, + "1219": 3, + "1220": 1, + "1221": 2, + "1222": 1, + "1224": 3, + "1225": 1, + "1226": 3, + "1228": 2, + "1229": 2, + "1230": 3, + "1231": 1, + "1232": 1, + "1233": 3, + "1235": 1, + "1236": 3, + "1237": 3, + "1238": 3, + "1239": 1, + "1240": 3, + "1241": 2, + "1242": 3, + "1243": 2, + "1244": 2, + "1245": 2, + "1246": 5, + "1247": 2, + "1248": 4, + "1250": 1, + "1251": 7, + "1252": 3, + "1253": 3, + "1254": 2, + "1255": 3, + "1256": 3, + "1257": 2, + "1259": 4, + "1260": 3, + "1261": 3, + "1262": 1, + "1263": 5, + "1264": 3, + "1265": 3, + "1266": 1, + "1267": 4, + "1268": 5, + "1269": 5, + "1270": 4, + "1271": 2, + "1272": 2, + "1273": 3, + "1274": 3, + "1275": 4, + "1276": 5, + "1277": 2, + "1278": 2, + "1279": 5, + "1280": 1, + "1281": 6, + "1282": 7, + "1283": 4, + "1284": 8, + "1285": 5, + "1286": 2, + "1287": 6, + "1288": 3, + "1289": 6, + "1290": 4, + "1291": 7, + "1292": 5, + "1293": 7, + "1294": 2, + "1295": 3, + "1296": 1, + "1297": 2, + "1298": 7, + "1299": 5, + "1300": 4, + "1301": 4, + "1302": 8, + "1303": 9, + "1304": 4, + "1305": 14, + "1306": 11, + "1307": 8, + "1308": 6, + "1309": 7, + "1310": 6, + "1311": 5, + "1312": 3, + "1313": 3, + "1314": 4, + "1315": 5, + "1316": 2, + "1318": 1, + "1319": 1, + "1320": 1, + "1321": 2, + "1322": 4, + "1323": 1, + "1324": 1, + "1325": 1, + "1326": 2, + "1336": 1, + "1356": 1, + "1360": 2, + "1364": 1, + "1365": 1, + "1366": 1, + "1367": 1, + "1368": 2, + "1369": 4, + "1370": 5, + "1371": 3, + "1372": 2, + "1373": 4, + "1374": 3, + "1375": 6, + "1376": 2, + "1377": 2, + "1379": 1, + "1382": 1, + "1384": 1, + "1385": 2, + "1386": 1, + "1388": 2, + "1390": 1, + "1394": 1, + "1395": 1, + "1396": 1, + "1397": 2, + "1398": 3, + "1400": 2, + "1401": 1, + "1402": 1, + "1403": 1, + "1404": 1, + "1405": 1, + "1406": 1, + "1408": 1, + "1409": 7, + "1410": 7, + "1411": 2, + "1412": 2, + "1414": 3, + "1415": 4, + "1416": 2, + "1417": 2, + "1419": 1, + "1420": 1 + }, + "started": "2020-09-07T18:44:29.058Z", + "trafficStats": { + "incomingCompressionRatio": 0.03615084838867187, + "incomingOctetsAppLevel": 32768000, + "incomingOctetsWebSocketLevel": 1184591, + "incomingOctetsWireLevel": 1192591, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0067533857677459985, + "outgoingCompressionRatio": 0.043666534423828125, + "outgoingOctetsAppLevel": 32768000, + "outgoingOctetsWebSocketLevel": 1430865, + "outgoingOctetsWireLevel": 1454233, + "outgoingWebSocketFrames": 6116, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.016331379969459034, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 5116, + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 10, + "3": 11, + "4": 15, + "5": 8, + "6": 10, + "7": 6, + "8": 5, + "9": 11, + "10": 3, + "11": 5, + "12": 8, + "13": 10, + "14": 8, + "15": 10, + "16": 8, + "17": 8, + "18": 9, + "19": 11, + "20": 14, + "21": 11, + "22": 15, + "23": 8, + "24": 8, + "25": 6, + "26": 8, + "27": 8, + "28": 7, + "29": 8, + "30": 6, + "31": 5, + "32": 6, + "33": 5, + "34": 5, + "35": 5, + "36": 2, + "37": 5, + "38": 2, + "39": 5, + "40": 2, + "41": 1, + "42": 5, + "43": 4, + "44": 3, + "45": 6, + "46": 2, + "47": 2, + "48": 3, + "49": 4, + "50": 4, + "51": 3, + "52": 4, + "53": 2, + "54": 4, + "55": 2, + "57": 2, + "58": 3, + "59": 3, + "60": 1, + "61": 2, + "62": 2, + "63": 4, + "64": 2, + "65": 6, + "66": 2, + "67": 1, + "69": 6, + "70": 6, + "71": 2, + "73": 7, + "74": 4, + "75": 1, + "76": 2, + "77": 3, + "78": 3, + "79": 3, + "80": 5, + "81": 2, + "82": 1, + "83": 1, + "84": 2, + "85": 6, + "86": 3, + "87": 5, + "88": 7, + "89": 3, + "90": 3, + "91": 4, + "92": 4, + "94": 2, + "95": 1, + "96": 3, + "97": 1, + "98": 3, + "99": 5, + "100": 3, + "101": 2, + "102": 3, + "103": 6, + "104": 1, + "105": 4, + "106": 2, + "107": 2, + "108": 6, + "109": 4, + "110": 4, + "111": 1, + "112": 4, + "113": 4, + "114": 3, + "115": 4, + "116": 2, + "117": 2, + "119": 3, + "120": 3, + "121": 3, + "122": 3, + "123": 2, + "124": 2, + "126": 2, + "127": 2, + "130": 1, + "131": 2, + "132": 1, + "133": 6, + "134": 2, + "135": 1, + "136": 3, + "137": 4, + "138": 1, + "139": 1, + "140": 1, + "141": 4, + "142": 2, + "143": 2, + "144": 1, + "145": 2, + "146": 1, + "147": 4, + "149": 2, + "151": 2, + "152": 4, + "154": 1, + "155": 1, + "156": 3, + "157": 2, + "159": 4, + "160": 1, + "161": 2, + "162": 2, + "164": 1, + "166": 4, + "167": 2, + "168": 1, + "169": 2, + "170": 1, + "171": 2, + "172": 2, + "173": 2, + "174": 3, + "175": 2, + "176": 2, + "177": 2, + "179": 1, + "180": 2, + "181": 1, + "182": 1, + "183": 2, + "184": 1, + "185": 3, + "186": 2, + "187": 2, + "188": 2, + "189": 4, + "190": 4, + "191": 6, + "192": 3, + "193": 2, + "194": 2, + "195": 1, + "196": 2, + "197": 3, + "198": 3, + "199": 2, + "200": 2, + "201": 1, + "202": 1, + "203": 3, + "204": 4, + "205": 6, + "206": 3, + "207": 2, + "208": 4, + "209": 3, + "210": 2, + "211": 1, + "212": 4, + "213": 3, + "214": 2, + "215": 5, + "216": 6, + "217": 1, + "218": 3, + "219": 1, + "220": 4, + "221": 6, + "222": 3, + "223": 2, + "224": 4, + "225": 3, + "226": 4, + "227": 3, + "228": 4, + "229": 3, + "230": 4, + "231": 3, + "232": 4, + "233": 6, + "234": 5, + "235": 3, + "236": 2, + "237": 7, + "238": 9, + "239": 5, + "240": 7, + "241": 2, + "242": 10, + "243": 4, + "244": 4, + "245": 8, + "246": 6, + "248": 7, + "249": 13, + "250": 4, + "251": 11, + "252": 7, + "253": 10, + "254": 10, + "255": 10, + "256": 16, + "257": 13, + "258": 18, + "259": 14, + "260": 5116 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333134266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882a4acbe79a744" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "a4acbe79" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_1_14.html b/autobahn/client/tungstenite_case_12_1_14.html new file mode 100644 index 0000000..d2e9059 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_14.html @@ -0,0 +1,556 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.1.14 : Pass - 3876 ms @ 2020-09-07T18:44:31.340Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=315&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: sLvKiQPcLjdYA7l3zy5AKA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: lEgSmntbnlFZYa1IdEbP/HZpjf8=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
229112291
229312293
229524590
229636888
229712297
229824596
229912299
230024600
230149204
2302716114
2303511515
2304818432
2305613830
230649224
2307613842
2308716156
23091841562
23101125410
2311920799
23122353176
23131637008
23142557850
23152353245
23162455584
23171432438
23181841724
23191841742
23201432480
23212455704
23222353406
23231432522
23241637184
23251330225
23261227912
23271023270
23281125608
2329511645
2330716310
2331716317
2332511660
2333511665
2334511670
233549340
233624672
233749348
2338818704
2339511695
2340818720
2341716387
2342818736
2343511715
23441125784
23451228140
23461637536
23471228164
23481739916
23491842282
23501842300
2351716457
2352921168
23531330589
235449416
2355511775
235612356
235737071
235824716
236012360
236124722
236224724
236624732
236712367
236812368
236924738
237012370
237112371
237224744
237324746
237537125
237649504
237737131
237824756
237924758
238112381
238312383
238512385
238612386
238824776
239012390
239212392
239324786
239437182
239524790
239612396
239724794
239824796
2399716793
2400716800
2401614406
240224804
2403614418
240437212
2405512025
240612406
240737221
240812408
240924818
241124822
2413512065
241449656
2415614490
241649664
24171536255
2418614508
2419716933
24201229040
24211433894
2422921798
24231536345
24241229088
2425614550
24262150946
24272048540
24282048560
24291229148
24301741310
24312151051
24321331616
2433921897
2434819472
2435614610
2436512180
243724874
243812438
244112441
244224884
244512445
245412454
Total10022360177
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
21734
32163
428112
525125
622132
726182
820160
934306
1020200
1114154
12896
139117
1417238
1516240
1617272
1716272
1810180
199171
205100
21363
22122
23369
24496
25250
28256
29129
31131
32132
33266
35135
36136
37274
393117
414164
42142
444176
453135
46292
48296
49149
50150
51151
52152
54154
60160
61161
642128
65165
66166
67167
682136
69169
702140
74174
77177
79179
813243
822164
832166
845420
858680
865430
877609
884352
898712
902180
913273
923276
935465
9410940
95111045
96161536
9710970
98111078
996594
100191900
101121212
1026612
1039927
104121248
105121260
106121272
1079963
1087756
1099981
1107770
1116666
1124448
1134452
1142228
1153345
1161116
1176702
118111298
1198952
120131560
121101210
12291098
1235615
1242248
1253375
1411141
2412482
2421242
2432486
24451220
2454980
24661476
24751235
24861488
249122988
250174250
251225522
252276804
253287084
254174318
255358925
256194864
257317967
258205160
259235957
260107192786940
Total117212897789
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
010719
11000
81
Total11720
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333135266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88827e06f0327dee
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3765303666303332
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_1_14.json b/autobahn/client/tungstenite_case_12_1_14.json new file mode 100644 index 0000000..d2fdbd8 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_14.json @@ -0,0 +1,403 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 315, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 3876, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=315&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: sLvKiQPcLjdYA7l3zy5AKA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: lEgSmntbnlFZYa1IdEbP/HZpjf8=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.1.14", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "2291": 1, + "2293": 1, + "2295": 2, + "2296": 3, + "2297": 1, + "2298": 2, + "2299": 1, + "2300": 2, + "2301": 4, + "2302": 7, + "2303": 5, + "2304": 8, + "2305": 6, + "2306": 4, + "2307": 6, + "2308": 7, + "2309": 18, + "2310": 11, + "2311": 9, + "2312": 23, + "2313": 16, + "2314": 25, + "2315": 23, + "2316": 24, + "2317": 14, + "2318": 18, + "2319": 18, + "2320": 14, + "2321": 24, + "2322": 23, + "2323": 14, + "2324": 16, + "2325": 13, + "2326": 12, + "2327": 10, + "2328": 11, + "2329": 5, + "2330": 7, + "2331": 7, + "2332": 5, + "2333": 5, + "2334": 5, + "2335": 4, + "2336": 2, + "2337": 4, + "2338": 8, + "2339": 5, + "2340": 8, + "2341": 7, + "2342": 8, + "2343": 5, + "2344": 11, + "2345": 12, + "2346": 16, + "2347": 12, + "2348": 17, + "2349": 18, + "2350": 18, + "2351": 7, + "2352": 9, + "2353": 13, + "2354": 4, + "2355": 5, + "2356": 1, + "2357": 3, + "2358": 2, + "2360": 1, + "2361": 2, + "2362": 2, + "2366": 2, + "2367": 1, + "2368": 1, + "2369": 2, + "2370": 1, + "2371": 1, + "2372": 2, + "2373": 2, + "2375": 3, + "2376": 4, + "2377": 3, + "2378": 2, + "2379": 2, + "2381": 1, + "2383": 1, + "2385": 1, + "2386": 1, + "2388": 2, + "2390": 1, + "2392": 1, + "2393": 2, + "2394": 3, + "2395": 2, + "2396": 1, + "2397": 2, + "2398": 2, + "2399": 7, + "2400": 7, + "2401": 6, + "2402": 2, + "2403": 6, + "2404": 3, + "2405": 5, + "2406": 1, + "2407": 3, + "2408": 1, + "2409": 2, + "2411": 2, + "2413": 5, + "2414": 4, + "2415": 6, + "2416": 4, + "2417": 15, + "2418": 6, + "2419": 7, + "2420": 12, + "2421": 14, + "2422": 9, + "2423": 15, + "2424": 12, + "2425": 6, + "2426": 21, + "2427": 20, + "2428": 20, + "2429": 12, + "2430": 17, + "2431": 21, + "2432": 13, + "2433": 9, + "2434": 8, + "2435": 6, + "2436": 5, + "2437": 2, + "2438": 1, + "2441": 1, + "2442": 2, + "2445": 1, + "2454": 1 + }, + "started": "2020-09-07T18:44:31.340Z", + "trafficStats": { + "incomingCompressionRatio": 0.0358873291015625, + "incomingOctetsAppLevel": 65536000, + "incomingOctetsWebSocketLevel": 2351912, + "incomingOctetsWireLevel": 2359912, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.00340148781076843, + "outgoingCompressionRatio": 0.04351948547363281, + "outgoingOctetsAppLevel": 65536000, + "outgoingOctetsWebSocketLevel": 2852093, + "outgoingOctetsWireLevel": 2897533, + "outgoingWebSocketFrames": 11719, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.015932159294945854, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 10719, + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 17, + "3": 21, + "4": 28, + "5": 25, + "6": 22, + "7": 26, + "8": 20, + "9": 34, + "10": 20, + "11": 14, + "12": 8, + "13": 9, + "14": 17, + "15": 16, + "16": 17, + "17": 16, + "18": 10, + "19": 9, + "20": 5, + "21": 3, + "22": 1, + "23": 3, + "24": 4, + "25": 2, + "28": 2, + "29": 1, + "31": 1, + "32": 1, + "33": 2, + "35": 1, + "36": 1, + "37": 2, + "39": 3, + "41": 4, + "42": 1, + "44": 4, + "45": 3, + "46": 2, + "48": 2, + "49": 1, + "50": 1, + "51": 1, + "52": 1, + "54": 1, + "60": 1, + "61": 1, + "64": 2, + "65": 1, + "66": 1, + "67": 1, + "68": 2, + "69": 1, + "70": 2, + "74": 1, + "77": 1, + "79": 1, + "81": 3, + "82": 2, + "83": 2, + "84": 5, + "85": 8, + "86": 5, + "87": 7, + "88": 4, + "89": 8, + "90": 2, + "91": 3, + "92": 3, + "93": 5, + "94": 10, + "95": 11, + "96": 16, + "97": 10, + "98": 11, + "99": 6, + "100": 19, + "101": 12, + "102": 6, + "103": 9, + "104": 12, + "105": 12, + "106": 12, + "107": 9, + "108": 7, + "109": 9, + "110": 7, + "111": 6, + "112": 4, + "113": 4, + "114": 2, + "115": 3, + "116": 1, + "117": 6, + "118": 11, + "119": 8, + "120": 13, + "121": 10, + "122": 9, + "123": 5, + "124": 2, + "125": 3, + "141": 1, + "241": 2, + "242": 1, + "243": 2, + "244": 5, + "245": 4, + "246": 6, + "247": 5, + "248": 6, + "249": 12, + "250": 17, + "251": 22, + "252": 27, + "253": 28, + "254": 17, + "255": 35, + "256": 19, + "257": 31, + "258": 20, + "259": 23, + "260": 10719 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333135266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88827e06f0327dee" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "7e06f032" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_1_15.html b/autobahn/client/tungstenite_case_12_1_15.html new file mode 100644 index 0000000..5fd7678 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_15.html @@ -0,0 +1,598 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.1.15 : Pass - 7117 ms @ 2020-09-07T18:44:35.216Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=316&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: C9/dCdhZ+gGN/gZ7fyG0/w==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Z6lRIqv6/pHza5WbEfst7fH9tas=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
457229144
457529150
457614576
457729154
4578313734
4580313740
4581313743
45821464148
4583836664
4584732088
4585836680
45861150446
4587522935
45881045880
4589627534
45901150490
4591732137
4592836736
459314593
4594418376
4595418380
45961045960
4597418388
459829196
4599836792
460029200
4601732207
4602627612
4603627618
4604732228
4605627630
4606732242
460714607
460829216
4609732263
46101046100
46111150721
46121046120
46131359969
46141150754
4615627690
46161046160
4617523085
461829236
4619418476
4620418480
462129242
4622418488
4623313869
462429248
462514625
463114631
463314633
463414634
463714637
463814638
463929278
464029280
464114641
4643313929
464514645
464814648
464929298
465029300
4651418604
4652418608
465314653
4654418616
465514655
465629312
465714657
465929318
466014660
466129322
4663313989
466429328
4665313995
4666313998
4667523335
4668418672
4669523345
4670732690
4671942039
4672418688
4673418692
4674837392
46751046750
4676314028
46771046770
4678837424
4679942111
46801151480
4681837448
46821151502
46831465562
46841256208
46851360905
46861151546
46871989053
4688732816
46891570335
46901675040
46911779747
46921675072
469323107939
46941570410
46951361035
46961989224
46971465758
46981989262
46991151689
47001465800
47011884618
47021884636
47031047030
47041256448
47051256460
47061151766
470729414
470814708
4709732963
471029420
471114711
4712628272
471329426
471414714
4715418860
471629432
4717628302
4718523590
4719523595
47201256640
4721837768
4722523610
4723314169
4724628344
472514725
4726628356
47271047270
47281885104
47291570935
47302199330
47311047310
4732942588
4733314199
4734523670
473529470
473614736
473714737
474914749
477014770
4771419084
477214772
477314773
477629552
Total10024668715
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
326
4416
515
6212
7214
818
9218
10110
11333
12112
13339
14684
15230
16232
17234
23123
30130
31262
33133
34134
36136
37274
393117
40140
41141
42284
433129
449396
455225
463138
4710470
4810480
4915735
50201000
5114714
5216832
5314742
54211134
55261430
5617952
5711627
58251450
59211239
60241440
6116976
62251550
63241512
64241536
6512780
66171122
67191273
6813884
699621
70251750
71251775
72161152
7312876
7411814
758600
7610760
77131001
784312
796474
803240
81181
822164
832166
845420
853255
863258
875435
884352
89121068
9010900
917637
92111012
939837
942188
953285
972194
983294
99199
1121112
1131113
1141114
1163348
1172234
1191119
1271127
1302260
1992398
2001200
2011201
2021202
2032406
20451020
20571435
20651030
2074828
2081208
20961254
21081680
21161266
2124848
213112343
21481712
21571505
21661296
21761302
2184872
2194876
22051100
22151105
22271554
223173791
224163584
225143150
226132938
22761362
22861368
229102290
230163680
231133003
23292088
23361398
23461404
23561410
2362472
2374948
23851190
2394956
24061440
2413723
2432486
2442488
2462492
2481248
2491249
2513753
2521252
2533759
2542508
2561256
2582516
2591259
260217025642520
Total227045753762
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
021702
11000
81
Total22703
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333136266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88826c0b45216fe3
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3663306234353231
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_1_15.json b/autobahn/client/tungstenite_case_12_1_15.json new file mode 100644 index 0000000..2d4d782 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_15.json @@ -0,0 +1,445 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 316, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 7117, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=316&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: C9/dCdhZ+gGN/gZ7fyG0/w==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Z6lRIqv6/pHza5WbEfst7fH9tas=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.1.15", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "4572": 2, + "4575": 2, + "4576": 1, + "4577": 2, + "4578": 3, + "4580": 3, + "4581": 3, + "4582": 14, + "4583": 8, + "4584": 7, + "4585": 8, + "4586": 11, + "4587": 5, + "4588": 10, + "4589": 6, + "4590": 11, + "4591": 7, + "4592": 8, + "4593": 1, + "4594": 4, + "4595": 4, + "4596": 10, + "4597": 4, + "4598": 2, + "4599": 8, + "4600": 2, + "4601": 7, + "4602": 6, + "4603": 6, + "4604": 7, + "4605": 6, + "4606": 7, + "4607": 1, + "4608": 2, + "4609": 7, + "4610": 10, + "4611": 11, + "4612": 10, + "4613": 13, + "4614": 11, + "4615": 6, + "4616": 10, + "4617": 5, + "4618": 2, + "4619": 4, + "4620": 4, + "4621": 2, + "4622": 4, + "4623": 3, + "4624": 2, + "4625": 1, + "4631": 1, + "4633": 1, + "4634": 1, + "4637": 1, + "4638": 1, + "4639": 2, + "4640": 2, + "4641": 1, + "4643": 3, + "4645": 1, + "4648": 1, + "4649": 2, + "4650": 2, + "4651": 4, + "4652": 4, + "4653": 1, + "4654": 4, + "4655": 1, + "4656": 2, + "4657": 1, + "4659": 2, + "4660": 1, + "4661": 2, + "4663": 3, + "4664": 2, + "4665": 3, + "4666": 3, + "4667": 5, + "4668": 4, + "4669": 5, + "4670": 7, + "4671": 9, + "4672": 4, + "4673": 4, + "4674": 8, + "4675": 10, + "4676": 3, + "4677": 10, + "4678": 8, + "4679": 9, + "4680": 11, + "4681": 8, + "4682": 11, + "4683": 14, + "4684": 12, + "4685": 13, + "4686": 11, + "4687": 19, + "4688": 7, + "4689": 15, + "4690": 16, + "4691": 17, + "4692": 16, + "4693": 23, + "4694": 15, + "4695": 13, + "4696": 19, + "4697": 14, + "4698": 19, + "4699": 11, + "4700": 14, + "4701": 18, + "4702": 18, + "4703": 10, + "4704": 12, + "4705": 12, + "4706": 11, + "4707": 2, + "4708": 1, + "4709": 7, + "4710": 2, + "4711": 1, + "4712": 6, + "4713": 2, + "4714": 1, + "4715": 4, + "4716": 2, + "4717": 6, + "4718": 5, + "4719": 5, + "4720": 12, + "4721": 8, + "4722": 5, + "4723": 3, + "4724": 6, + "4725": 1, + "4726": 6, + "4727": 10, + "4728": 18, + "4729": 15, + "4730": 21, + "4731": 10, + "4732": 9, + "4733": 3, + "4734": 5, + "4735": 2, + "4736": 1, + "4737": 1, + "4749": 1, + "4770": 1, + "4771": 4, + "4772": 1, + "4773": 1, + "4776": 2 + }, + "started": "2020-09-07T18:44:35.216Z", + "trafficStats": { + "incomingCompressionRatio": 0.03555641174316406, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 4660450, + "incomingOctetsWireLevel": 4668450, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0017165724339924255, + "outgoingCompressionRatio": 0.04321363830566406, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 5664098, + "outgoingOctetsWireLevel": 5753506, + "outgoingWebSocketFrames": 22702, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.01578503761764009, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 21702, + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "3": 2, + "4": 4, + "5": 1, + "6": 2, + "7": 2, + "8": 1, + "9": 2, + "10": 1, + "11": 3, + "12": 1, + "13": 3, + "14": 6, + "15": 2, + "16": 2, + "17": 2, + "23": 1, + "30": 1, + "31": 2, + "33": 1, + "34": 1, + "36": 1, + "37": 2, + "39": 3, + "40": 1, + "41": 1, + "42": 2, + "43": 3, + "44": 9, + "45": 5, + "46": 3, + "47": 10, + "48": 10, + "49": 15, + "50": 20, + "51": 14, + "52": 16, + "53": 14, + "54": 21, + "55": 26, + "56": 17, + "57": 11, + "58": 25, + "59": 21, + "60": 24, + "61": 16, + "62": 25, + "63": 24, + "64": 24, + "65": 12, + "66": 17, + "67": 19, + "68": 13, + "69": 9, + "70": 25, + "71": 25, + "72": 16, + "73": 12, + "74": 11, + "75": 8, + "76": 10, + "77": 13, + "78": 4, + "79": 6, + "80": 3, + "81": 1, + "82": 2, + "83": 2, + "84": 5, + "85": 3, + "86": 3, + "87": 5, + "88": 4, + "89": 12, + "90": 10, + "91": 7, + "92": 11, + "93": 9, + "94": 2, + "95": 3, + "97": 2, + "98": 3, + "99": 1, + "112": 1, + "113": 1, + "114": 1, + "116": 3, + "117": 2, + "119": 1, + "127": 1, + "130": 2, + "199": 2, + "200": 1, + "201": 1, + "202": 1, + "203": 2, + "204": 5, + "205": 7, + "206": 5, + "207": 4, + "208": 1, + "209": 6, + "210": 8, + "211": 6, + "212": 4, + "213": 11, + "214": 8, + "215": 7, + "216": 6, + "217": 6, + "218": 4, + "219": 4, + "220": 5, + "221": 5, + "222": 7, + "223": 17, + "224": 16, + "225": 14, + "226": 13, + "227": 6, + "228": 6, + "229": 10, + "230": 16, + "231": 13, + "232": 9, + "233": 6, + "234": 6, + "235": 6, + "236": 2, + "237": 4, + "238": 5, + "239": 4, + "240": 6, + "241": 3, + "243": 2, + "244": 2, + "246": 2, + "248": 1, + "249": 1, + "251": 3, + "252": 1, + "253": 3, + "254": 2, + "256": 1, + "258": 2, + "259": 1, + "260": 21702 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333136266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88826c0b45216fe3" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "6c0b4521" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_1_16.html b/autobahn/client/tungstenite_case_12_1_16.html new file mode 100644 index 0000000..cef05f9 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_16.html @@ -0,0 +1,599 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.1.16 : Pass - 6983 ms @ 2020-09-07T18:44:42.334Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=317&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Omb1Dukt3XVz9VQr1YELmA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: dLaaBK5Bw8n5eTT1LuiV1+W0oSo=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
457229144
457529150
457614576
457729154
4578313734
4580313740
4581313743
45821464148
4583836664
4584732088
4585836680
45861150446
4587522935
45881045880
4589627534
45901150490
4591732137
4592836736
459314593
4594418376
4595418380
45961045960
4597418388
459829196
4599836792
460029200
4601732207
4602627612
4603627618
4604732228
4605627630
4606732242
460714607
460829216
4609732263
46101046100
46111150721
46121046120
46131359969
46141150754
4615627690
46161046160
4617523085
461829236
4619418476
4620418480
462129242
4622418488
4623313869
462429248
462514625
463114631
463314633
463414634
463714637
463814638
463929278
464029280
464114641
4643313929
464514645
464814648
464929298
465029300
4651418604
4652418608
465314653
4654418616
465514655
465629312
465714657
465929318
466014660
466129322
4663313989
466429328
4665313995
4666313998
4667523335
4668418672
4669523345
4670732690
4671942039
4672418688
4673418692
4674837392
46751046750
4676314028
46771046770
4678837424
4679942111
46801151480
4681837448
46821151502
46831465562
46841256208
46851360905
46861151546
46871989053
4688732816
46891570335
46901675040
46911779747
46921675072
469323107939
46941570410
46951361035
46961989224
46971465758
46981989262
46991151689
47001465800
47011884618
47021884636
47031047030
47041256448
47051256460
47061151766
470729414
470814708
4709732963
471029420
471114711
4712628272
471329426
471414714
4715418860
471629432
4717628302
4718523590
4719523595
47201256640
4721837768
4722523610
4723314169
4724628344
472514725
4726628356
47271047270
47281885104
47291570935
47302199330
47311047310
4732942588
4733314199
4734523670
473529470
473614736
473714737
474914749
477014770
4771419084
477214772
477314773
477629552
Total10024668715
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
4552910
4561456
4571457
4581458
4592918
46052300
46173227
46252310
46341852
4641464
46562790
46683728
46762802
46841872
469115159
47083760
47173297
47262832
47362838
47441896
47541900
47652380
47752385
47873346
479178143
480167680
481146734
482136266
48362898
48462904
485104850
486167776
487136331
48894392
48962934
49062940
49162946
4922984
49341972
49452470
49541980
49662976
49731491
4992998
50021000
50221004
5041504
5051505
50731521
50931527
51021020
5121512
51421028
5151515
51721034
51831554
5191519
52021040
52121042
5221522
52321046
5241524
52531575
5261526
52731581
52863168
52921058
53021060
53121062
5371537
5441544
54521090
5471547
5481548
5501550
55121102
55331659
5541554
5551555
55621112
55731671
55895022
55952795
56031680
561105610
562105620
563158445
5642011280
565147910
566169056
567147938
5682111928
5692614794
570179690
571116281
5722514300
5732112033
5742413776
575169200
5762514400
5772413848
5782413872
579126948
580179860
5811911039
582137566
58395247
5842514600
5852514625
586169376
587127044
588116468
58984712
590105900
591137683
59242368
59363558
59431782
5951595
59621192
59721194
59852990
59931797
60031800
60153005
60242408
603127236
604106040
60574235
606116666
60795463
60821216
60931827
61121222
61231836
6131613
6261626
6271627
6281628
63031890
63121262
6331633
6411641
64221284
102850005140000
Total60025688354
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
05000
11000
81
Total6001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333137266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882ac7f4c5caf97
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6163376634633563
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_1_16.json b/autobahn/client/tungstenite_case_12_1_16.json new file mode 100644 index 0000000..df6b3e7 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_16.json @@ -0,0 +1,446 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 317, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 6983, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=317&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Omb1Dukt3XVz9VQr1YELmA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: dLaaBK5Bw8n5eTT1LuiV1+W0oSo=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.1.16", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "4572": 2, + "4575": 2, + "4576": 1, + "4577": 2, + "4578": 3, + "4580": 3, + "4581": 3, + "4582": 14, + "4583": 8, + "4584": 7, + "4585": 8, + "4586": 11, + "4587": 5, + "4588": 10, + "4589": 6, + "4590": 11, + "4591": 7, + "4592": 8, + "4593": 1, + "4594": 4, + "4595": 4, + "4596": 10, + "4597": 4, + "4598": 2, + "4599": 8, + "4600": 2, + "4601": 7, + "4602": 6, + "4603": 6, + "4604": 7, + "4605": 6, + "4606": 7, + "4607": 1, + "4608": 2, + "4609": 7, + "4610": 10, + "4611": 11, + "4612": 10, + "4613": 13, + "4614": 11, + "4615": 6, + "4616": 10, + "4617": 5, + "4618": 2, + "4619": 4, + "4620": 4, + "4621": 2, + "4622": 4, + "4623": 3, + "4624": 2, + "4625": 1, + "4631": 1, + "4633": 1, + "4634": 1, + "4637": 1, + "4638": 1, + "4639": 2, + "4640": 2, + "4641": 1, + "4643": 3, + "4645": 1, + "4648": 1, + "4649": 2, + "4650": 2, + "4651": 4, + "4652": 4, + "4653": 1, + "4654": 4, + "4655": 1, + "4656": 2, + "4657": 1, + "4659": 2, + "4660": 1, + "4661": 2, + "4663": 3, + "4664": 2, + "4665": 3, + "4666": 3, + "4667": 5, + "4668": 4, + "4669": 5, + "4670": 7, + "4671": 9, + "4672": 4, + "4673": 4, + "4674": 8, + "4675": 10, + "4676": 3, + "4677": 10, + "4678": 8, + "4679": 9, + "4680": 11, + "4681": 8, + "4682": 11, + "4683": 14, + "4684": 12, + "4685": 13, + "4686": 11, + "4687": 19, + "4688": 7, + "4689": 15, + "4690": 16, + "4691": 17, + "4692": 16, + "4693": 23, + "4694": 15, + "4695": 13, + "4696": 19, + "4697": 14, + "4698": 19, + "4699": 11, + "4700": 14, + "4701": 18, + "4702": 18, + "4703": 10, + "4704": 12, + "4705": 12, + "4706": 11, + "4707": 2, + "4708": 1, + "4709": 7, + "4710": 2, + "4711": 1, + "4712": 6, + "4713": 2, + "4714": 1, + "4715": 4, + "4716": 2, + "4717": 6, + "4718": 5, + "4719": 5, + "4720": 12, + "4721": 8, + "4722": 5, + "4723": 3, + "4724": 6, + "4725": 1, + "4726": 6, + "4727": 10, + "4728": 18, + "4729": 15, + "4730": 21, + "4731": 10, + "4732": 9, + "4733": 3, + "4734": 5, + "4735": 2, + "4736": 1, + "4737": 1, + "4749": 1, + "4770": 1, + "4771": 4, + "4772": 1, + "4773": 1, + "4776": 2 + }, + "started": "2020-09-07T18:44:42.334Z", + "trafficStats": { + "incomingCompressionRatio": 0.03555641174316406, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 4660450, + "incomingOctetsWireLevel": 4668450, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0017165724339924255, + "outgoingCompressionRatio": 0.04321363830566406, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 5664098, + "outgoingOctetsWireLevel": 5688098, + "outgoingWebSocketFrames": 6000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0042372148222011696, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 5000, + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "455": 2, + "456": 1, + "457": 1, + "458": 1, + "459": 2, + "460": 5, + "461": 7, + "462": 5, + "463": 4, + "464": 1, + "465": 6, + "466": 8, + "467": 6, + "468": 4, + "469": 11, + "470": 8, + "471": 7, + "472": 6, + "473": 6, + "474": 4, + "475": 4, + "476": 5, + "477": 5, + "478": 7, + "479": 17, + "480": 16, + "481": 14, + "482": 13, + "483": 6, + "484": 6, + "485": 10, + "486": 16, + "487": 13, + "488": 9, + "489": 6, + "490": 6, + "491": 6, + "492": 2, + "493": 4, + "494": 5, + "495": 4, + "496": 6, + "497": 3, + "499": 2, + "500": 2, + "502": 2, + "504": 1, + "505": 1, + "507": 3, + "509": 3, + "510": 2, + "512": 1, + "514": 2, + "515": 1, + "517": 2, + "518": 3, + "519": 1, + "520": 2, + "521": 2, + "522": 1, + "523": 2, + "524": 1, + "525": 3, + "526": 1, + "527": 3, + "528": 6, + "529": 2, + "530": 2, + "531": 2, + "537": 1, + "544": 1, + "545": 2, + "547": 1, + "548": 1, + "550": 1, + "551": 2, + "553": 3, + "554": 1, + "555": 1, + "556": 2, + "557": 3, + "558": 9, + "559": 5, + "560": 3, + "561": 10, + "562": 10, + "563": 15, + "564": 20, + "565": 14, + "566": 16, + "567": 14, + "568": 21, + "569": 26, + "570": 17, + "571": 11, + "572": 25, + "573": 21, + "574": 24, + "575": 16, + "576": 25, + "577": 24, + "578": 24, + "579": 12, + "580": 17, + "581": 19, + "582": 13, + "583": 9, + "584": 25, + "585": 25, + "586": 16, + "587": 12, + "588": 11, + "589": 8, + "590": 10, + "591": 13, + "592": 4, + "593": 6, + "594": 3, + "595": 1, + "596": 2, + "597": 2, + "598": 5, + "599": 3, + "600": 3, + "601": 5, + "602": 4, + "603": 12, + "604": 10, + "605": 7, + "606": 11, + "607": 9, + "608": 2, + "609": 3, + "611": 2, + "612": 3, + "613": 1, + "626": 1, + "627": 1, + "628": 1, + "630": 3, + "631": 2, + "633": 1, + "641": 1, + "642": 2, + "1028": 5000 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333137266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882ac7f4c5caf97" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "ac7f4c5c" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_1_17.html b/autobahn/client/tungstenite_case_12_1_17.html new file mode 100644 index 0000000..34ae1c5 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_17.html @@ -0,0 +1,599 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.1.17 : Pass - 8544 ms @ 2020-09-07T18:44:49.318Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=318&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: X8Xj1mBqT8WOIZpka+xtIQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 9Ddsdutcu0jVwlUQbrfEdSHt114=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
457229144
457529150
457614576
457729154
4578313734
4580313740
4581313743
45821464148
4583836664
4584732088
4585836680
45861150446
4587522935
45881045880
4589627534
45901150490
4591732137
4592836736
459314593
4594418376
4595418380
45961045960
4597418388
459829196
4599836792
460029200
4601732207
4602627612
4603627618
4604732228
4605627630
4606732242
460714607
460829216
4609732263
46101046100
46111150721
46121046120
46131359969
46141150754
4615627690
46161046160
4617523085
461829236
4619418476
4620418480
462129242
4622418488
4623313869
462429248
462514625
463114631
463314633
463414634
463714637
463814638
463929278
464029280
464114641
4643313929
464514645
464814648
464929298
465029300
4651418604
4652418608
465314653
4654418616
465514655
465629312
465714657
465929318
466014660
466129322
4663313989
466429328
4665313995
4666313998
4667523335
4668418672
4669523345
4670732690
4671942039
4672418688
4673418692
4674837392
46751046750
4676314028
46771046770
4678837424
4679942111
46801151480
4681837448
46821151502
46831465562
46841256208
46851360905
46861151546
46871989053
4688732816
46891570335
46901675040
46911779747
46921675072
469323107939
46941570410
46951361035
46961989224
46971465758
46981989262
46991151689
47001465800
47011884618
47021884636
47031047030
47041256448
47051256460
47061151766
470729414
470814708
4709732963
471029420
471114711
4712628272
471329426
471414714
4715418860
471629432
4717628302
4718523590
4719523595
47201256640
4721837768
4722523610
4723314169
4724628344
472514725
4726628356
47271047270
47281885104
47291570935
47302199330
47311047310
4732942588
4733314199
4734523670
473529470
473614736
473714737
474914749
477014770
4771419084
477214772
477314773
477629552
Total10024668715
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
147922958
148011480
148111481
148211482
148322966
148457420
1485710395
148657430
148745948
148811488
148968934
1490811920
149168946
149245968
14931116423
1494811952
1495710465
149668976
149768982
149845992
149945996
150057500
150157505
1502710514
15031725551
15041624064
15051421070
15061319578
150769042
150869048
15091015090
15101624160
15111319643
1512913608
151369078
151469084
151569090
151623032
151746068
151857590
151946076
152069120
152134563
152323046
152423048
152623052
152811528
152911529
153134593
153334599
153423068
153611536
153823076
153911539
154123082
154234626
154311543
154423088
154523090
154611546
154723094
154811548
154934647
155011550
155134653
155269312
155323106
155423108
155523110
156111561
156811568
156923138
157111571
157211572
157411574
157523150
157734731
157811578
157911579
158023160
158134743
1582914238
158357915
158434752
15851015850
15861015860
15871523805
15882031760
15891422246
15901625440
15911422274
15922133432
15932641418
15941727098
15951117545
15962539900
15972133537
15982438352
15991625584
16002540000
16012438424
16022438448
16031219236
16041727268
16051930495
16061320878
1607914463
16082540200
16092540225
16101625760
16111219332
16121117732
1613812904
16141016140
16151320995
161646464
161769702
161834854
161911619
162023240
162123242
162258110
162334869
162434872
162558125
162646504
16271219524
16281016280
1629711403
16301117930
1631914679
163223264
163334899
163523270
163634908
163711637
165011650
165111651
165211652
165434962
165523310
165711657
166511665
166623332
410010004100000
Total20025672354
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
01000
11000
81
Total2001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333138266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888246886b444560
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3436383836623434
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_1_17.json b/autobahn/client/tungstenite_case_12_1_17.json new file mode 100644 index 0000000..27b3c6e --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_17.json @@ -0,0 +1,446 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 318, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 8544, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=318&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: X8Xj1mBqT8WOIZpka+xtIQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 9Ddsdutcu0jVwlUQbrfEdSHt114=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.1.17", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "4572": 2, + "4575": 2, + "4576": 1, + "4577": 2, + "4578": 3, + "4580": 3, + "4581": 3, + "4582": 14, + "4583": 8, + "4584": 7, + "4585": 8, + "4586": 11, + "4587": 5, + "4588": 10, + "4589": 6, + "4590": 11, + "4591": 7, + "4592": 8, + "4593": 1, + "4594": 4, + "4595": 4, + "4596": 10, + "4597": 4, + "4598": 2, + "4599": 8, + "4600": 2, + "4601": 7, + "4602": 6, + "4603": 6, + "4604": 7, + "4605": 6, + "4606": 7, + "4607": 1, + "4608": 2, + "4609": 7, + "4610": 10, + "4611": 11, + "4612": 10, + "4613": 13, + "4614": 11, + "4615": 6, + "4616": 10, + "4617": 5, + "4618": 2, + "4619": 4, + "4620": 4, + "4621": 2, + "4622": 4, + "4623": 3, + "4624": 2, + "4625": 1, + "4631": 1, + "4633": 1, + "4634": 1, + "4637": 1, + "4638": 1, + "4639": 2, + "4640": 2, + "4641": 1, + "4643": 3, + "4645": 1, + "4648": 1, + "4649": 2, + "4650": 2, + "4651": 4, + "4652": 4, + "4653": 1, + "4654": 4, + "4655": 1, + "4656": 2, + "4657": 1, + "4659": 2, + "4660": 1, + "4661": 2, + "4663": 3, + "4664": 2, + "4665": 3, + "4666": 3, + "4667": 5, + "4668": 4, + "4669": 5, + "4670": 7, + "4671": 9, + "4672": 4, + "4673": 4, + "4674": 8, + "4675": 10, + "4676": 3, + "4677": 10, + "4678": 8, + "4679": 9, + "4680": 11, + "4681": 8, + "4682": 11, + "4683": 14, + "4684": 12, + "4685": 13, + "4686": 11, + "4687": 19, + "4688": 7, + "4689": 15, + "4690": 16, + "4691": 17, + "4692": 16, + "4693": 23, + "4694": 15, + "4695": 13, + "4696": 19, + "4697": 14, + "4698": 19, + "4699": 11, + "4700": 14, + "4701": 18, + "4702": 18, + "4703": 10, + "4704": 12, + "4705": 12, + "4706": 11, + "4707": 2, + "4708": 1, + "4709": 7, + "4710": 2, + "4711": 1, + "4712": 6, + "4713": 2, + "4714": 1, + "4715": 4, + "4716": 2, + "4717": 6, + "4718": 5, + "4719": 5, + "4720": 12, + "4721": 8, + "4722": 5, + "4723": 3, + "4724": 6, + "4725": 1, + "4726": 6, + "4727": 10, + "4728": 18, + "4729": 15, + "4730": 21, + "4731": 10, + "4732": 9, + "4733": 3, + "4734": 5, + "4735": 2, + "4736": 1, + "4737": 1, + "4749": 1, + "4770": 1, + "4771": 4, + "4772": 1, + "4773": 1, + "4776": 2 + }, + "started": "2020-09-07T18:44:49.318Z", + "trafficStats": { + "incomingCompressionRatio": 0.03555641174316406, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 4660450, + "incomingOctetsWireLevel": 4668450, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0017165724339924255, + "outgoingCompressionRatio": 0.04321363830566406, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 5664098, + "outgoingOctetsWireLevel": 5672098, + "outgoingWebSocketFrames": 2000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0014124049407337233, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 1000, + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "1479": 2, + "1480": 1, + "1481": 1, + "1482": 1, + "1483": 2, + "1484": 5, + "1485": 7, + "1486": 5, + "1487": 4, + "1488": 1, + "1489": 6, + "1490": 8, + "1491": 6, + "1492": 4, + "1493": 11, + "1494": 8, + "1495": 7, + "1496": 6, + "1497": 6, + "1498": 4, + "1499": 4, + "1500": 5, + "1501": 5, + "1502": 7, + "1503": 17, + "1504": 16, + "1505": 14, + "1506": 13, + "1507": 6, + "1508": 6, + "1509": 10, + "1510": 16, + "1511": 13, + "1512": 9, + "1513": 6, + "1514": 6, + "1515": 6, + "1516": 2, + "1517": 4, + "1518": 5, + "1519": 4, + "1520": 6, + "1521": 3, + "1523": 2, + "1524": 2, + "1526": 2, + "1528": 1, + "1529": 1, + "1531": 3, + "1533": 3, + "1534": 2, + "1536": 1, + "1538": 2, + "1539": 1, + "1541": 2, + "1542": 3, + "1543": 1, + "1544": 2, + "1545": 2, + "1546": 1, + "1547": 2, + "1548": 1, + "1549": 3, + "1550": 1, + "1551": 3, + "1552": 6, + "1553": 2, + "1554": 2, + "1555": 2, + "1561": 1, + "1568": 1, + "1569": 2, + "1571": 1, + "1572": 1, + "1574": 1, + "1575": 2, + "1577": 3, + "1578": 1, + "1579": 1, + "1580": 2, + "1581": 3, + "1582": 9, + "1583": 5, + "1584": 3, + "1585": 10, + "1586": 10, + "1587": 15, + "1588": 20, + "1589": 14, + "1590": 16, + "1591": 14, + "1592": 21, + "1593": 26, + "1594": 17, + "1595": 11, + "1596": 25, + "1597": 21, + "1598": 24, + "1599": 16, + "1600": 25, + "1601": 24, + "1602": 24, + "1603": 12, + "1604": 17, + "1605": 19, + "1606": 13, + "1607": 9, + "1608": 25, + "1609": 25, + "1610": 16, + "1611": 12, + "1612": 11, + "1613": 8, + "1614": 10, + "1615": 13, + "1616": 4, + "1617": 6, + "1618": 3, + "1619": 1, + "1620": 2, + "1621": 2, + "1622": 5, + "1623": 3, + "1624": 3, + "1625": 5, + "1626": 4, + "1627": 12, + "1628": 10, + "1629": 7, + "1630": 11, + "1631": 9, + "1632": 2, + "1633": 3, + "1635": 2, + "1636": 3, + "1637": 1, + "1650": 1, + "1651": 1, + "1652": 1, + "1654": 3, + "1655": 2, + "1657": 1, + "1665": 1, + "1666": 2, + "4100": 1000 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333138266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888246886b444560" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "46886b44" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_1_18.html b/autobahn/client/tungstenite_case_12_1_18.html new file mode 100644 index 0000000..6a4f9ec --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_18.html @@ -0,0 +1,597 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.1.18 : Pass - 8485 ms @ 2020-09-07T18:44:57.863Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=319&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Vd1yAQZrhYK1wpEUgTCyPw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: rpPTcvTdvDp9io4/fO0c/f7H57c=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
457229144
457529150
457614576
457729154
4578313734
4580313740
4581313743
45821464148
4583836664
4584732088
4585836680
45861150446
4587522935
45881045880
4589627534
45901150490
4591732137
4592836736
459314593
4594418376
4595418380
45961045960
4597418388
459829196
4599836792
460029200
4601732207
4602627612
4603627618
4604732228
4605627630
4606732242
460714607
460829216
4609732263
46101046100
46111150721
46121046120
46131359969
46141150754
4615627690
46161046160
4617523085
461829236
4619418476
4620418480
462129242
4622418488
4623313869
462429248
462514625
463114631
463314633
463414634
463714637
463814638
463929278
464029280
464114641
4643313929
464514645
464814648
464929298
465029300
4651418604
4652418608
465314653
4654418616
465514655
465629312
465714657
465929318
466014660
466129322
4663313989
466429328
4665313995
4666313998
4667523335
4668418672
4669523345
4670732690
4671942039
4672418688
4673418692
4674837392
46751046750
4676314028
46771046770
4678837424
4679942111
46801151480
4681837448
46821151502
46831465562
46841256208
46851360905
46861151546
46871989053
4688732816
46891570335
46901675040
46911779747
46921675072
469323107939
46941570410
46951361035
46961989224
46971465758
46981989262
46991151689
47001465800
47011884618
47021884636
47031047030
47041256448
47051256460
47061151766
470729414
470814708
4709732963
471029420
471114711
4712628272
471329426
471414714
4715418860
471629432
4717628302
4718523590
4719523595
47201256640
4721837768
4722523610
4723314169
4724628344
472514725
4726628356
47271047270
47281885104
47291570935
47302199330
47311047310
4732942588
4733314199
4734523670
473529470
473614736
473714737
474914749
477014770
4771419084
477214772
477314773
477629552
Total10024668715
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
5575211150
557615576
557715577
557815578
5579211158
5580527900
5581739067
5582527910
5583422332
558415584
5585633510
5586844688
5587633522
5588422352
55891161479
5590844720
5591739137
5592633552
5593633558
5594422376
5595422380
5596527980
5597527985
5598739186
55991795183
56001689600
56011478414
56021372826
5603633618
5604633624
56051056050
56061689696
56071372891
5608950472
5609633654
5610633660
5611633666
5612211224
5613422452
5614528070
5615422460
5616633696
5617316851
5619211238
5620211240
5622211244
562415624
562515625
5627316881
5629316887
5630211260
563215632
5634211268
563515635
5637211274
5638316914
563915639
5640211280
5641211282
564215642
5643211286
564415644
5645316935
564615646
5647316941
5648633888
5649211298
5650211300
5651211302
565715657
566415664
5665211330
566715667
566815668
567015670
5671211342
5673317019
567415674
567515675
5676211352
5677317031
5678951102
5679528395
5680317040
56811056810
56821056820
56831585245
568420113680
56851479590
56861690976
56871479618
568821119448
568926147914
56901796730
56911162601
569225142300
569321119553
569424136656
56951691120
569625142400
569724136728
569824136752
56991268388
57001796900
570119108319
57021374126
5703951327
570425142600
570525142625
57061691296
57071268484
57081162788
5709845672
57101057100
57111374243
5712422848
5713634278
5714317142
571515715
5716211432
5717211434
5718528590
5719317157
5720317160
5721528605
5722422888
57231268676
57241057240
5725740075
57261162986
5727951543
5728211456
5729317187
5731211462
5732317196
573315733
574615746
574715747
574815748
5750317250
5751211502
575315753
576115761
5762211524
Total10025668354
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333139266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882210d872922e5
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3231306438373239
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_1_18.json b/autobahn/client/tungstenite_case_12_1_18.json new file mode 100644 index 0000000..6455e59 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_18.json @@ -0,0 +1,444 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 319, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 8485, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=319&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Vd1yAQZrhYK1wpEUgTCyPw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: rpPTcvTdvDp9io4/fO0c/f7H57c=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.1.18", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "4572": 2, + "4575": 2, + "4576": 1, + "4577": 2, + "4578": 3, + "4580": 3, + "4581": 3, + "4582": 14, + "4583": 8, + "4584": 7, + "4585": 8, + "4586": 11, + "4587": 5, + "4588": 10, + "4589": 6, + "4590": 11, + "4591": 7, + "4592": 8, + "4593": 1, + "4594": 4, + "4595": 4, + "4596": 10, + "4597": 4, + "4598": 2, + "4599": 8, + "4600": 2, + "4601": 7, + "4602": 6, + "4603": 6, + "4604": 7, + "4605": 6, + "4606": 7, + "4607": 1, + "4608": 2, + "4609": 7, + "4610": 10, + "4611": 11, + "4612": 10, + "4613": 13, + "4614": 11, + "4615": 6, + "4616": 10, + "4617": 5, + "4618": 2, + "4619": 4, + "4620": 4, + "4621": 2, + "4622": 4, + "4623": 3, + "4624": 2, + "4625": 1, + "4631": 1, + "4633": 1, + "4634": 1, + "4637": 1, + "4638": 1, + "4639": 2, + "4640": 2, + "4641": 1, + "4643": 3, + "4645": 1, + "4648": 1, + "4649": 2, + "4650": 2, + "4651": 4, + "4652": 4, + "4653": 1, + "4654": 4, + "4655": 1, + "4656": 2, + "4657": 1, + "4659": 2, + "4660": 1, + "4661": 2, + "4663": 3, + "4664": 2, + "4665": 3, + "4666": 3, + "4667": 5, + "4668": 4, + "4669": 5, + "4670": 7, + "4671": 9, + "4672": 4, + "4673": 4, + "4674": 8, + "4675": 10, + "4676": 3, + "4677": 10, + "4678": 8, + "4679": 9, + "4680": 11, + "4681": 8, + "4682": 11, + "4683": 14, + "4684": 12, + "4685": 13, + "4686": 11, + "4687": 19, + "4688": 7, + "4689": 15, + "4690": 16, + "4691": 17, + "4692": 16, + "4693": 23, + "4694": 15, + "4695": 13, + "4696": 19, + "4697": 14, + "4698": 19, + "4699": 11, + "4700": 14, + "4701": 18, + "4702": 18, + "4703": 10, + "4704": 12, + "4705": 12, + "4706": 11, + "4707": 2, + "4708": 1, + "4709": 7, + "4710": 2, + "4711": 1, + "4712": 6, + "4713": 2, + "4714": 1, + "4715": 4, + "4716": 2, + "4717": 6, + "4718": 5, + "4719": 5, + "4720": 12, + "4721": 8, + "4722": 5, + "4723": 3, + "4724": 6, + "4725": 1, + "4726": 6, + "4727": 10, + "4728": 18, + "4729": 15, + "4730": 21, + "4731": 10, + "4732": 9, + "4733": 3, + "4734": 5, + "4735": 2, + "4736": 1, + "4737": 1, + "4749": 1, + "4770": 1, + "4771": 4, + "4772": 1, + "4773": 1, + "4776": 2 + }, + "started": "2020-09-07T18:44:57.863Z", + "trafficStats": { + "incomingCompressionRatio": 0.03555641174316406, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 4660450, + "incomingOctetsWireLevel": 4668450, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0017165724339924255, + "outgoingCompressionRatio": 0.04321363830566406, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 5664098, + "outgoingOctetsWireLevel": 5668098, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0007062024703668616, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "5575": 2, + "5576": 1, + "5577": 1, + "5578": 1, + "5579": 2, + "5580": 5, + "5581": 7, + "5582": 5, + "5583": 4, + "5584": 1, + "5585": 6, + "5586": 8, + "5587": 6, + "5588": 4, + "5589": 11, + "5590": 8, + "5591": 7, + "5592": 6, + "5593": 6, + "5594": 4, + "5595": 4, + "5596": 5, + "5597": 5, + "5598": 7, + "5599": 17, + "5600": 16, + "5601": 14, + "5602": 13, + "5603": 6, + "5604": 6, + "5605": 10, + "5606": 16, + "5607": 13, + "5608": 9, + "5609": 6, + "5610": 6, + "5611": 6, + "5612": 2, + "5613": 4, + "5614": 5, + "5615": 4, + "5616": 6, + "5617": 3, + "5619": 2, + "5620": 2, + "5622": 2, + "5624": 1, + "5625": 1, + "5627": 3, + "5629": 3, + "5630": 2, + "5632": 1, + "5634": 2, + "5635": 1, + "5637": 2, + "5638": 3, + "5639": 1, + "5640": 2, + "5641": 2, + "5642": 1, + "5643": 2, + "5644": 1, + "5645": 3, + "5646": 1, + "5647": 3, + "5648": 6, + "5649": 2, + "5650": 2, + "5651": 2, + "5657": 1, + "5664": 1, + "5665": 2, + "5667": 1, + "5668": 1, + "5670": 1, + "5671": 2, + "5673": 3, + "5674": 1, + "5675": 1, + "5676": 2, + "5677": 3, + "5678": 9, + "5679": 5, + "5680": 3, + "5681": 10, + "5682": 10, + "5683": 15, + "5684": 20, + "5685": 14, + "5686": 16, + "5687": 14, + "5688": 21, + "5689": 26, + "5690": 17, + "5691": 11, + "5692": 25, + "5693": 21, + "5694": 24, + "5695": 16, + "5696": 25, + "5697": 24, + "5698": 24, + "5699": 12, + "5700": 17, + "5701": 19, + "5702": 13, + "5703": 9, + "5704": 25, + "5705": 25, + "5706": 16, + "5707": 12, + "5708": 11, + "5709": 8, + "5710": 10, + "5711": 13, + "5712": 4, + "5713": 6, + "5714": 3, + "5715": 1, + "5716": 2, + "5717": 2, + "5718": 5, + "5719": 3, + "5720": 3, + "5721": 5, + "5722": 4, + "5723": 12, + "5724": 10, + "5725": 7, + "5726": 11, + "5727": 9, + "5728": 2, + "5729": 3, + "5731": 2, + "5732": 3, + "5733": 1, + "5746": 1, + "5747": 1, + "5748": 1, + "5750": 3, + "5751": 2, + "5753": 1, + "5761": 1, + "5762": 2 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333139266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882210d872922e5" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "210d8729" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_1_2.html b/autobahn/client/tungstenite_case_12_1_2.html new file mode 100644 index 0000000..97013a8 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_2.html @@ -0,0 +1,328 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.1.2 : Pass - 522 ms @ 2020-09-07T18:44:08.617Z

+

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=303&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: s0oxjdAfZpXN1huto3uIFw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: MMyzkaurgEyMfGCBkB17CRj09FU=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
114635093
129108
131311703
141732422
1539585
1654864
171081836
1813234
19476
22122
28128
36136
41141
42142
55155
2571257
Total100213410
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
74413087
81080
91431287
101741740
1136396
1268816
13781014
1428392
1516240
19119
24124
32132
37137
38138
51151
2521252
Total10029509
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333033266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888299e240149a0a
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3939653234303134
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_1_2.json b/autobahn/client/tungstenite_case_12_1_2.json new file mode 100644 index 0000000..5ce82ea --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_2.json @@ -0,0 +1,175 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 303, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 522, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=303&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: s0oxjdAfZpXN1huto3uIFw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: MMyzkaurgEyMfGCBkB17CRj09FU=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.1.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "11": 463, + "12": 9, + "13": 131, + "14": 173, + "15": 39, + "16": 54, + "17": 108, + "18": 13, + "19": 4, + "22": 1, + "28": 1, + "36": 1, + "41": 1, + "42": 1, + "55": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:08.617Z", + "trafficStats": { + "incomingCompressionRatio": 0.111640625, + "incomingOctetsAppLevel": 64000, + "incomingOctetsWebSocketLevel": 7145, + "incomingOctetsWireLevel": 13145, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.8397480755773268, + "outgoingCompressionRatio": 0.113328125, + "outgoingOctetsAppLevel": 64000, + "outgoingOctetsWebSocketLevel": 7253, + "outgoingOctetsWireLevel": 9253, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.2757479663587481, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "7": 441, + "8": 10, + "9": 143, + "10": 174, + "11": 36, + "12": 68, + "13": 78, + "14": 28, + "15": 16, + "19": 1, + "24": 1, + "32": 1, + "37": 1, + "38": 1, + "51": 1, + "252": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333033266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888299e240149a0a" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "99e24014" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_1_3.html b/autobahn/client/tungstenite_case_12_1_3.html new file mode 100644 index 0000000..2a5aa3b --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_3.html @@ -0,0 +1,355 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.1.3 : Pass - 541 ms @ 2020-09-07T18:44:09.139Z

+

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=304&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: UmZ1jbtG2gB2NEunipvDbw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: g9czfIZYth5bpkiKDiJeGDLE/2U=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
1739663
182223996
19811539
20521040
211473087
221022244
23701610
24771848
25671675
26461196
2733891
2827756
2915435
304120
31131
32396
34268
35270
37137
39278
41141
42142
43143
46146
65165
70170
1511151
2571257
Total100222203
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
1342546
1470980
1542630
161382208
171051785
18991782
191252375
20721440
21761596
22541188
23531219
2438912
2529725
2622572
2710270
284112
295145
30130
31262
32132
33266
34134
36136
37137
39139
41282
43143
61161
66166
1471147
2521252
Total100219476
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333034266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 120.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88828342f4f980aa
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3833343266346639
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_1_3.json b/autobahn/client/tungstenite_case_12_1_3.json new file mode 100644 index 0000000..ce61be3 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_3.json @@ -0,0 +1,202 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 304, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 541, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=304&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: UmZ1jbtG2gB2NEunipvDbw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: g9czfIZYth5bpkiKDiJeGDLE/2U=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.1.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "17": 39, + "18": 222, + "19": 81, + "20": 52, + "21": 147, + "22": 102, + "23": 70, + "24": 77, + "25": 67, + "26": 46, + "27": 33, + "28": 27, + "29": 15, + "30": 4, + "31": 1, + "32": 3, + "34": 2, + "35": 2, + "37": 1, + "39": 2, + "41": 1, + "42": 1, + "43": 1, + "46": 1, + "65": 1, + "70": 1, + "151": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:09.139Z", + "trafficStats": { + "incomingCompressionRatio": 0.06225, + "incomingOctetsAppLevel": 256000, + "incomingOctetsWebSocketLevel": 15936, + "incomingOctetsWireLevel": 21938, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.3766315261044177, + "outgoingCompressionRatio": 0.0672578125, + "outgoingOctetsAppLevel": 256000, + "outgoingOctetsWebSocketLevel": 17218, + "outgoingOctetsWireLevel": 19220, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.11627366709257754, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "13": 42, + "14": 70, + "15": 42, + "16": 138, + "17": 105, + "18": 99, + "19": 125, + "20": 72, + "21": 76, + "22": 54, + "23": 53, + "24": 38, + "25": 29, + "26": 22, + "27": 10, + "28": 4, + "29": 5, + "30": 1, + "31": 2, + "32": 1, + "33": 2, + "34": 1, + "36": 1, + "37": 1, + "39": 1, + "41": 2, + "43": 1, + "61": 1, + "66": 1, + "147": 1, + "252": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333034266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 120 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88828342f4f980aa" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "8342f4f9" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_1_4.html b/autobahn/client/tungstenite_case_12_1_4.html new file mode 100644 index 0000000..a234071 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_4.html @@ -0,0 +1,418 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.1.4 : Pass - 599 ms @ 2020-09-07T18:44:09.681Z

+

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=305&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: +eWAWQ90JR9PltNCf0+jLA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 4OsGjYxKS1dH9Kie1CbbW4sWXZk=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
43143
446264
4513585
4614644
47241128
48693312
49562744
50562800
51633213
52663432
53512703
54784212
55442420
56502800
57241368
58331914
59402360
6014840
6113793
6216992
6312756
6410640
6512780
66181188
67171139
68241632
69201380
70251750
71312201
72141008
73141022
7412888
758600
7610760
773231
785390
79179
80180
81181
832166
842168
853255
883264
89189
90190
924368
952190
97197
1001100
1021102
1051105
1062212
1073321
1122224
1161116
1741174
2571257
Total100258478
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
39139
40140
414164
445220
45145
464184
479423
48221056
49331617
50321600
51391989
52683536
53482544
54633402
55603300
56673752
57663762
58271566
59492891
60291740
61181098
6216992
63311953
64181152
65161040
668528
67191273
68211428
69161104
70292030
71181278
72282016
73312263
7410740
7511825
76181368
7710770
788624
794316
803240
82182
832166
843252
863258
87187
88188
893267
912182
922184
944376
96196
97197
992198
1001100
1011101
1041104
1052210
1061106
1071107
1081108
1092218
1101110
1141114
1701170
2521252
Total100260945
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333035266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 240.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882582549a55bcd
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3538323534396135
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_1_4.json b/autobahn/client/tungstenite_case_12_1_4.json new file mode 100644 index 0000000..ba0a53f --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_4.json @@ -0,0 +1,265 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 305, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 599, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=305&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: +eWAWQ90JR9PltNCf0+jLA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 4OsGjYxKS1dH9Kie1CbbW4sWXZk=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.1.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "43": 1, + "44": 6, + "45": 13, + "46": 14, + "47": 24, + "48": 69, + "49": 56, + "50": 56, + "51": 63, + "52": 66, + "53": 51, + "54": 78, + "55": 44, + "56": 50, + "57": 24, + "58": 33, + "59": 40, + "60": 14, + "61": 13, + "62": 16, + "63": 12, + "64": 10, + "65": 12, + "66": 18, + "67": 17, + "68": 24, + "69": 20, + "70": 25, + "71": 31, + "72": 14, + "73": 14, + "74": 12, + "75": 8, + "76": 10, + "77": 3, + "78": 5, + "79": 1, + "80": 1, + "81": 1, + "83": 2, + "84": 2, + "85": 3, + "88": 3, + "89": 1, + "90": 1, + "92": 4, + "95": 2, + "97": 1, + "100": 1, + "102": 1, + "105": 1, + "106": 2, + "107": 3, + "112": 2, + "116": 1, + "174": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:09.681Z", + "trafficStats": { + "incomingCompressionRatio": 0.0509873046875, + "incomingOctetsAppLevel": 1024000, + "incomingOctetsWebSocketLevel": 52211, + "incomingOctetsWireLevel": 58213, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.11495661833713203, + "outgoingCompressionRatio": 0.0573115234375, + "outgoingOctetsAppLevel": 1024000, + "outgoingOctetsWebSocketLevel": 58687, + "outgoingOctetsWireLevel": 60689, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.034113176683081434, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "39": 1, + "40": 1, + "41": 4, + "44": 5, + "45": 1, + "46": 4, + "47": 9, + "48": 22, + "49": 33, + "50": 32, + "51": 39, + "52": 68, + "53": 48, + "54": 63, + "55": 60, + "56": 67, + "57": 66, + "58": 27, + "59": 49, + "60": 29, + "61": 18, + "62": 16, + "63": 31, + "64": 18, + "65": 16, + "66": 8, + "67": 19, + "68": 21, + "69": 16, + "70": 29, + "71": 18, + "72": 28, + "73": 31, + "74": 10, + "75": 11, + "76": 18, + "77": 10, + "78": 8, + "79": 4, + "80": 3, + "82": 1, + "83": 2, + "84": 3, + "86": 3, + "87": 1, + "88": 1, + "89": 3, + "91": 2, + "92": 2, + "94": 4, + "96": 1, + "97": 1, + "99": 2, + "100": 1, + "101": 1, + "104": 1, + "105": 2, + "106": 1, + "107": 1, + "108": 1, + "109": 2, + "110": 1, + "114": 1, + "170": 1, + "252": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333035266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 240 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882582549a55bcd" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "582549a5" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_1_5.html b/autobahn/client/tungstenite_case_12_1_5.html new file mode 100644 index 0000000..07b30b9 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_5.html @@ -0,0 +1,535 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.1.5 : Pass - 777 ms @ 2020-09-07T18:44:10.281Z

+

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=306&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: MrexytLQl0q1tKtS238bVw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: mco8MTdq+MO7t/SqFp7dAPOSWhs=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
1302260
1342268
1366816
1374548
138121656
139111529
140141960
1417987
142111562
143182574
144121728
14591305
146121752
14791323
148121776
149172533
150182700
151274077
152263952
153304590
154355390
155213255
156243744
157213297
1586948
159111749
16071120
161101610
162132106
163121956
164193116
165101650
166111826
167111837
168172856
169142366
170142380
171111881
172122064
173152595
174111914
175193325
17681408
17781416
17891602
179101790
1805900
1813543
1825910
18371281
184162944
1852370
186112046
1874748
1883564
18991701
190132470
191112101
19271344
19391737
194101940
19571365
1965980
197132561
19891782
199173383
200173400
201142814
202204040
203183654
204122448
205122460
20671442
20761242
20861248
2091209
2103630
2114844
2132426
2142428
2151215
2162432
2172434
2182436
21961314
2203660
2211221
2241224
2251225
2261226
2272454
2281228
2303690
2323696
23351165
2344936
2354940
23651180
2373711
2382476
2393717
2403720
2412482
2424968
2432486
2442488
2454980
2462492
2473741
2483744
2491249
2513753
2522504
2542508
2552510
2571257
2581258
3081308
Total1002176088
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
1481148
1492298
1502300
1514604
1533459
1542308
1552310
1563468
1571157
1582316
1591159
1606960
1615805
1621162
16371141
16471148
165101650
166132158
167101670
168132184
169142366
170193230
171203420
172162752
173284844
174203480
175244200
176234048
177234071
178234094
179285012
180203600
181193439
182173094
183122196
184224048
185264810
186122232
187132431
188152820
189112079
190112090
191163056
192112112
19391737
19471358
195101950
1963588
19791773
198112178
1995995
2004800
201102010
202102020
2034812
20471428
2051205
2063618
20751035
20851040
20951045
210102100
211112321
212102120
213122556
214102140
21571505
2164864
21791953
218112398
219102190
220173740
22161326
222122664
223143122
22471568
225132925
226112486
22792043
228112508
229153435
230122760
231163696
23271624
23361398
2343702
2352470
2361236
2402480
24251210
2432486
2444976
2452490
2464984
2471247
2484992
2491249
2512502
25241008
25341012
2541254
2551255
25641024
2572514
2583774
2591259
26061560
2613783
26261572
26351315
26451320
26592385
26651330
26741068
2681268
2693807
2701270
2721272
2811281
2851285
3061306
Total1002198913
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333036266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882282d3bf52bc5
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3238326433626635
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_1_5.json b/autobahn/client/tungstenite_case_12_1_5.json new file mode 100644 index 0000000..017b8ff --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_5.json @@ -0,0 +1,382 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 306, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 777, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=306&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: MrexytLQl0q1tKtS238bVw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: mco8MTdq+MO7t/SqFp7dAPOSWhs=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.1.5", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "130": 2, + "134": 2, + "136": 6, + "137": 4, + "138": 12, + "139": 11, + "140": 14, + "141": 7, + "142": 11, + "143": 18, + "144": 12, + "145": 9, + "146": 12, + "147": 9, + "148": 12, + "149": 17, + "150": 18, + "151": 27, + "152": 26, + "153": 30, + "154": 35, + "155": 21, + "156": 24, + "157": 21, + "158": 6, + "159": 11, + "160": 7, + "161": 10, + "162": 13, + "163": 12, + "164": 19, + "165": 10, + "166": 11, + "167": 11, + "168": 17, + "169": 14, + "170": 14, + "171": 11, + "172": 12, + "173": 15, + "174": 11, + "175": 19, + "176": 8, + "177": 8, + "178": 9, + "179": 10, + "180": 5, + "181": 3, + "182": 5, + "183": 7, + "184": 16, + "185": 2, + "186": 11, + "187": 4, + "188": 3, + "189": 9, + "190": 13, + "191": 11, + "192": 7, + "193": 9, + "194": 10, + "195": 7, + "196": 5, + "197": 13, + "198": 9, + "199": 17, + "200": 17, + "201": 14, + "202": 20, + "203": 18, + "204": 12, + "205": 12, + "206": 7, + "207": 6, + "208": 6, + "209": 1, + "210": 3, + "211": 4, + "213": 2, + "214": 2, + "215": 1, + "216": 2, + "217": 2, + "218": 2, + "219": 6, + "220": 3, + "221": 1, + "224": 1, + "225": 1, + "226": 1, + "227": 2, + "228": 1, + "230": 3, + "232": 3, + "233": 5, + "234": 4, + "235": 4, + "236": 5, + "237": 3, + "238": 2, + "239": 3, + "240": 3, + "241": 2, + "242": 4, + "243": 2, + "244": 2, + "245": 4, + "246": 2, + "247": 3, + "248": 3, + "249": 1, + "251": 3, + "252": 2, + "254": 2, + "255": 2, + "257": 1, + "258": 1, + "308": 1 + }, + "started": "2020-09-07T18:44:10.281Z", + "trafficStats": { + "incomingCompressionRatio": 0.040973388671875, + "incomingOctetsAppLevel": 4096000, + "incomingOctetsWebSocketLevel": 167827, + "incomingOctetsWireLevel": 175823, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.047644300380749224, + "outgoingCompressionRatio": 0.047523681640625, + "outgoingOctetsAppLevel": 4096000, + "outgoingOctetsWebSocketLevel": 194657, + "outgoingOctetsWireLevel": 198657, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.02054896561644328, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "148": 1, + "149": 2, + "150": 2, + "151": 4, + "153": 3, + "154": 2, + "155": 2, + "156": 3, + "157": 1, + "158": 2, + "159": 1, + "160": 6, + "161": 5, + "162": 1, + "163": 7, + "164": 7, + "165": 10, + "166": 13, + "167": 10, + "168": 13, + "169": 14, + "170": 19, + "171": 20, + "172": 16, + "173": 28, + "174": 20, + "175": 24, + "176": 23, + "177": 23, + "178": 23, + "179": 28, + "180": 20, + "181": 19, + "182": 17, + "183": 12, + "184": 22, + "185": 26, + "186": 12, + "187": 13, + "188": 15, + "189": 11, + "190": 11, + "191": 16, + "192": 11, + "193": 9, + "194": 7, + "195": 10, + "196": 3, + "197": 9, + "198": 11, + "199": 5, + "200": 4, + "201": 10, + "202": 10, + "203": 4, + "204": 7, + "205": 1, + "206": 3, + "207": 5, + "208": 5, + "209": 5, + "210": 10, + "211": 11, + "212": 10, + "213": 12, + "214": 10, + "215": 7, + "216": 4, + "217": 9, + "218": 11, + "219": 10, + "220": 17, + "221": 6, + "222": 12, + "223": 14, + "224": 7, + "225": 13, + "226": 11, + "227": 9, + "228": 11, + "229": 15, + "230": 12, + "231": 16, + "232": 7, + "233": 6, + "234": 3, + "235": 2, + "236": 1, + "240": 2, + "242": 5, + "243": 2, + "244": 4, + "245": 2, + "246": 4, + "247": 1, + "248": 4, + "249": 1, + "251": 2, + "252": 4, + "253": 4, + "254": 1, + "255": 1, + "256": 4, + "257": 2, + "258": 3, + "259": 1, + "260": 6, + "261": 3, + "262": 6, + "263": 5, + "264": 5, + "265": 9, + "266": 5, + "267": 4, + "268": 1, + "269": 3, + "270": 1, + "272": 1, + "281": 1, + "285": 1, + "306": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333036266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882282d3bf52bc5" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "282d3bf5" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_1_6.html b/autobahn/client/tungstenite_case_12_1_6.html new file mode 100644 index 0000000..10d31a5 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_6.html @@ -0,0 +1,645 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.1.6 : Pass - 1003 ms @ 2020-09-07T18:44:11.059Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=307&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: L2VPeGUAZHd1qaY3k0xQIw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: El1Orr/eXoS1kagC6rsJJeM3RtY=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2481248
2494996
2503750
2511251
25241008
25371771
2543762
25561530
25661536
25751285
258102580
259133367
26071820
26182088
26241048
26382104
26471848
26551325
26651330
26751335
268112948
26961614
27051350
27192439
272154080
273102730
274133562
275143850
276123312
277133601
278123336
279102790
280174760
281143934
28292538
283123396
28482272
28592565
28672002
28792583
288102880
289102890
29082320
29141164
292164672
2933879
29461764
29592655
29641184
29782376
29892682
299113289
30082400
30151505
3022604
30351515
304123648
30592745
306123672
307113377
30861848
30982472
31072170
31151555
31292808
313103130
314103140
31561890
316154740
31761902
31851590
319103190
320103200
321123852
3223966
32351615
32461944
3253975
32661956
32782616
32861968
32941316
330113630
33182648
332134316
3333999
33451670
33551675
33682688
33762022
3382676
3392678
34051700
34141364
34241368
34351715
34451720
34541380
34631038
3471347
35041400
35162106
3522704
3541354
35831074
35951795
36051800
36131083
3622724
36351815
36451820
36541460
36662196
3672734
36862208
36931107
37062220
37172597
37241488
37351865
3741374
3752750
3772754
3781378
3841384
3872774
3881388
3891389
39072730
39162346
3922784
39362358
39431182
3952790
39651980
39783176
39872786
39941596
400104000
40183208
40231206
40372821
40493636
40562430
40631218
40741628
40862448
40952045
41052050
41162466
41231236
41341652
41431242
41562490
4171417
4181418
41941676
4201420
4211421
4222844
4242848
42552125
42631278
4271427
4282856
4321432
4691469
Total1002320226
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
30151505
30261812
3032606
30451520
30561830
306113366
307103070
3083924
3091309
31051550
3111311
3123936
3131313
31451570
31572205
31641264
31761902
318123816
31941276
320123840
321113531
322103220
323134199
324103240
325185850
326165216
327154905
328103280
329216909
330216930
331196289
332134316
333165328
33472338
33572345
336124032
337113707
338103380
33951695
34072380
34141364
34251710
34351715
34431032
3451345
34651730
34751735
34862088
34993141
35093150
35193159
35282816
353103530
35482832
355144970
35693204
357103570
358124296
35993231
36082880
361124332
36282896
363103630
36441456
36562190
36662196
3672734
3682736
369114059
37072590
3712742
372114092
37372611
37482992
37531125
37672632
37783016
37862268
379103790
38062280
38141524
3822764
38372681
3842768
38531155
38631158
38741548
38831164
38931167
39051950
3912782
39241568
39331179
39441576
39531185
39631188
39762382
39841592
39931197
4001400
4011401
40241608
40331209
40431212
4051405
40641624
40783256
40831224
4092818
41072870
41162466
4122824
4131413
4141414
41541660
416124992
41752085
41831254
41931257
4202840
4212842
42272954
42341692
42431272
42531275
42652130
4272854
42931287
43031290
43131293
4321432
4331433
43431302
4361436
4371437
4412882
4421442
44331329
4451445
4471447
44831344
4491449
45031350
45131353
4521452
45394077
45483632
4552910
45673192
457104570
45894122
4592918
46073220
461135993
46262772
46383704
46452320
46583720
46694194
46762802
46883744
4692938
47041880
4711471
4722944
4732946
4741474
4751475
4762952
4771477
4781478
47931437
4801480
4821482
4841484
4872974
4881488
48931467
4901490
4921492
4931493
Total1002373530
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333037266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882f4d51895f73d
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6634643531383935
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_1_6.json b/autobahn/client/tungstenite_case_12_1_6.json new file mode 100644 index 0000000..1996fd5 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_6.json @@ -0,0 +1,492 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 307, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 1003, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=307&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: L2VPeGUAZHd1qaY3k0xQIw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: El1Orr/eXoS1kagC6rsJJeM3RtY=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.1.6", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "248": 1, + "249": 4, + "250": 3, + "251": 1, + "252": 4, + "253": 7, + "254": 3, + "255": 6, + "256": 6, + "257": 5, + "258": 10, + "259": 13, + "260": 7, + "261": 8, + "262": 4, + "263": 8, + "264": 7, + "265": 5, + "266": 5, + "267": 5, + "268": 11, + "269": 6, + "270": 5, + "271": 9, + "272": 15, + "273": 10, + "274": 13, + "275": 14, + "276": 12, + "277": 13, + "278": 12, + "279": 10, + "280": 17, + "281": 14, + "282": 9, + "283": 12, + "284": 8, + "285": 9, + "286": 7, + "287": 9, + "288": 10, + "289": 10, + "290": 8, + "291": 4, + "292": 16, + "293": 3, + "294": 6, + "295": 9, + "296": 4, + "297": 8, + "298": 9, + "299": 11, + "300": 8, + "301": 5, + "302": 2, + "303": 5, + "304": 12, + "305": 9, + "306": 12, + "307": 11, + "308": 6, + "309": 8, + "310": 7, + "311": 5, + "312": 9, + "313": 10, + "314": 10, + "315": 6, + "316": 15, + "317": 6, + "318": 5, + "319": 10, + "320": 10, + "321": 12, + "322": 3, + "323": 5, + "324": 6, + "325": 3, + "326": 6, + "327": 8, + "328": 6, + "329": 4, + "330": 11, + "331": 8, + "332": 13, + "333": 3, + "334": 5, + "335": 5, + "336": 8, + "337": 6, + "338": 2, + "339": 2, + "340": 5, + "341": 4, + "342": 4, + "343": 5, + "344": 5, + "345": 4, + "346": 3, + "347": 1, + "350": 4, + "351": 6, + "352": 2, + "354": 1, + "358": 3, + "359": 5, + "360": 5, + "361": 3, + "362": 2, + "363": 5, + "364": 5, + "365": 4, + "366": 6, + "367": 2, + "368": 6, + "369": 3, + "370": 6, + "371": 7, + "372": 4, + "373": 5, + "374": 1, + "375": 2, + "377": 2, + "378": 1, + "384": 1, + "387": 2, + "388": 1, + "389": 1, + "390": 7, + "391": 6, + "392": 2, + "393": 6, + "394": 3, + "395": 2, + "396": 5, + "397": 8, + "398": 7, + "399": 4, + "400": 10, + "401": 8, + "402": 3, + "403": 7, + "404": 9, + "405": 6, + "406": 3, + "407": 4, + "408": 6, + "409": 5, + "410": 5, + "411": 6, + "412": 3, + "413": 4, + "414": 3, + "415": 6, + "417": 1, + "418": 1, + "419": 4, + "420": 1, + "421": 1, + "422": 2, + "424": 2, + "425": 5, + "426": 3, + "427": 1, + "428": 2, + "432": 1, + "469": 1 + }, + "started": "2020-09-07T18:44:11.059Z", + "trafficStats": { + "incomingCompressionRatio": 0.0380811767578125, + "incomingOctetsAppLevel": 8192000, + "incomingOctetsWebSocketLevel": 311961, + "incomingOctetsWireLevel": 319961, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.025644231169921882, + "outgoingCompressionRatio": 0.045077392578125, + "outgoingOctetsAppLevel": 8192000, + "outgoingOctetsWebSocketLevel": 369274, + "outgoingOctetsWireLevel": 373274, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.010832065079046995, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "301": 5, + "302": 6, + "303": 2, + "304": 5, + "305": 6, + "306": 11, + "307": 10, + "308": 3, + "309": 1, + "310": 5, + "311": 1, + "312": 3, + "313": 1, + "314": 5, + "315": 7, + "316": 4, + "317": 6, + "318": 12, + "319": 4, + "320": 12, + "321": 11, + "322": 10, + "323": 13, + "324": 10, + "325": 18, + "326": 16, + "327": 15, + "328": 10, + "329": 21, + "330": 21, + "331": 19, + "332": 13, + "333": 16, + "334": 7, + "335": 7, + "336": 12, + "337": 11, + "338": 10, + "339": 5, + "340": 7, + "341": 4, + "342": 5, + "343": 5, + "344": 3, + "345": 1, + "346": 5, + "347": 5, + "348": 6, + "349": 9, + "350": 9, + "351": 9, + "352": 8, + "353": 10, + "354": 8, + "355": 14, + "356": 9, + "357": 10, + "358": 12, + "359": 9, + "360": 8, + "361": 12, + "362": 8, + "363": 10, + "364": 4, + "365": 6, + "366": 6, + "367": 2, + "368": 2, + "369": 11, + "370": 7, + "371": 2, + "372": 11, + "373": 7, + "374": 8, + "375": 3, + "376": 7, + "377": 8, + "378": 6, + "379": 10, + "380": 6, + "381": 4, + "382": 2, + "383": 7, + "384": 2, + "385": 3, + "386": 3, + "387": 4, + "388": 3, + "389": 3, + "390": 5, + "391": 2, + "392": 4, + "393": 3, + "394": 4, + "395": 3, + "396": 3, + "397": 6, + "398": 4, + "399": 3, + "400": 1, + "401": 1, + "402": 4, + "403": 3, + "404": 3, + "405": 1, + "406": 4, + "407": 8, + "408": 3, + "409": 2, + "410": 7, + "411": 6, + "412": 2, + "413": 1, + "414": 1, + "415": 4, + "416": 12, + "417": 5, + "418": 3, + "419": 3, + "420": 2, + "421": 2, + "422": 7, + "423": 4, + "424": 3, + "425": 3, + "426": 5, + "427": 2, + "429": 3, + "430": 3, + "431": 3, + "432": 1, + "433": 1, + "434": 3, + "436": 1, + "437": 1, + "441": 2, + "442": 1, + "443": 3, + "445": 1, + "447": 1, + "448": 3, + "449": 1, + "450": 3, + "451": 3, + "452": 1, + "453": 9, + "454": 8, + "455": 2, + "456": 7, + "457": 10, + "458": 9, + "459": 2, + "460": 7, + "461": 13, + "462": 6, + "463": 8, + "464": 5, + "465": 8, + "466": 9, + "467": 6, + "468": 8, + "469": 2, + "470": 4, + "471": 1, + "472": 2, + "473": 2, + "474": 1, + "475": 1, + "476": 2, + "477": 1, + "478": 1, + "479": 3, + "480": 1, + "482": 1, + "484": 1, + "487": 2, + "488": 1, + "489": 3, + "490": 1, + "492": 1, + "493": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333037266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882f4d51895f73d" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "f4d51895" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_1_7.html b/autobahn/client/tungstenite_case_12_1_7.html new file mode 100644 index 0000000..a81045b --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_7.html @@ -0,0 +1,842 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.1.7 : Pass - 1449 ms @ 2020-09-07T18:44:12.063Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=308&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 1hdlaiFtyeWkxOtihh8+xg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: FsiGvltfVAcG4+qTONgCwe5Z6QQ=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
4922984
4932986
4942988
4952990
49652480
49741988
49852490
49931497
50031500
501105010
502126024
50352515
50494536
50584040
50684048
50731521
50863048
509105090
51084080
51173577
51273584
51342052
5141514
51531545
51621032
51742068
51842072
51931557
52021040
52121042
52252610
52342092
52463144
525115775
52694734
527105270
528105280
529115819
53094770
531126372
532115852
53373731
53494806
53584280
536126432
53752685
53852690
53973773
54052700
5411541
54231626
54331629
5441544
54521090
54663276
54721094
54821096
54963294
55142204
55221104
5531553
55421108
55542220
55663336
55752785
55842232
55984472
560126720
561105610
562158430
563137319
56452820
56595085
56663396
56763402
56863408
5701570
57131713
57242288
57321146
57421148
57531725
5761576
57763462
57852890
57942316
58042320
58142324
58221164
58342332
5841584
5851585
58631758
58831764
58921178
59021180
59142364
59221184
59321186
59421188
59521190
5961596
59721194
59842392
59942396
60042400
60184808
60231806
60342412
60442416
60542420
60642424
60763642
60831824
61021220
61131833
61231836
61342452
61474298
61542460
61631848
61731851
6181618
61921238
62031860
6211621
62221244
62321246
62421248
62521250
6261626
62921258
63021260
63131893
63231896
63331899
6341634
63531905
6371637
63831914
63921278
64031920
64142564
64321286
64431932
6451645
64653230
6471647
64842592
64921298
6501650
6521652
65321306
65421308
65521310
65721314
6581658
6591659
6601660
66121322
66321326
66642664
66742668
6681668
66942676
67032010
67132013
67221344
67332019
6741674
6751675
6761676
67721354
67821356
67921358
68064080
68153405
68253410
68332049
68453420
68553425
68753435
68821376
68932067
69021380
6911691
69221384
69332079
69421388
69532085
69632088
69732091
69842792
69921398
70021400
70121402
70274914
70321406
70432112
70574935
70642824
70732121
7081708
70932127
71053550
71121422
71232136
71385704
71442856
71532145
71621432
71753585
71853590
71942876
72042880
72132163
72232166
72385784
72442896
72553625
72675082
72732181
72875096
72942916
73042920
73142924
732118052
73342932
73464404
73532205
73642944
73742948
73832214
74053700
74132223
74232226
74321486
7441744
74521490
7461746
74742988
74842992
7491749
75053750
7511751
7521752
75321506
75421508
75532265
75632268
7571757
7601760
76221524
7781778
77932337
7811781
7831783
7851785
7861786
7871787
7881788
7891789
7901790
7921792
7941794
Total1002609789
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
60121202
60231806
6031603
60421208
6051605
6061606
6071607
6081608
6091609
61021220
61131833
61274284
61342452
61463684
615106150
61674312
61753085
61831854
619106190
62053100
6211621
62242488
62374361
62495616
62585000
626116886
62795643
628106280
629159435
63095670
631159465
63274424
63363798
63485072
63585080
63674452
63731911
63853190
63942556
64074480
64153205
64242568
64353215
64453220
64574515
64642584
64721294
6481648
64963894
65031950
65121302
65221304
65342612
65463924
65553275
65685248
65763942
65874606
65921318
66074620
66195949
662117282
663106630
664117304
66585320
66674662
66785336
66874676
66942676
67085360
67164026
67242688
67353365
67442696
67521350
67621352
67742708
6781678
67942716
68042720
68142724
68221364
6831683
68442736
68542740
6861686
68721374
68842752
68921378
69032070
69132073
6921692
69332079
69432082
69553475
69642784
69732091
69842792
69942796
70032100
70121402
70232106
70321406
70464224
70532115
70685648
70721414
7081708
7091709
71032130
71132133
7121712
7131713
71421428
71532145
71621432
71721434
71842872
71921438
72032160
72121442
72253610
72321446
72421448
72553625
72621452
72721454
7281728
7291729
73032190
73232196
7331733
73442936
73521470
73653680
73721474
73932217
74032220
74153705
74332229
74432232
74521490
74621492
7471747
7481748
74975243
7501750
7511751
7521752
7531753
7541754
75543020
75643024
75732271
75853790
75932277
76021520
76221524
76332289
76443056
7651765
7661766
76732301
7691769
7701770
77132313
7721772
77321546
7741774
77532325
7761776
7771777
7781778
7801780
7831783
78621572
78721574
78832364
7891789
79043160
79121582
79221584
7941794
79543180
79753985
79821596
8001800
80121602
80221604
8031803
8041804
80532415
80675642
80764842
80821616
80964854
81043240
81154055
81232436
81321626
81421628
81521630
81643264
81732451
81843272
81932457
82021640
82132463
82354115
82421648
82564950
82754135
82843312
82943316
83043320
83143324
83221664
8331833
83486672
83521670
83621672
83743348
83843352
83921678
84054200
84121682
84275894
84332529
84465064
84521690
8461846
84721694
84821696
8491849
85054250
851108510
85254260
85343412
85454270
85554275
8561856
85754285
85832574
85932577
86043440
86143444
86232586
86376041
86432592
86543460
86665196
86765202
86876076
86932607
87021740
8711871
8721872
87332619
87432622
87521750
87721754
8781878
8791879
88121762
88221764
88421768
88621772
8871887
88821776
8901890
8931893
8941894
8991899
9001900
9041904
9061906
90743628
9081908
9101910
Total1002725538
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333038266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888238bfe5133b57
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3338626665353133
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_1_7.json b/autobahn/client/tungstenite_case_12_1_7.json new file mode 100644 index 0000000..4a58cf7 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_7.json @@ -0,0 +1,689 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 308, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 1449, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=308&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 1hdlaiFtyeWkxOtihh8+xg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: FsiGvltfVAcG4+qTONgCwe5Z6QQ=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.1.7", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "492": 2, + "493": 2, + "494": 2, + "495": 2, + "496": 5, + "497": 4, + "498": 5, + "499": 3, + "500": 3, + "501": 10, + "502": 12, + "503": 5, + "504": 9, + "505": 8, + "506": 8, + "507": 3, + "508": 6, + "509": 10, + "510": 8, + "511": 7, + "512": 7, + "513": 4, + "514": 1, + "515": 3, + "516": 2, + "517": 4, + "518": 4, + "519": 3, + "520": 2, + "521": 2, + "522": 5, + "523": 4, + "524": 6, + "525": 11, + "526": 9, + "527": 10, + "528": 10, + "529": 11, + "530": 9, + "531": 12, + "532": 11, + "533": 7, + "534": 9, + "535": 8, + "536": 12, + "537": 5, + "538": 5, + "539": 7, + "540": 5, + "541": 1, + "542": 3, + "543": 3, + "544": 1, + "545": 2, + "546": 6, + "547": 2, + "548": 2, + "549": 6, + "551": 4, + "552": 2, + "553": 1, + "554": 2, + "555": 4, + "556": 6, + "557": 5, + "558": 4, + "559": 8, + "560": 12, + "561": 10, + "562": 15, + "563": 13, + "564": 5, + "565": 9, + "566": 6, + "567": 6, + "568": 6, + "570": 1, + "571": 3, + "572": 4, + "573": 2, + "574": 2, + "575": 3, + "576": 1, + "577": 6, + "578": 5, + "579": 4, + "580": 4, + "581": 4, + "582": 2, + "583": 4, + "584": 1, + "585": 1, + "586": 3, + "588": 3, + "589": 2, + "590": 2, + "591": 4, + "592": 2, + "593": 2, + "594": 2, + "595": 2, + "596": 1, + "597": 2, + "598": 4, + "599": 4, + "600": 4, + "601": 8, + "602": 3, + "603": 4, + "604": 4, + "605": 4, + "606": 4, + "607": 6, + "608": 3, + "610": 2, + "611": 3, + "612": 3, + "613": 4, + "614": 7, + "615": 4, + "616": 3, + "617": 3, + "618": 1, + "619": 2, + "620": 3, + "621": 1, + "622": 2, + "623": 2, + "624": 2, + "625": 2, + "626": 1, + "629": 2, + "630": 2, + "631": 3, + "632": 3, + "633": 3, + "634": 1, + "635": 3, + "637": 1, + "638": 3, + "639": 2, + "640": 3, + "641": 4, + "643": 2, + "644": 3, + "645": 1, + "646": 5, + "647": 1, + "648": 4, + "649": 2, + "650": 1, + "652": 1, + "653": 2, + "654": 2, + "655": 2, + "657": 2, + "658": 1, + "659": 1, + "660": 1, + "661": 2, + "663": 2, + "666": 4, + "667": 4, + "668": 1, + "669": 4, + "670": 3, + "671": 3, + "672": 2, + "673": 3, + "674": 1, + "675": 1, + "676": 1, + "677": 2, + "678": 2, + "679": 2, + "680": 6, + "681": 5, + "682": 5, + "683": 3, + "684": 5, + "685": 5, + "687": 5, + "688": 2, + "689": 3, + "690": 2, + "691": 1, + "692": 2, + "693": 3, + "694": 2, + "695": 3, + "696": 3, + "697": 3, + "698": 4, + "699": 2, + "700": 2, + "701": 2, + "702": 7, + "703": 2, + "704": 3, + "705": 7, + "706": 4, + "707": 3, + "708": 1, + "709": 3, + "710": 5, + "711": 2, + "712": 3, + "713": 8, + "714": 4, + "715": 3, + "716": 2, + "717": 5, + "718": 5, + "719": 4, + "720": 4, + "721": 3, + "722": 3, + "723": 8, + "724": 4, + "725": 5, + "726": 7, + "727": 3, + "728": 7, + "729": 4, + "730": 4, + "731": 4, + "732": 11, + "733": 4, + "734": 6, + "735": 3, + "736": 4, + "737": 4, + "738": 3, + "740": 5, + "741": 3, + "742": 3, + "743": 2, + "744": 1, + "745": 2, + "746": 1, + "747": 4, + "748": 4, + "749": 1, + "750": 5, + "751": 1, + "752": 1, + "753": 2, + "754": 2, + "755": 3, + "756": 3, + "757": 1, + "760": 1, + "762": 2, + "778": 1, + "779": 3, + "781": 1, + "783": 1, + "785": 1, + "786": 1, + "787": 1, + "788": 1, + "789": 1, + "790": 1, + "792": 1, + "794": 1 + }, + "started": "2020-09-07T18:44:12.063Z", + "trafficStats": { + "incomingCompressionRatio": 0.036714111328125, + "incomingOctetsAppLevel": 16384000, + "incomingOctetsWebSocketLevel": 601524, + "incomingOctetsWireLevel": 609524, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.013299552470059383, + "outgoingCompressionRatio": 0.0440235595703125, + "outgoingOctetsAppLevel": 16384000, + "outgoingOctetsWebSocketLevel": 721282, + "outgoingOctetsWireLevel": 725282, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.005545681162152944, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "601": 2, + "602": 3, + "603": 1, + "604": 2, + "605": 1, + "606": 1, + "607": 1, + "608": 1, + "609": 1, + "610": 2, + "611": 3, + "612": 7, + "613": 4, + "614": 6, + "615": 10, + "616": 7, + "617": 5, + "618": 3, + "619": 10, + "620": 5, + "621": 1, + "622": 4, + "623": 7, + "624": 9, + "625": 8, + "626": 11, + "627": 9, + "628": 10, + "629": 15, + "630": 9, + "631": 15, + "632": 7, + "633": 6, + "634": 8, + "635": 8, + "636": 7, + "637": 3, + "638": 5, + "639": 4, + "640": 7, + "641": 5, + "642": 4, + "643": 5, + "644": 5, + "645": 7, + "646": 4, + "647": 2, + "648": 1, + "649": 6, + "650": 3, + "651": 2, + "652": 2, + "653": 4, + "654": 6, + "655": 5, + "656": 8, + "657": 6, + "658": 7, + "659": 2, + "660": 7, + "661": 9, + "662": 11, + "663": 10, + "664": 11, + "665": 8, + "666": 7, + "667": 8, + "668": 7, + "669": 4, + "670": 8, + "671": 6, + "672": 4, + "673": 5, + "674": 4, + "675": 2, + "676": 2, + "677": 4, + "678": 1, + "679": 4, + "680": 4, + "681": 4, + "682": 2, + "683": 1, + "684": 4, + "685": 4, + "686": 1, + "687": 2, + "688": 4, + "689": 2, + "690": 3, + "691": 3, + "692": 1, + "693": 3, + "694": 3, + "695": 5, + "696": 4, + "697": 3, + "698": 4, + "699": 4, + "700": 3, + "701": 2, + "702": 3, + "703": 2, + "704": 6, + "705": 3, + "706": 8, + "707": 2, + "708": 1, + "709": 1, + "710": 3, + "711": 3, + "712": 1, + "713": 1, + "714": 2, + "715": 3, + "716": 2, + "717": 2, + "718": 4, + "719": 2, + "720": 3, + "721": 2, + "722": 5, + "723": 2, + "724": 2, + "725": 5, + "726": 2, + "727": 2, + "728": 1, + "729": 1, + "730": 3, + "732": 3, + "733": 1, + "734": 4, + "735": 2, + "736": 5, + "737": 2, + "739": 3, + "740": 3, + "741": 5, + "743": 3, + "744": 3, + "745": 2, + "746": 2, + "747": 1, + "748": 1, + "749": 7, + "750": 1, + "751": 1, + "752": 1, + "753": 1, + "754": 1, + "755": 4, + "756": 4, + "757": 3, + "758": 5, + "759": 3, + "760": 2, + "762": 2, + "763": 3, + "764": 4, + "765": 1, + "766": 1, + "767": 3, + "769": 1, + "770": 1, + "771": 3, + "772": 1, + "773": 2, + "774": 1, + "775": 3, + "776": 1, + "777": 1, + "778": 1, + "780": 1, + "783": 1, + "786": 2, + "787": 2, + "788": 3, + "789": 1, + "790": 4, + "791": 2, + "792": 2, + "794": 1, + "795": 4, + "797": 5, + "798": 2, + "800": 1, + "801": 2, + "802": 2, + "803": 1, + "804": 1, + "805": 3, + "806": 7, + "807": 6, + "808": 2, + "809": 6, + "810": 4, + "811": 5, + "812": 3, + "813": 2, + "814": 2, + "815": 2, + "816": 4, + "817": 3, + "818": 4, + "819": 3, + "820": 2, + "821": 3, + "823": 5, + "824": 2, + "825": 6, + "827": 5, + "828": 4, + "829": 4, + "830": 4, + "831": 4, + "832": 2, + "833": 1, + "834": 8, + "835": 2, + "836": 2, + "837": 4, + "838": 4, + "839": 2, + "840": 5, + "841": 2, + "842": 7, + "843": 3, + "844": 6, + "845": 2, + "846": 1, + "847": 2, + "848": 2, + "849": 1, + "850": 5, + "851": 10, + "852": 5, + "853": 4, + "854": 5, + "855": 5, + "856": 1, + "857": 5, + "858": 3, + "859": 3, + "860": 4, + "861": 4, + "862": 3, + "863": 7, + "864": 3, + "865": 4, + "866": 6, + "867": 6, + "868": 7, + "869": 3, + "870": 2, + "871": 1, + "872": 1, + "873": 3, + "874": 3, + "875": 2, + "877": 2, + "878": 1, + "879": 1, + "881": 2, + "882": 2, + "884": 2, + "886": 2, + "887": 1, + "888": 2, + "890": 1, + "893": 1, + "894": 1, + "899": 1, + "900": 1, + "904": 1, + "906": 1, + "907": 4, + "908": 1, + "910": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333038266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888238bfe5133b57" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "38bfe513" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_1_8.html b/autobahn/client/tungstenite_case_12_1_8.html new file mode 100644 index 0000000..6498fc7 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_8.html @@ -0,0 +1,1001 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.1.8 : Pass - 2211 ms @ 2020-09-07T18:44:13.512Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=309&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Us9S0/J3drrAM3vufTxlmA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: yX/kinexZjUnUaz6i7MpWPxH3iY=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
9951995
9971997
9981998
9991999
100011000
100122002
100233006
100355015
100411004
100511005
100611006
100822016
101033030
101222024
101611016
101711017
101922038
102022040
102111021
102233066
102311023
102455120
102577175
102655130
102711027
102844112
102922058
103055150
103122062
103266192
103311033
103444136
103522070
103655180
103711037
103822076
103922078
104044160
104311043
104411044
104522090
104622092
104766282
104844192
104922098
105066300
105155255
105266312
105399477
105466324
105577385
105677392
105777399
105855290
105966354
106055300
106144244
106233186
106344252
106466384
106566390
106622132
106711067
106855340
106933207
107055350
107133213
107266432
107388584
107433222
107566450
107677532
107755385
107877546
107977553
108033240
108166486
108255410
108322166
108444336
108511085
108611086
108733261
108822176
108966534
109044360
109255460
109322186
109422188
109511095
109744388
109866588
109911099
110044400
110222204
110322206
110422208
110511105
110622212
110722214
110811108
110922218
111033330
111211112
111333339
111433342
111622232
111711117
112022240
112111121
112211122
112422248
112511125
112611126
112711127
112922258
113022260
113111131
113233396
113311133
113411134
113511135
113644544
113722274
113822276
113933417
114222284
114311143
114622292
114722294
114911149
115011150
115122302
115233456
115422308
115511155
115611156
115733471
115822316
116011160
116122322
116244648
116322326
116422328
116511165
116622332
116733501
116933507
117011170
117111171
117233516
117344692
117422348
117511175
117655880
117733531
117822356
117911179
118022360
118155905
118222364
118322366
118433552
118633558
118733561
118822376
118911189
119033570
119222384
119355965
119411194
119522390
119633588
119711197
119811198
119911199
120033600
120222404
120311203
120411204
120533615
120611206
120711207
120811208
120933627
121022420
121111211
121211212
121322426
121444856
121533645
121644864
121733651
121833654
121933657
122011220
122122442
122211222
122433672
122511225
122633678
122822456
122922458
123033690
123111231
123211232
123333699
123511235
123633708
123733711
123833714
123911239
124033720
124122482
124233726
124322486
124422488
124522490
124656230
124722494
124844992
125011250
125178757
125233756
125333759
125422508
125533765
125633768
125722514
125945036
126033780
126133783
126211262
126356315
126433792
126533795
126611266
126745068
126856340
126956345
127045080
127122542
127222544
127333819
127433822
127545100
127656380
127722554
127822556
127956395
128011280
128167686
128278974
128345132
1284810272
128556425
128622572
128767722
128833864
128967734
129045160
129179037
129256460
129379051
129422588
129533885
129611296
129722594
129879086
129956495
130045200
130145204
1302810416
1303911727
130445216
13051418270
13061114366
1307810456
130867848
130979163
131067860
131156555
131233936
131333939
131445256
131556575
131622632
131811318
131911319
132011320
132122642
132245288
132311323
132411324
132511325
132622652
133611336
135611356
136022720
136411364
136511365
136611366
136711367
136822736
136945476
137056850
137134113
137222744
137345492
137434122
137568250
137622752
137722754
137911379
138211382
138411384
138522770
138611386
138822776
139011390
139411394
139511395
139611396
139722794
139834194
140022800
140111401
140211402
140311403
140411404
140511405
140611406
140811408
140979863
141079870
141122822
141222824
141434242
141545660
141622832
141722834
141911419
142011420
Total10021192856
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
123611236
123922478
124011240
124111241
124211242
124311243
124411244
124544980
124611246
124822496
125022500
125122502
125211252
125311253
125433762
125511255
125645024
125711257
125833774
125911259
126011260
126133783
126256310
126322526
126433792
126522530
126645064
126745068
126822536
126978883
127056350
127245088
1273810184
127445096
1275911475
127633828
1277911493
127867668
127967674
12801114080
1281810248
1282911538
1283911547
128445136
128545140
1286810288
128756435
128856440
128956445
129022580
129145164
129211292
129333879
129456470
129545180
129633888
129745188
129856490
129956495
130033900
130167806
130267812
130345212
130445216
130511305
130611306
130745228
130822616
130933927
131022620
131133933
131245248
131322626
131411314
131622632
131722634
131811318
131945276
132133963
132211322
132311323
132422648
132522650
132745308
132822656
132911329
133011330
133122662
133222664
133311333
133422668
133634008
133711337
133922678
134034020
134122682
134211342
134322686
134422688
134545380
134622692
134768082
134811348
134911349
135156755
135245408
135322706
135556775
135645424
135811358
135934077
136034080
136122722
136211362
136322726
136411364
136622732
136745468
136811368
136945476
137011370
137222744
137322746
137434122
137711377
137822756
137911379
138011380
138134143
138234146
138311383
138434152
138534155
138611386
138711387
138922778
139134173
139222784
139311393
139422788
139522790
139611396
139722794
139811398
140111401
140222804
140311403
140411404
140511405
140622812
140922818
141011410
141122822
141211412
141368478
141422828
141511415
141634248
141745668
141811418
141911419
142011420
142145684
142222844
142322846
142411424
142522850
142611426
142745708
142922858
143122862
143245728
143411434
143511435
143634308
143722874
143945756
144011440
144122882
144222884
144411444
144645784
144722894
144811448
144922898
145011450
145122902
145222904
145322906
145434362
145522910
145622912
145722914
145911459
146022920
146111461
146211462
146322926
146411464
146534395
146622932
146722934
146822936
146945876
147045880
147168826
147234416
147322946
147422948
147511475
147622952
147734431
147834434
147922958
148022960
148111481
148211482
148334449
148445936
148568910
148634458
148722974
148845952
148934467
149022980
149111491
149234476
149334479
149422988
149534485
149657480
149822996
150034500
150123002
150223004
150323006
150423008
150534515
150623012
150711507
150834524
150923018
151011510
151123022
151357565
151423028
151523030
151611516
151746068
151846072
151934557
152046080
152269132
152423048
152511525
152611526
152834584
152957645
153123062
153234596
153311533
153446136
153546140
153657680
153757685
1538913842
153957695
154069240
1541710787
154269252
154334629
154457720
154511545
154634638
1547710829
154823096
154923098
155034650
155169306
155257760
155369318
155434662
155534665
155669336
155757785
1558812464
1559710913
15601117160
1561710927
1562710934
156323126
156469384
156557825
156657830
156757835
156823136
156934707
157057850
157157855
157234716
157334719
157411574
157511575
157623152
157723154
157811578
158034740
158123162
158234746
158323166
158511585
158623172
158723174
158823176
158923178
159023180
159123182
159211592
159311593
159711597
160411604
160711607
160823216
161123222
161311613
161411614
161711617
161846472
162111621
162323246
162423248
162511625
162669756
162734881
162811628
162923258
163011630
163223264
163411634
163623272
163723274
163911639
164134923
164334929
164423288
164669876
164711647
164823296
165023300
165123302
165223304
165323306
165411654
165523310
165723314
165811658
165923318
166023320
166111661
166423328
Total10021435121
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333039266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882554c4b1856a4
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3535346334623138
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_1_8.json b/autobahn/client/tungstenite_case_12_1_8.json new file mode 100644 index 0000000..0971954 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_8.json @@ -0,0 +1,848 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 309, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 2211, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=309&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Us9S0/J3drrAM3vufTxlmA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: yX/kinexZjUnUaz6i7MpWPxH3iY=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.1.8", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "995": 1, + "997": 1, + "998": 1, + "999": 1, + "1000": 1, + "1001": 2, + "1002": 3, + "1003": 5, + "1004": 1, + "1005": 1, + "1006": 1, + "1008": 2, + "1010": 3, + "1012": 2, + "1016": 1, + "1017": 1, + "1019": 2, + "1020": 2, + "1021": 1, + "1022": 3, + "1023": 1, + "1024": 5, + "1025": 7, + "1026": 5, + "1027": 1, + "1028": 4, + "1029": 2, + "1030": 5, + "1031": 2, + "1032": 6, + "1033": 1, + "1034": 4, + "1035": 2, + "1036": 5, + "1037": 1, + "1038": 2, + "1039": 2, + "1040": 4, + "1043": 1, + "1044": 1, + "1045": 2, + "1046": 2, + "1047": 6, + "1048": 4, + "1049": 2, + "1050": 6, + "1051": 5, + "1052": 6, + "1053": 9, + "1054": 6, + "1055": 7, + "1056": 7, + "1057": 7, + "1058": 5, + "1059": 6, + "1060": 5, + "1061": 4, + "1062": 3, + "1063": 4, + "1064": 6, + "1065": 6, + "1066": 2, + "1067": 1, + "1068": 5, + "1069": 3, + "1070": 5, + "1071": 3, + "1072": 6, + "1073": 8, + "1074": 3, + "1075": 6, + "1076": 7, + "1077": 5, + "1078": 7, + "1079": 7, + "1080": 3, + "1081": 6, + "1082": 5, + "1083": 2, + "1084": 4, + "1085": 1, + "1086": 1, + "1087": 3, + "1088": 2, + "1089": 6, + "1090": 4, + "1092": 5, + "1093": 2, + "1094": 2, + "1095": 1, + "1097": 4, + "1098": 6, + "1099": 1, + "1100": 4, + "1102": 2, + "1103": 2, + "1104": 2, + "1105": 1, + "1106": 2, + "1107": 2, + "1108": 1, + "1109": 2, + "1110": 3, + "1112": 1, + "1113": 3, + "1114": 3, + "1116": 2, + "1117": 1, + "1120": 2, + "1121": 1, + "1122": 1, + "1124": 2, + "1125": 1, + "1126": 1, + "1127": 1, + "1129": 2, + "1130": 2, + "1131": 1, + "1132": 3, + "1133": 1, + "1134": 1, + "1135": 1, + "1136": 4, + "1137": 2, + "1138": 2, + "1139": 3, + "1142": 2, + "1143": 1, + "1146": 2, + "1147": 2, + "1149": 1, + "1150": 1, + "1151": 2, + "1152": 3, + "1154": 2, + "1155": 1, + "1156": 1, + "1157": 3, + "1158": 2, + "1160": 1, + "1161": 2, + "1162": 4, + "1163": 2, + "1164": 2, + "1165": 1, + "1166": 2, + "1167": 3, + "1169": 3, + "1170": 1, + "1171": 1, + "1172": 3, + "1173": 4, + "1174": 2, + "1175": 1, + "1176": 5, + "1177": 3, + "1178": 2, + "1179": 1, + "1180": 2, + "1181": 5, + "1182": 2, + "1183": 2, + "1184": 3, + "1186": 3, + "1187": 3, + "1188": 2, + "1189": 1, + "1190": 3, + "1192": 2, + "1193": 5, + "1194": 1, + "1195": 2, + "1196": 3, + "1197": 1, + "1198": 1, + "1199": 1, + "1200": 3, + "1202": 2, + "1203": 1, + "1204": 1, + "1205": 3, + "1206": 1, + "1207": 1, + "1208": 1, + "1209": 3, + "1210": 2, + "1211": 1, + "1212": 1, + "1213": 2, + "1214": 4, + "1215": 3, + "1216": 4, + "1217": 3, + "1218": 3, + "1219": 3, + "1220": 1, + "1221": 2, + "1222": 1, + "1224": 3, + "1225": 1, + "1226": 3, + "1228": 2, + "1229": 2, + "1230": 3, + "1231": 1, + "1232": 1, + "1233": 3, + "1235": 1, + "1236": 3, + "1237": 3, + "1238": 3, + "1239": 1, + "1240": 3, + "1241": 2, + "1242": 3, + "1243": 2, + "1244": 2, + "1245": 2, + "1246": 5, + "1247": 2, + "1248": 4, + "1250": 1, + "1251": 7, + "1252": 3, + "1253": 3, + "1254": 2, + "1255": 3, + "1256": 3, + "1257": 2, + "1259": 4, + "1260": 3, + "1261": 3, + "1262": 1, + "1263": 5, + "1264": 3, + "1265": 3, + "1266": 1, + "1267": 4, + "1268": 5, + "1269": 5, + "1270": 4, + "1271": 2, + "1272": 2, + "1273": 3, + "1274": 3, + "1275": 4, + "1276": 5, + "1277": 2, + "1278": 2, + "1279": 5, + "1280": 1, + "1281": 6, + "1282": 7, + "1283": 4, + "1284": 8, + "1285": 5, + "1286": 2, + "1287": 6, + "1288": 3, + "1289": 6, + "1290": 4, + "1291": 7, + "1292": 5, + "1293": 7, + "1294": 2, + "1295": 3, + "1296": 1, + "1297": 2, + "1298": 7, + "1299": 5, + "1300": 4, + "1301": 4, + "1302": 8, + "1303": 9, + "1304": 4, + "1305": 14, + "1306": 11, + "1307": 8, + "1308": 6, + "1309": 7, + "1310": 6, + "1311": 5, + "1312": 3, + "1313": 3, + "1314": 4, + "1315": 5, + "1316": 2, + "1318": 1, + "1319": 1, + "1320": 1, + "1321": 2, + "1322": 4, + "1323": 1, + "1324": 1, + "1325": 1, + "1326": 2, + "1336": 1, + "1356": 1, + "1360": 2, + "1364": 1, + "1365": 1, + "1366": 1, + "1367": 1, + "1368": 2, + "1369": 4, + "1370": 5, + "1371": 3, + "1372": 2, + "1373": 4, + "1374": 3, + "1375": 6, + "1376": 2, + "1377": 2, + "1379": 1, + "1382": 1, + "1384": 1, + "1385": 2, + "1386": 1, + "1388": 2, + "1390": 1, + "1394": 1, + "1395": 1, + "1396": 1, + "1397": 2, + "1398": 3, + "1400": 2, + "1401": 1, + "1402": 1, + "1403": 1, + "1404": 1, + "1405": 1, + "1406": 1, + "1408": 1, + "1409": 7, + "1410": 7, + "1411": 2, + "1412": 2, + "1414": 3, + "1415": 4, + "1416": 2, + "1417": 2, + "1419": 1, + "1420": 1 + }, + "started": "2020-09-07T18:44:13.512Z", + "trafficStats": { + "incomingCompressionRatio": 0.03615084838867187, + "incomingOctetsAppLevel": 32768000, + "incomingOctetsWebSocketLevel": 1184591, + "incomingOctetsWireLevel": 1192591, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0067533857677459985, + "outgoingCompressionRatio": 0.043666534423828125, + "outgoingOctetsAppLevel": 32768000, + "outgoingOctetsWebSocketLevel": 1430865, + "outgoingOctetsWireLevel": 1434865, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0027955118057957948, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "1236": 1, + "1239": 2, + "1240": 1, + "1241": 1, + "1242": 1, + "1243": 1, + "1244": 1, + "1245": 4, + "1246": 1, + "1248": 2, + "1250": 2, + "1251": 2, + "1252": 1, + "1253": 1, + "1254": 3, + "1255": 1, + "1256": 4, + "1257": 1, + "1258": 3, + "1259": 1, + "1260": 1, + "1261": 3, + "1262": 5, + "1263": 2, + "1264": 3, + "1265": 2, + "1266": 4, + "1267": 4, + "1268": 2, + "1269": 7, + "1270": 5, + "1272": 4, + "1273": 8, + "1274": 4, + "1275": 9, + "1276": 3, + "1277": 9, + "1278": 6, + "1279": 6, + "1280": 11, + "1281": 8, + "1282": 9, + "1283": 9, + "1284": 4, + "1285": 4, + "1286": 8, + "1287": 5, + "1288": 5, + "1289": 5, + "1290": 2, + "1291": 4, + "1292": 1, + "1293": 3, + "1294": 5, + "1295": 4, + "1296": 3, + "1297": 4, + "1298": 5, + "1299": 5, + "1300": 3, + "1301": 6, + "1302": 6, + "1303": 4, + "1304": 4, + "1305": 1, + "1306": 1, + "1307": 4, + "1308": 2, + "1309": 3, + "1310": 2, + "1311": 3, + "1312": 4, + "1313": 2, + "1314": 1, + "1316": 2, + "1317": 2, + "1318": 1, + "1319": 4, + "1321": 3, + "1322": 1, + "1323": 1, + "1324": 2, + "1325": 2, + "1327": 4, + "1328": 2, + "1329": 1, + "1330": 1, + "1331": 2, + "1332": 2, + "1333": 1, + "1334": 2, + "1336": 3, + "1337": 1, + "1339": 2, + "1340": 3, + "1341": 2, + "1342": 1, + "1343": 2, + "1344": 2, + "1345": 4, + "1346": 2, + "1347": 6, + "1348": 1, + "1349": 1, + "1351": 5, + "1352": 4, + "1353": 2, + "1355": 5, + "1356": 4, + "1358": 1, + "1359": 3, + "1360": 3, + "1361": 2, + "1362": 1, + "1363": 2, + "1364": 1, + "1366": 2, + "1367": 4, + "1368": 1, + "1369": 4, + "1370": 1, + "1372": 2, + "1373": 2, + "1374": 3, + "1377": 1, + "1378": 2, + "1379": 1, + "1380": 1, + "1381": 3, + "1382": 3, + "1383": 1, + "1384": 3, + "1385": 3, + "1386": 1, + "1387": 1, + "1389": 2, + "1391": 3, + "1392": 2, + "1393": 1, + "1394": 2, + "1395": 2, + "1396": 1, + "1397": 2, + "1398": 1, + "1401": 1, + "1402": 2, + "1403": 1, + "1404": 1, + "1405": 1, + "1406": 2, + "1409": 2, + "1410": 1, + "1411": 2, + "1412": 1, + "1413": 6, + "1414": 2, + "1415": 1, + "1416": 3, + "1417": 4, + "1418": 1, + "1419": 1, + "1420": 1, + "1421": 4, + "1422": 2, + "1423": 2, + "1424": 1, + "1425": 2, + "1426": 1, + "1427": 4, + "1429": 2, + "1431": 2, + "1432": 4, + "1434": 1, + "1435": 1, + "1436": 3, + "1437": 2, + "1439": 4, + "1440": 1, + "1441": 2, + "1442": 2, + "1444": 1, + "1446": 4, + "1447": 2, + "1448": 1, + "1449": 2, + "1450": 1, + "1451": 2, + "1452": 2, + "1453": 2, + "1454": 3, + "1455": 2, + "1456": 2, + "1457": 2, + "1459": 1, + "1460": 2, + "1461": 1, + "1462": 1, + "1463": 2, + "1464": 1, + "1465": 3, + "1466": 2, + "1467": 2, + "1468": 2, + "1469": 4, + "1470": 4, + "1471": 6, + "1472": 3, + "1473": 2, + "1474": 2, + "1475": 1, + "1476": 2, + "1477": 3, + "1478": 3, + "1479": 2, + "1480": 2, + "1481": 1, + "1482": 1, + "1483": 3, + "1484": 4, + "1485": 6, + "1486": 3, + "1487": 2, + "1488": 4, + "1489": 3, + "1490": 2, + "1491": 1, + "1492": 3, + "1493": 3, + "1494": 2, + "1495": 3, + "1496": 5, + "1498": 2, + "1500": 3, + "1501": 2, + "1502": 2, + "1503": 2, + "1504": 2, + "1505": 3, + "1506": 2, + "1507": 1, + "1508": 3, + "1509": 2, + "1510": 1, + "1511": 2, + "1513": 5, + "1514": 2, + "1515": 2, + "1516": 1, + "1517": 4, + "1518": 4, + "1519": 3, + "1520": 4, + "1522": 6, + "1524": 2, + "1525": 1, + "1526": 1, + "1528": 3, + "1529": 5, + "1531": 2, + "1532": 3, + "1533": 1, + "1534": 4, + "1535": 4, + "1536": 5, + "1537": 5, + "1538": 9, + "1539": 5, + "1540": 6, + "1541": 7, + "1542": 6, + "1543": 3, + "1544": 5, + "1545": 1, + "1546": 3, + "1547": 7, + "1548": 2, + "1549": 2, + "1550": 3, + "1551": 6, + "1552": 5, + "1553": 6, + "1554": 3, + "1555": 3, + "1556": 6, + "1557": 5, + "1558": 8, + "1559": 7, + "1560": 11, + "1561": 7, + "1562": 7, + "1563": 2, + "1564": 6, + "1565": 5, + "1566": 5, + "1567": 5, + "1568": 2, + "1569": 3, + "1570": 5, + "1571": 5, + "1572": 3, + "1573": 3, + "1574": 1, + "1575": 1, + "1576": 2, + "1577": 2, + "1578": 1, + "1580": 3, + "1581": 2, + "1582": 3, + "1583": 2, + "1585": 1, + "1586": 2, + "1587": 2, + "1588": 2, + "1589": 2, + "1590": 2, + "1591": 2, + "1592": 1, + "1593": 1, + "1597": 1, + "1604": 1, + "1607": 1, + "1608": 2, + "1611": 2, + "1613": 1, + "1614": 1, + "1617": 1, + "1618": 4, + "1621": 1, + "1623": 2, + "1624": 2, + "1625": 1, + "1626": 6, + "1627": 3, + "1628": 1, + "1629": 2, + "1630": 1, + "1632": 2, + "1634": 1, + "1636": 2, + "1637": 2, + "1639": 1, + "1641": 3, + "1643": 3, + "1644": 2, + "1646": 6, + "1647": 1, + "1648": 2, + "1650": 2, + "1651": 2, + "1652": 2, + "1653": 2, + "1654": 1, + "1655": 2, + "1657": 2, + "1658": 1, + "1659": 2, + "1660": 2, + "1661": 1, + "1664": 2 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333039266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882554c4b1856a4" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "554c4b18" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_1_9.html b/autobahn/client/tungstenite_case_12_1_9.html new file mode 100644 index 0000000..cbedc37 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_9.html @@ -0,0 +1,556 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.1.9 : Pass - 3806 ms @ 2020-09-07T18:44:15.724Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=310&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 4LmT1hj3u00edmkxc0W4UA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Th2DxNR/mfG/BNnoT75qQwQF0Tk=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
229112291
229312293
229524590
229636888
229712297
229824596
229912299
230024600
230149204
2302716114
2303511515
2304818432
2305613830
230649224
2307613842
2308716156
23091841562
23101125410
2311920799
23122353176
23131637008
23142557850
23152353245
23162455584
23171432438
23181841724
23191841742
23201432480
23212455704
23222353406
23231432522
23241637184
23251330225
23261227912
23271023270
23281125608
2329511645
2330716310
2331716317
2332511660
2333511665
2334511670
233549340
233624672
233749348
2338818704
2339511695
2340818720
2341716387
2342818736
2343511715
23441125784
23451228140
23461637536
23471228164
23481739916
23491842282
23501842300
2351716457
2352921168
23531330589
235449416
2355511775
235612356
235737071
235824716
236012360
236124722
236224724
236624732
236712367
236812368
236924738
237012370
237112371
237224744
237324746
237537125
237649504
237737131
237824756
237924758
238112381
238312383
238512385
238612386
238824776
239012390
239212392
239324786
239437182
239524790
239612396
239724794
239824796
2399716793
2400716800
2401614406
240224804
2403614418
240437212
2405512025
240612406
240737221
240812408
240924818
241124822
2413512065
241449656
2415614490
241649664
24171536255
2418614508
2419716933
24201229040
24211433894
2422921798
24231536345
24241229088
2425614550
24262150946
24272048540
24282048560
24291229148
24301741310
24312151051
24321331616
2433921897
2434819472
2435614610
2436512180
243724874
243812438
244112441
244224884
244512445
245412454
Total10022360177
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
280125602
280212802
280325606
2804514020
2805411220
2806616836
2807514035
2808616848
28091233708
28101747770
28112261842
28122673112
28132878764
28141747838
28153598525
28161953504
28173187327
28182056360
28192364837
28201747940
28212159241
28222776194
28232570575
28242262128
28252673450
28262056520
28273496118
28282056560
28291439606
2830822640
2831925479
28321748144
28331645328
28341748178
28351645360
28361028360
2837925533
2838514190
283938517
284012840
284138523
2842411368
284325686
284625692
284712847
284912849
285012850
285125702
285312853
285412854
285525710
285738571
2859411436
286012860
2862411448
286338589
286425728
286625732
286712867
286812868
286912869
287012870
287212872
287812878
287912879
288225764
288312883
288412884
288512885
288625772
288712887
288825776
289212892
289512895
289712897
289938697
290025800
290125802
2902514510
2903823224
2904514520
2905720335
2906411624
2907823256
290825816
290938727
291038730
2911514555
29121029120
29131132043
29141646624
29151029150
29161132076
2917617502
29181955442
29191235028
2920617520
2921926289
29221235064
29231235076
29241235088
2925926325
2926720482
2927926343
2928720496
2929617574
2930411720
2931411724
293225864
293338799
293412934
2935617610
29361132296
2937823496
29381338194
29391029390
2940926460
2941514705
294225884
294338829
295712957
Total10022856349
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333130266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882e61df922e5f5
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6536316466393232
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_1_9.json b/autobahn/client/tungstenite_case_12_1_9.json new file mode 100644 index 0000000..d33cff2 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_1_9.json @@ -0,0 +1,403 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 310, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 3806, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=310&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 4LmT1hj3u00edmkxc0W4UA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Th2DxNR/mfG/BNnoT75qQwQF0Tk=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.1.9", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "2291": 1, + "2293": 1, + "2295": 2, + "2296": 3, + "2297": 1, + "2298": 2, + "2299": 1, + "2300": 2, + "2301": 4, + "2302": 7, + "2303": 5, + "2304": 8, + "2305": 6, + "2306": 4, + "2307": 6, + "2308": 7, + "2309": 18, + "2310": 11, + "2311": 9, + "2312": 23, + "2313": 16, + "2314": 25, + "2315": 23, + "2316": 24, + "2317": 14, + "2318": 18, + "2319": 18, + "2320": 14, + "2321": 24, + "2322": 23, + "2323": 14, + "2324": 16, + "2325": 13, + "2326": 12, + "2327": 10, + "2328": 11, + "2329": 5, + "2330": 7, + "2331": 7, + "2332": 5, + "2333": 5, + "2334": 5, + "2335": 4, + "2336": 2, + "2337": 4, + "2338": 8, + "2339": 5, + "2340": 8, + "2341": 7, + "2342": 8, + "2343": 5, + "2344": 11, + "2345": 12, + "2346": 16, + "2347": 12, + "2348": 17, + "2349": 18, + "2350": 18, + "2351": 7, + "2352": 9, + "2353": 13, + "2354": 4, + "2355": 5, + "2356": 1, + "2357": 3, + "2358": 2, + "2360": 1, + "2361": 2, + "2362": 2, + "2366": 2, + "2367": 1, + "2368": 1, + "2369": 2, + "2370": 1, + "2371": 1, + "2372": 2, + "2373": 2, + "2375": 3, + "2376": 4, + "2377": 3, + "2378": 2, + "2379": 2, + "2381": 1, + "2383": 1, + "2385": 1, + "2386": 1, + "2388": 2, + "2390": 1, + "2392": 1, + "2393": 2, + "2394": 3, + "2395": 2, + "2396": 1, + "2397": 2, + "2398": 2, + "2399": 7, + "2400": 7, + "2401": 6, + "2402": 2, + "2403": 6, + "2404": 3, + "2405": 5, + "2406": 1, + "2407": 3, + "2408": 1, + "2409": 2, + "2411": 2, + "2413": 5, + "2414": 4, + "2415": 6, + "2416": 4, + "2417": 15, + "2418": 6, + "2419": 7, + "2420": 12, + "2421": 14, + "2422": 9, + "2423": 15, + "2424": 12, + "2425": 6, + "2426": 21, + "2427": 20, + "2428": 20, + "2429": 12, + "2430": 17, + "2431": 21, + "2432": 13, + "2433": 9, + "2434": 8, + "2435": 6, + "2436": 5, + "2437": 2, + "2438": 1, + "2441": 1, + "2442": 2, + "2445": 1, + "2454": 1 + }, + "started": "2020-09-07T18:44:15.724Z", + "trafficStats": { + "incomingCompressionRatio": 0.0358873291015625, + "incomingOctetsAppLevel": 65536000, + "incomingOctetsWebSocketLevel": 2351912, + "incomingOctetsWireLevel": 2359912, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.00340148781076843, + "outgoingCompressionRatio": 0.04351948547363281, + "outgoingOctetsAppLevel": 65536000, + "outgoingOctetsWebSocketLevel": 2852093, + "outgoingOctetsWireLevel": 2856093, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0014024788111748109, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "2801": 2, + "2802": 1, + "2803": 2, + "2804": 5, + "2805": 4, + "2806": 6, + "2807": 5, + "2808": 6, + "2809": 12, + "2810": 17, + "2811": 22, + "2812": 26, + "2813": 28, + "2814": 17, + "2815": 35, + "2816": 19, + "2817": 31, + "2818": 20, + "2819": 23, + "2820": 17, + "2821": 21, + "2822": 27, + "2823": 25, + "2824": 22, + "2825": 26, + "2826": 20, + "2827": 34, + "2828": 20, + "2829": 14, + "2830": 8, + "2831": 9, + "2832": 17, + "2833": 16, + "2834": 17, + "2835": 16, + "2836": 10, + "2837": 9, + "2838": 5, + "2839": 3, + "2840": 1, + "2841": 3, + "2842": 4, + "2843": 2, + "2846": 2, + "2847": 1, + "2849": 1, + "2850": 1, + "2851": 2, + "2853": 1, + "2854": 1, + "2855": 2, + "2857": 3, + "2859": 4, + "2860": 1, + "2862": 4, + "2863": 3, + "2864": 2, + "2866": 2, + "2867": 1, + "2868": 1, + "2869": 1, + "2870": 1, + "2872": 1, + "2878": 1, + "2879": 1, + "2882": 2, + "2883": 1, + "2884": 1, + "2885": 1, + "2886": 2, + "2887": 1, + "2888": 2, + "2892": 1, + "2895": 1, + "2897": 1, + "2899": 3, + "2900": 2, + "2901": 2, + "2902": 5, + "2903": 8, + "2904": 5, + "2905": 7, + "2906": 4, + "2907": 8, + "2908": 2, + "2909": 3, + "2910": 3, + "2911": 5, + "2912": 10, + "2913": 11, + "2914": 16, + "2915": 10, + "2916": 11, + "2917": 6, + "2918": 19, + "2919": 12, + "2920": 6, + "2921": 9, + "2922": 12, + "2923": 12, + "2924": 12, + "2925": 9, + "2926": 7, + "2927": 9, + "2928": 7, + "2929": 6, + "2930": 4, + "2931": 4, + "2932": 2, + "2933": 3, + "2934": 1, + "2935": 6, + "2936": 11, + "2937": 8, + "2938": 13, + "2939": 10, + "2940": 9, + "2941": 5, + "2942": 2, + "2943": 3, + "2957": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333130266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882e61df922e5f5" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "e61df922" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_2_1.html b/autobahn/client/tungstenite_case_12_2_1.html new file mode 100644 index 0000000..5f5c3ef --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_1.html @@ -0,0 +1,324 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.2.1 : Pass - 118 ms @ 2020-09-07T18:45:06.349Z

+

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=320&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: k+5xod4574okssT+NDyYPA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: r1MII7GgdEc3Xtz9jbt2lA4WvnY=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
1130330
13113
14114
15115
17117
20480
2112252
2239858
231302990
2457313752
251473675
2628728
2833924
2571257
Total100223913
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
730210
919
10110
11111
13113
16464
1712204
1839702
191302470
2057311460
211473087
2228616
2433792
2521252
Total100219904
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333230266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88827917d45a7aff
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3739313764343561
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_2_1.json b/autobahn/client/tungstenite_case_12_2_1.json new file mode 100644 index 0000000..5e5b29b --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_1.json @@ -0,0 +1,171 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 320, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 118, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=320&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: k+5xod4574okssT+NDyYPA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: r1MII7GgdEc3Xtz9jbt2lA4WvnY=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.2.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "11": 30, + "13": 1, + "14": 1, + "15": 1, + "17": 1, + "20": 4, + "21": 12, + "22": 39, + "23": 130, + "24": 573, + "25": 147, + "26": 28, + "28": 33, + "257": 1 + }, + "started": "2020-09-07T18:45:06.349Z", + "trafficStats": { + "incomingCompressionRatio": 1.103, + "incomingOctetsAppLevel": 16000, + "incomingOctetsWebSocketLevel": 17648, + "incomingOctetsWireLevel": 23648, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.3399818676337262, + "outgoingCompressionRatio": 1.103, + "outgoingOctetsAppLevel": 16000, + "outgoingOctetsWebSocketLevel": 17648, + "outgoingOctetsWireLevel": 19648, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.11332728921124206, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "7": 30, + "9": 1, + "10": 1, + "11": 1, + "13": 1, + "16": 4, + "17": 12, + "18": 39, + "19": 130, + "20": 573, + "21": 147, + "22": 28, + "24": 33, + "252": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333230266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88827917d45a7aff" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "7917d45a" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_2_10.html b/autobahn/client/tungstenite_case_12_2_10.html new file mode 100644 index 0000000..0cdaa89 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_10.html @@ -0,0 +1,1927 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.2.10 : Pass - 11856 ms @ 2020-09-07T18:45:19.688Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=329&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: eboZztJ/1MEw4PT2zGXg+g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: YdGE/iU990uEGwEItd7sOhiI22M=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
42541142541
42557142557
42563142563
42582142582
42585142585
42588142588
42597285194
42600142600
42602285204
42604142604
42627142627
42628142628
42635142635
42638142638
42640142640
42641285282
42645142645
42656142656
42658142658
42661142661
42662142662
42671142671
42672142672
42673142673
42675142675
42677285354
42684142684
42685142685
42689142689
42690142690
42692142692
42695142695
42696142696
42698285396
42699142699
42704142704
42706142706
42714142714
42719142719
42724142724
42727142727
42730142730
42734142734
42740142740
42741142741
42746142746
42747285494
42749142749
42755285510
42773142773
42774142774
42778142778
42781142781
42783142783
42785142785
42787142787
42789285578
42792142792
42793142793
42794285588
42799142799
42800142800
42806142806
42810142810
42821285642
42822142822
42824285648
42826142826
42830285660
42833142833
42834285668
42836142836
42838142838
42839285678
42843142843
428473128541
42851285702
42862285724
42863142863
42869142869
42870142870
42873285746
42875142875
42876285752
42877142877
42882285764
42883142883
42885142885
42887142887
42888142888
42892285784
42893142893
42897142897
428983128694
42906285812
42907142907
42908142908
42911142911
42912285824
42915142915
42920285840
42926142926
42927142927
42928142928
42929142929
42932142932
42934285868
42935142935
42936285872
42937142937
42943142943
42944142944
42945142945
42948285896
42951142951
42955285910
42956142956
42957142957
42961142961
42964142964
42965142965
42976142976
42977142977
429793128937
42980142980
42983142983
42984142984
42986142986
42988142988
42991285982
42993142993
42998142998
43004143004
43012143012
43017143017
43019143019
43051286102
43058143058
43063143063
43073143073
43085143085
43087143087
43089143089
43090143090
43094143094
43099286198
43100143100
43103143103
43115143115
43119143119
43121143121
43127286254
43147143147
43149143149
43150143150
43154143154
43157143157
43174143174
43177143177
43183143183
43190286380
43192286384
43197143197
43211143211
43215286430
43219143219
43225143225
43232286464
43237143237
43240143240
43246143246
43248143248
43254143254
43255143255
43259143259
43260143260
43268143268
43275143275
43283286566
43284143284
43285143285
43287143287
43291143291
43295143295
43301143301
43306143306
43308143308
43312143312
43314143314
43317143317
43319143319
433203129960
43325143325
43326286652
43328143328
43333143333
43336143336
43338143338
43340143340
43341143341
43346143346
43350143350
43351286702
43355143355
43356286712
43361143361
43367143367
43369286738
43370143370
43374143374
43375143375
43376143376
43378143378
43381143381
43386143386
43388286776
43389143389
43396143396
43397143397
43400143400
43405143405
43411143411
43413143413
43414286828
43417143417
43419143419
43420143420
43421143421
43423143423
43424286848
43426286852
43429143429
43431143431
43432143432
43433143433
43434286868
43435143435
43438143438
43439143439
43440286880
43442143442
43445143445
43447143447
43448143448
43449143449
43450286900
43452143452
43454143454
43455143455
434593130377
43461143461
43463143463
43469143469
43474143474
43477286954
43479143479
43482143482
43483143483
43488143488
43489143489
434903130470
43492143492
43493143493
43494286988
43495286990
43497286994
43501287002
43503287006
43504287008
43505287010
43508287016
43511143511
43512143512
43517143517
43528143528
43534143534
43536143536
43548143548
43563143563
43567143567
43570143570
43572143572
43585287170
43597287194
43598143598
43600143600
43601143601
43605287210
43606143606
43610143610
43613143613
43615143615
43616143616
43622143622
43625143625
43632143632
43633143633
43635143635
43636143636
43640143640
43644143644
43650143650
43654143654
43658143658
43661143661
43672143672
43674143674
43675143675
43677143677
43682143682
43687143687
43690143690
43691143691
43694143694
43695143695
43703143703
43704287408
43705143705
43710143710
43712143712
437133131139
43716143716
43720143720
43726143726
43738143738
43785143785
43820143820
43822143822
43891143891
43905143905
43952143952
43964143964
43986143986
44047144047
44052144052
44122144122
44145144145
44192144192
44224144224
44279144279
44297144297
44310144310
44370144370
44382144382
44439144439
44453144453
44473144473
44496144496
44533144533
44555144555
44558144558
44599144599
44614144614
44627144627
44637144637
44638144638
44663144663
44725144725
44727144727
44736144736
44776144776
44798144798
44821144821
44847144847
44864144864
44895144895
44908144908
44944144944
44947144947
44954144954
44972144972
45008145008
45068145068
45072145072
45088145088
45089145089
45134145134
45150145150
45170145170
45201145201
45231145231
45236145236
45250145250
45291290582
45303145303
45331145331
45371145371
45394145394
45413145413
45414145414
45433145433
45471145471
45475145475
45487145487
45513145513
45565145565
45573145573
45578145578
45601145601
45646145646
45670145670
45678145678
45679145679
45708145708
45754145754
45757145757
45768145768
45774145774
45818145818
45829145829
45850145850
45856145856
45892145892
45906145906
45920145920
45929145929
45950145950
45953145953
45996291992
46011146011
46015146015
46051146051
46061146061
46084146084
46093146093
46108146108
46130146130
46136146136
46144146144
46163146163
46188146188
46208146208
46216146216
46235146235
46261146261
46266146266
46294146294
46309146309
46322146322
46326146326
46372146372
46374146374
46375146375
46409146409
46430146430
46431146431
46447146447
46480146480
46510146510
46511146511
46532146532
46550146550
46573146573
46574146574
46580146580
46627146627
46651146651
46659146659
46666146666
46685146685
46712146712
46737146737
46739146739
46744146744
46775146775
46796146796
46817146817
46827146827
46847146847
46850146850
46864146864
46886146886
46897146897
46916146916
46926146926
46943146943
46954146954
46964146964
47000147000
47008147008
47009147009
47046147046
47047147047
47058147058
47061147061
47082147082
47093147093
47102147102
47111147111
47149147149
47163147163
47200147200
47220147220
47223147223
47262147262
47320147320
47351147351
47366147366
47387147387
47427147427
47467147467
47497147497
47528147528
47558147558
47600147600
47629147629
47635147635
47678147678
47703147703
47762147762
47771147771
47785147785
47830147830
47865147865
47921147921
47937147937
47986295972
47994147994
48055148055
48059148059
48082148082
48095148095
48133148133
48141148141
48147148147
48178148178
48182148182
48188148188
48189148189
48190148190
48191148191
48193148193
481943144582
481963144588
48197296394
48198296396
48199296398
48201148201
482023144606
48204148204
48206148206
48207148207
48215148215
48216148216
48217148217
48220148220
48221148221
48228148228
48229148229
48231148231
48233148233
48235296470
48241148241
48244148244
48248148248
48253148253
48257148257
48260148260
48264148264
48273148273
48274148274
48278148278
48279148279
48290148290
48291296582
48294148294
48301148301
48307148307
48310148310
48317148317
48319148319
48324148324
48329148329
48333296666
48334148334
48342148342
48345148345
48359148359
48363148363
48366296732
48370148370
48372148372
48378148378
48379148379
48385148385
48389148389
48394148394
48396148396
48400296800
48401148401
48404148404
48410148410
48411148411
48412148412
48415148415
48421148421
48423148423
48424148424
48427148427
48428148428
48434148434
48435148435
48442148442
48444148444
48451296902
48462148462
48469148469
48473148473
48474148474
48475296950
48477148477
48478148478
48480148480
48481148481
48492148492
48500148500
48502148502
48507148507
48509148509
48511148511
48513148513
48514148514
48516297032
48518297036
48519297038
48520148520
48521148521
48523148523
48528148528
48531297062
48532297064
48535148535
48537148537
48538148538
48542148542
48546297092
48552148552
48555297110
48556148556
48558148558
48559148559
48562148562
48564148564
48565297130
48566148566
48570148570
485713145713
48572148572
485733145719
48575297150
48577148577
48579297158
485803145740
48581148581
48582148582
48584148584
485884194352
48591148591
48592297184
485934194372
48595148595
48597148597
48603148603
48608148608
48611148611
48612297224
48613297226
48614148614
48616148616
486203145860
48624148624
48625148625
48626148626
48627297254
48629148629
48631148631
48632148632
48634297268
48635148635
48636148636
48638297276
48640148640
48643297286
48644148644
48647297294
48648148648
48652297304
48653148653
48655148655
48662148662
48664297328
48668148668
48674148674
48679148679
48702148702
48713148713
48727148727
48729148729
48757148757
48760148760
48769148769
48776148776
48778148778
48782148782
48798148798
48811297622
48815148815
48822148822
48828148828
48832148832
48855148855
48865148865
48869148869
48889148889
48890148890
48895148895
48898148898
48925148925
48928148928
48941148941
48945148945
48949148949
48950148950
48965148965
48966148966
48974148974
48976148976
48979148979
48981148981
48984297968
48989148989
48990297980
48991148991
48994297988
48996297992
48997148997
489994195996
49002298004
49004149004
49006149006
49008149008
49009149009
49010149010
49011298022
490123147036
490134196052
49014298028
49015149015
49016149016
49017298034
490184196072
49019149019
49020298040
490215245105
49022149022
490253147075
490263147078
49027298054
49029298058
49030298060
490313147093
49033298066
49034149034
49035298070
49036149036
490374196148
49038298076
49039298078
49041298082
490433147129
49044149044
49045149045
49047149047
49048298096
49049149049
49050149050
49051149051
49052149052
49053149053
49054149054
49056149056
49061149061
49064298128
49065149065
49066149066
49067149067
49069298138
49070149070
49071149071
49072298144
49075149075
49076149076
49078298156
49079298158
49080149080
49081149081
49083298166
49084149084
49089298178
49090298180
49092298184
49093298186
49096298192
49098149098
49099298198
49100149100
49101298202
49104149104
49108149108
49111149111
49114149114
49117298234
49120149120
49230149230
65536100065536000
Total2002111487823
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
1080731108073
1080891108089
1080951108095
1081141108114
1081171108117
1081201108120
1081292216258
1081321108132
1081342216268
1081361108136
1081591108159
1081601108160
1081671108167
1081701108170
1081721108172
1081732216346
1081771108177
1081881108188
1081901108190
1081931108193
1081941108194
1082031108203
1082041108204
1082051108205
1082071108207
1082092216418
1082161108216
1082171108217
1082211108221
1082221108222
1082241108224
1082271108227
1082281108228
1082302216460
1082311108231
1082361108236
1082381108238
1082461108246
1082511108251
1082561108256
1082591108259
1082621108262
1082661108266
1082721108272
1082731108273
1082781108278
1082792216558
1082811108281
1082872216574
1083051108305
1083061108306
1083101108310
1083131108313
1083151108315
1083171108317
1083191108319
1083212216642
1083241108324
1083251108325
1083262216652
1083311108331
1083321108332
1083381108338
1083421108342
1083532216706
1083541108354
1083562216712
1083581108358
1083622216724
1083651108365
1083662216732
1083681108368
1083701108370
1083712216742
1083751108375
1083793325137
1083832216766
1083942216788
1083951108395
1084011108401
1084021108402
1084052216810
1084071108407
1084082216816
1084091108409
1084142216828
1084151108415
1084171108417
1084191108419
1084201108420
1084242216848
1084251108425
1084291108429
1084303325290
1084382216876
1084391108439
1084401108440
1084431108443
1084442216888
1084471108447
1084522216904
1084581108458
1084591108459
1084601108460
1084611108461
1084641108464
1084662216932
1084671108467
1084682216936
1084691108469
1084751108475
1084761108476
1084771108477
1084802216960
1084831108483
1084872216974
1084881108488
1084891108489
1084931108493
1084961108496
1084971108497
1085081108508
1085091108509
1085113325533
1085121108512
1085151108515
1085161108516
1085181108518
1085201108520
1085232217046
1085251108525
1085301108530
1085361108536
1085441108544
1085491108549
1085511108551
1085832217166
1085901108590
1085951108595
1086051108605
1086171108617
1086191108619
1086211108621
1086221108622
1086261108626
1086312217262
1086321108632
1086351108635
1086471108647
1086511108651
1086531108653
1086592217318
1086791108679
1086811108681
1086821108682
1086861108686
1086891108689
1087061108706
1087091108709
1087151108715
1087222217444
1087242217448
1087291108729
1087431108743
1087472217494
1087511108751
1087571108757
1087642217528
1087691108769
1087721108772
1087781108778
1087801108780
1087861108786
1087871108787
1087911108791
1087921108792
1088001108800
1088071108807
1088152217630
1088161108816
1088171108817
1088191108819
1088231108823
1088271108827
1088331108833
1088381108838
1088401108840
1088441108844
1088461108846
1088491108849
1088511108851
1088523326556
1088571108857
1088582217716
1088601108860
1088651108865
1088681108868
1088701108870
1088721108872
1088731108873
1088781108878
1088821108882
1088832217766
1088871108887
1088882217776
1088931108893
1088991108899
1089012217802
1089021108902
1089061108906
1089071108907
1089081108908
1089101108910
1089131108913
1089181108918
1089202217840
1089211108921
1089281108928
1089291108929
1089321108932
1089371108937
1089431108943
1089451108945
1089462217892
1089491108949
1089511108951
1089521108952
1089531108953
1089551108955
1089562217912
1089582217916
1089611108961
1089631108963
1089641108964
1089651108965
1089662217932
1089671108967
1089701108970
1089711108971
1089722217944
1089741108974
1089771108977
1089791108979
1089801108980
1089811108981
1089821108982
1089841108984
1089861108986
1089872217974
1089913326973
1089931108993
1089951108995
1090011109001
1090061109006
1090092218018
1090111109011
1090141109014
1090151109015
1090201109020
1090211109021
1090223327066
1090241109024
1090251109025
1090262218052
1090272218054
1090292218058
1090332218066
1090352218070
1090362218072
1090372218074
1090402218080
1090431109043
1090441109044
1090491109049
1090601109060
1090661109066
1090681109068
1090801109080
1090951109095
1090991109099
1091021109102
1091041109104
1091172218234
1091292218258
1091301109130
1091321109132
1091331109133
1091372218274
1091381109138
1091421109142
1091451109145
1091471109147
1091481109148
1091541109154
1091571109157
1091641109164
1091651109165
1091671109167
1091681109168
1091721109172
1091761109176
1091821109182
1091861109186
1091901109190
1091931109193
1092041109204
1092061109206
1092071109207
1092091109209
1092141109214
1092191109219
1092221109222
1092231109223
1092261109226
1092271109227
1092351109235
1092362218472
1092371109237
1092421109242
1092441109244
1092453327735
1092481109248
1092521109252
1092581109258
1092701109270
1093171109317
1093521109352
1093541109354
1094231109423
1094371109437
1094841109484
1094961109496
1095181109518
1095791109579
1095841109584
1096541109654
1096771109677
1097241109724
1097561109756
1098111109811
1098291109829
1098421109842
1099021109902
1099141109914
1099711109971
1099851109985
1100051110005
1100281110028
1100651110065
1100871110087
1100901110090
1101311110131
1101461110146
1101591110159
1101691110169
1101701110170
1101951110195
1102571110257
1102591110259
1102681110268
1103081110308
1103301110330
1103531110353
1103791110379
1103961110396
1104271110427
1104401110440
1104761110476
1104791110479
1104861110486
1105041110504
1105401110540
1106001110600
1106041110604
1106201110620
1106211110621
1106661110666
1106821110682
1107021110702
1107331110733
1107631110763
1107681110768
1107821110782
1108232221646
1108351110835
1108631110863
1109031110903
1109261110926
1109451110945
1109461110946
1109651110965
1110031111003
1110071111007
1110191111019
1110451111045
1110971111097
1111051111105
1111101111110
1111331111133
1111781111178
1112021111202
1112101111210
1112111111211
1112401111240
1112861111286
1112891111289
1113001111300
1113061111306
1113501111350
1113611111361
1113821111382
1113881111388
1114241111424
1114381111438
1114521111452
1114611111461
1114821111482
1114851111485
1115282223056
1115431111543
1115471111547
1115831111583
1115931111593
1116161111616
1116251111625
1116401111640
1116621111662
1116681111668
1116761111676
1116951111695
1117201111720
1117401111740
1117481111748
1117671111767
1117931111793
1117981111798
1118261111826
1118411111841
1118541111854
1118581111858
1119041111904
1119061111906
1119071111907
1119411111941
1119621111962
1119631111963
1119791111979
1120121112012
1120421112042
1120431112043
1120641112064
1120821112082
1121051112105
1121061112106
1121121112112
1121591112159
1121831112183
1121911112191
1121981112198
1122171112217
1122441112244
1122691112269
1122711112271
1122761112276
1123071112307
1123281112328
1123491112349
1123591112359
1123791112379
1123821112382
1123961112396
1124181112418
1124291112429
1124481112448
1124581112458
1124751112475
1124861112486
1124961112496
1125321112532
1125401112540
1125411112541
1125781112578
1125791112579
1125901112590
1125931112593
1126141112614
1126251112625
1126341112634
1126431112643
1126811112681
1126951112695
1127321112732
1127521112752
1127551112755
1127941112794
1128521112852
1128831112883
1128981112898
1129191112919
1129591112959
1129991112999
1130291113029
1130601113060
1130901113090
1131321113132
1131611113161
1131671113167
1132101113210
1132351113235
1132941113294
1133031113303
1133171113317
1133621113362
1133971113397
1134531113453
1134691113469
1135182227036
1135261113526
1135871113587
1135911113591
1136141113614
1136271113627
1136651113665
1136731113673
1136791113679
1137101113710
1137141113714
1137201113720
1137211113721
1137221113722
1137231113723
1137251113725
1137263341178
1137283341184
1137292227458
1137302227460
1137312227462
1137331113733
1137343341202
1137361113736
1137381113738
1137391113739
1137471113747
1137481113748
1137491113749
1137521113752
1137531113753
1137601113760
1137611113761
1137631113763
1137651113765
1137672227534
1137731113773
1137761113776
1137801113780
1137851113785
1137891113789
1137921113792
1137961113796
1138051113805
1138061113806
1138101113810
1138111113811
1138221113822
1138232227646
1138261113826
1138331113833
1138391113839
1138421113842
1138491113849
1138511113851
1138561113856
1138611113861
1138652227730
1138661113866
1138741113874
1138771113877
1138911113891
1138951113895
1138982227796
1139021113902
1139041113904
1139101113910
1139111113911
1139171113917
1139211113921
1139261113926
1139281113928
1139322227864
1139331113933
1139361113936
1139421113942
1139431113943
1139441113944
1139471113947
1139531113953
1139551113955
1139561113956
1139591113959
1139601113960
1139661113966
1139671113967
1139741113974
1139761113976
1139832227966
1139941113994
1140011114001
1140051114005
1140061114006
1140072228014
1140091114009
1140101114010
1140121114012
1140131114013
1140241114024
1140321114032
1140341114034
1140391114039
1140411114041
1140431114043
1140451114045
1140461114046
1140482228096
1140502228100
1140512228102
1140521114052
1140531114053
1140551114055
1140601114060
1140632228126
1140642228128
1140671114067
1140691114069
1140701114070
1140741114074
1140782228156
1140841114084
1140872228174
1140881114088
1140901114090
1140911114091
1140941114094
1140961114096
1140972228194
1140981114098
1141021114102
1141033342309
1141041114104
1141053342315
1141072228214
1141091114109
1141112228222
1141123342336
1141131114113
1141141114114
1141161114116
1141204456480
1141231114123
1141242228248
1141254456500
1141271114127
1141291114129
1141351114135
1141401114140
1141431114143
1141442228288
1141452228290
1141461114146
1141481114148
1141523342456
1141561114156
1141571114157
1141581114158
1141592228318
1141611114161
1141631114163
1141641114164
1141662228332
1141671114167
1141681114168
1141702228340
1141721114172
1141752228350
1141761114176
1141792228358
1141801114180
1141842228368
1141851114185
1141871114187
1141941114194
1141962228392
1142001114200
1142061114206
1142111114211
1142341114234
1142451114245
1142591114259
1142611114261
1142891114289
1142921114292
1143011114301
1143081114308
1143101114310
1143141114314
1143301114330
1143432228686
1143471114347
1143541114354
1143601114360
1143641114364
1143871114387
1143971114397
1144011114401
1144211114421
1144221114422
1144271114427
1144301114430
1144571114457
1144601114460
1144731114473
1144771114477
1144811114481
1144821114482
1144971114497
1144981114498
1145061114506
1145081114508
1145111114511
1145131114513
1145162229032
1145211114521
1145222229044
1145231114523
1145262229052
1145282229056
1145291114529
1145314458124
1145342229068
1145361114536
1145381114538
1145401114540
1145411114541
1145421114542
1145432229086
1145443343632
1145454458180
1145462229092
1145471114547
1145481114548
1145492229098
1145504458200
1145511114551
1145522229104
1145535572765
1145541114554
1145573343671
1145583343674
1145592229118
1145612229122
1145622229124
1145633343689
1145652229130
1145661114566
1145672229134
1145681114568
1145694458276
1145702229140
1145712229142
1145732229146
1145753343725
1145761114576
1145771114577
1145791114579
1145802229160
1145811114581
1145821114582
1145831114583
1145841114584
1145851114585
1145861114586
1145881114588
1145931114593
1145962229192
1145971114597
1145981114598
1145991114599
1146012229202
1146021114602
1146031114603
1146042229208
1146071114607
1146081114608
1146102229220
1146112229222
1146121114612
1146131114613
1146152229230
1146161114616
1146212229242
1146222229244
1146242229248
1146252229250
1146282229256
1146301114630
1146312229262
1146321114632
1146332229266
1146361114636
1146401114640
1146431114643
1146461114646
1146492229298
1146521114652
1147621114762
Total1002111483819
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333239266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882aea3bd19ad4b
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6165613362643139
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_2_10.json b/autobahn/client/tungstenite_case_12_2_10.json new file mode 100644 index 0000000..a74daea --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_10.json @@ -0,0 +1,1774 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 329, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 11856, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=329&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: eboZztJ/1MEw4PT2zGXg+g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: YdGE/iU990uEGwEItd7sOhiI22M=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.2.10", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "42541": 1, + "42557": 1, + "42563": 1, + "42582": 1, + "42585": 1, + "42588": 1, + "42597": 2, + "42600": 1, + "42602": 2, + "42604": 1, + "42627": 1, + "42628": 1, + "42635": 1, + "42638": 1, + "42640": 1, + "42641": 2, + "42645": 1, + "42656": 1, + "42658": 1, + "42661": 1, + "42662": 1, + "42671": 1, + "42672": 1, + "42673": 1, + "42675": 1, + "42677": 2, + "42684": 1, + "42685": 1, + "42689": 1, + "42690": 1, + "42692": 1, + "42695": 1, + "42696": 1, + "42698": 2, + "42699": 1, + "42704": 1, + "42706": 1, + "42714": 1, + "42719": 1, + "42724": 1, + "42727": 1, + "42730": 1, + "42734": 1, + "42740": 1, + "42741": 1, + "42746": 1, + "42747": 2, + "42749": 1, + "42755": 2, + "42773": 1, + "42774": 1, + "42778": 1, + "42781": 1, + "42783": 1, + "42785": 1, + "42787": 1, + "42789": 2, + "42792": 1, + "42793": 1, + "42794": 2, + "42799": 1, + "42800": 1, + "42806": 1, + "42810": 1, + "42821": 2, + "42822": 1, + "42824": 2, + "42826": 1, + "42830": 2, + "42833": 1, + "42834": 2, + "42836": 1, + "42838": 1, + "42839": 2, + "42843": 1, + "42847": 3, + "42851": 2, + "42862": 2, + "42863": 1, + "42869": 1, + "42870": 1, + "42873": 2, + "42875": 1, + "42876": 2, + "42877": 1, + "42882": 2, + "42883": 1, + "42885": 1, + "42887": 1, + "42888": 1, + "42892": 2, + "42893": 1, + "42897": 1, + "42898": 3, + "42906": 2, + "42907": 1, + "42908": 1, + "42911": 1, + "42912": 2, + "42915": 1, + "42920": 2, + "42926": 1, + "42927": 1, + "42928": 1, + "42929": 1, + "42932": 1, + "42934": 2, + "42935": 1, + "42936": 2, + "42937": 1, + "42943": 1, + "42944": 1, + "42945": 1, + "42948": 2, + "42951": 1, + "42955": 2, + "42956": 1, + "42957": 1, + "42961": 1, + "42964": 1, + "42965": 1, + "42976": 1, + "42977": 1, + "42979": 3, + "42980": 1, + "42983": 1, + "42984": 1, + "42986": 1, + "42988": 1, + "42991": 2, + "42993": 1, + "42998": 1, + "43004": 1, + "43012": 1, + "43017": 1, + "43019": 1, + "43051": 2, + "43058": 1, + "43063": 1, + "43073": 1, + "43085": 1, + "43087": 1, + "43089": 1, + "43090": 1, + "43094": 1, + "43099": 2, + "43100": 1, + "43103": 1, + "43115": 1, + "43119": 1, + "43121": 1, + "43127": 2, + "43147": 1, + "43149": 1, + "43150": 1, + "43154": 1, + "43157": 1, + "43174": 1, + "43177": 1, + "43183": 1, + "43190": 2, + "43192": 2, + "43197": 1, + "43211": 1, + "43215": 2, + "43219": 1, + "43225": 1, + "43232": 2, + "43237": 1, + "43240": 1, + "43246": 1, + "43248": 1, + "43254": 1, + "43255": 1, + "43259": 1, + "43260": 1, + "43268": 1, + "43275": 1, + "43283": 2, + "43284": 1, + "43285": 1, + "43287": 1, + "43291": 1, + "43295": 1, + "43301": 1, + "43306": 1, + "43308": 1, + "43312": 1, + "43314": 1, + "43317": 1, + "43319": 1, + "43320": 3, + "43325": 1, + "43326": 2, + "43328": 1, + "43333": 1, + "43336": 1, + "43338": 1, + "43340": 1, + "43341": 1, + "43346": 1, + "43350": 1, + "43351": 2, + "43355": 1, + "43356": 2, + "43361": 1, + "43367": 1, + "43369": 2, + "43370": 1, + "43374": 1, + "43375": 1, + "43376": 1, + "43378": 1, + "43381": 1, + "43386": 1, + "43388": 2, + "43389": 1, + "43396": 1, + "43397": 1, + "43400": 1, + "43405": 1, + "43411": 1, + "43413": 1, + "43414": 2, + "43417": 1, + "43419": 1, + "43420": 1, + "43421": 1, + "43423": 1, + "43424": 2, + "43426": 2, + "43429": 1, + "43431": 1, + "43432": 1, + "43433": 1, + "43434": 2, + "43435": 1, + "43438": 1, + "43439": 1, + "43440": 2, + "43442": 1, + "43445": 1, + "43447": 1, + "43448": 1, + "43449": 1, + "43450": 2, + "43452": 1, + "43454": 1, + "43455": 1, + "43459": 3, + "43461": 1, + "43463": 1, + "43469": 1, + "43474": 1, + "43477": 2, + "43479": 1, + "43482": 1, + "43483": 1, + "43488": 1, + "43489": 1, + "43490": 3, + "43492": 1, + "43493": 1, + "43494": 2, + "43495": 2, + "43497": 2, + "43501": 2, + "43503": 2, + "43504": 2, + "43505": 2, + "43508": 2, + "43511": 1, + "43512": 1, + "43517": 1, + "43528": 1, + "43534": 1, + "43536": 1, + "43548": 1, + "43563": 1, + "43567": 1, + "43570": 1, + "43572": 1, + "43585": 2, + "43597": 2, + "43598": 1, + "43600": 1, + "43601": 1, + "43605": 2, + "43606": 1, + "43610": 1, + "43613": 1, + "43615": 1, + "43616": 1, + "43622": 1, + "43625": 1, + "43632": 1, + "43633": 1, + "43635": 1, + "43636": 1, + "43640": 1, + "43644": 1, + "43650": 1, + "43654": 1, + "43658": 1, + "43661": 1, + "43672": 1, + "43674": 1, + "43675": 1, + "43677": 1, + "43682": 1, + "43687": 1, + "43690": 1, + "43691": 1, + "43694": 1, + "43695": 1, + "43703": 1, + "43704": 2, + "43705": 1, + "43710": 1, + "43712": 1, + "43713": 3, + "43716": 1, + "43720": 1, + "43726": 1, + "43738": 1, + "43785": 1, + "43820": 1, + "43822": 1, + "43891": 1, + "43905": 1, + "43952": 1, + "43964": 1, + "43986": 1, + "44047": 1, + "44052": 1, + "44122": 1, + "44145": 1, + "44192": 1, + "44224": 1, + "44279": 1, + "44297": 1, + "44310": 1, + "44370": 1, + "44382": 1, + "44439": 1, + "44453": 1, + "44473": 1, + "44496": 1, + "44533": 1, + "44555": 1, + "44558": 1, + "44599": 1, + "44614": 1, + "44627": 1, + "44637": 1, + "44638": 1, + "44663": 1, + "44725": 1, + "44727": 1, + "44736": 1, + "44776": 1, + "44798": 1, + "44821": 1, + "44847": 1, + "44864": 1, + "44895": 1, + "44908": 1, + "44944": 1, + "44947": 1, + "44954": 1, + "44972": 1, + "45008": 1, + "45068": 1, + "45072": 1, + "45088": 1, + "45089": 1, + "45134": 1, + "45150": 1, + "45170": 1, + "45201": 1, + "45231": 1, + "45236": 1, + "45250": 1, + "45291": 2, + "45303": 1, + "45331": 1, + "45371": 1, + "45394": 1, + "45413": 1, + "45414": 1, + "45433": 1, + "45471": 1, + "45475": 1, + "45487": 1, + "45513": 1, + "45565": 1, + "45573": 1, + "45578": 1, + "45601": 1, + "45646": 1, + "45670": 1, + "45678": 1, + "45679": 1, + "45708": 1, + "45754": 1, + "45757": 1, + "45768": 1, + "45774": 1, + "45818": 1, + "45829": 1, + "45850": 1, + "45856": 1, + "45892": 1, + "45906": 1, + "45920": 1, + "45929": 1, + "45950": 1, + "45953": 1, + "45996": 2, + "46011": 1, + "46015": 1, + "46051": 1, + "46061": 1, + "46084": 1, + "46093": 1, + "46108": 1, + "46130": 1, + "46136": 1, + "46144": 1, + "46163": 1, + "46188": 1, + "46208": 1, + "46216": 1, + "46235": 1, + "46261": 1, + "46266": 1, + "46294": 1, + "46309": 1, + "46322": 1, + "46326": 1, + "46372": 1, + "46374": 1, + "46375": 1, + "46409": 1, + "46430": 1, + "46431": 1, + "46447": 1, + "46480": 1, + "46510": 1, + "46511": 1, + "46532": 1, + "46550": 1, + "46573": 1, + "46574": 1, + "46580": 1, + "46627": 1, + "46651": 1, + "46659": 1, + "46666": 1, + "46685": 1, + "46712": 1, + "46737": 1, + "46739": 1, + "46744": 1, + "46775": 1, + "46796": 1, + "46817": 1, + "46827": 1, + "46847": 1, + "46850": 1, + "46864": 1, + "46886": 1, + "46897": 1, + "46916": 1, + "46926": 1, + "46943": 1, + "46954": 1, + "46964": 1, + "47000": 1, + "47008": 1, + "47009": 1, + "47046": 1, + "47047": 1, + "47058": 1, + "47061": 1, + "47082": 1, + "47093": 1, + "47102": 1, + "47111": 1, + "47149": 1, + "47163": 1, + "47200": 1, + "47220": 1, + "47223": 1, + "47262": 1, + "47320": 1, + "47351": 1, + "47366": 1, + "47387": 1, + "47427": 1, + "47467": 1, + "47497": 1, + "47528": 1, + "47558": 1, + "47600": 1, + "47629": 1, + "47635": 1, + "47678": 1, + "47703": 1, + "47762": 1, + "47771": 1, + "47785": 1, + "47830": 1, + "47865": 1, + "47921": 1, + "47937": 1, + "47986": 2, + "47994": 1, + "48055": 1, + "48059": 1, + "48082": 1, + "48095": 1, + "48133": 1, + "48141": 1, + "48147": 1, + "48178": 1, + "48182": 1, + "48188": 1, + "48189": 1, + "48190": 1, + "48191": 1, + "48193": 1, + "48194": 3, + "48196": 3, + "48197": 2, + "48198": 2, + "48199": 2, + "48201": 1, + "48202": 3, + "48204": 1, + "48206": 1, + "48207": 1, + "48215": 1, + "48216": 1, + "48217": 1, + "48220": 1, + "48221": 1, + "48228": 1, + "48229": 1, + "48231": 1, + "48233": 1, + "48235": 2, + "48241": 1, + "48244": 1, + "48248": 1, + "48253": 1, + "48257": 1, + "48260": 1, + "48264": 1, + "48273": 1, + "48274": 1, + "48278": 1, + "48279": 1, + "48290": 1, + "48291": 2, + "48294": 1, + "48301": 1, + "48307": 1, + "48310": 1, + "48317": 1, + "48319": 1, + "48324": 1, + "48329": 1, + "48333": 2, + "48334": 1, + "48342": 1, + "48345": 1, + "48359": 1, + "48363": 1, + "48366": 2, + "48370": 1, + "48372": 1, + "48378": 1, + "48379": 1, + "48385": 1, + "48389": 1, + "48394": 1, + "48396": 1, + "48400": 2, + "48401": 1, + "48404": 1, + "48410": 1, + "48411": 1, + "48412": 1, + "48415": 1, + "48421": 1, + "48423": 1, + "48424": 1, + "48427": 1, + "48428": 1, + "48434": 1, + "48435": 1, + "48442": 1, + "48444": 1, + "48451": 2, + "48462": 1, + "48469": 1, + "48473": 1, + "48474": 1, + "48475": 2, + "48477": 1, + "48478": 1, + "48480": 1, + "48481": 1, + "48492": 1, + "48500": 1, + "48502": 1, + "48507": 1, + "48509": 1, + "48511": 1, + "48513": 1, + "48514": 1, + "48516": 2, + "48518": 2, + "48519": 2, + "48520": 1, + "48521": 1, + "48523": 1, + "48528": 1, + "48531": 2, + "48532": 2, + "48535": 1, + "48537": 1, + "48538": 1, + "48542": 1, + "48546": 2, + "48552": 1, + "48555": 2, + "48556": 1, + "48558": 1, + "48559": 1, + "48562": 1, + "48564": 1, + "48565": 2, + "48566": 1, + "48570": 1, + "48571": 3, + "48572": 1, + "48573": 3, + "48575": 2, + "48577": 1, + "48579": 2, + "48580": 3, + "48581": 1, + "48582": 1, + "48584": 1, + "48588": 4, + "48591": 1, + "48592": 2, + "48593": 4, + "48595": 1, + "48597": 1, + "48603": 1, + "48608": 1, + "48611": 1, + "48612": 2, + "48613": 2, + "48614": 1, + "48616": 1, + "48620": 3, + "48624": 1, + "48625": 1, + "48626": 1, + "48627": 2, + "48629": 1, + "48631": 1, + "48632": 1, + "48634": 2, + "48635": 1, + "48636": 1, + "48638": 2, + "48640": 1, + "48643": 2, + "48644": 1, + "48647": 2, + "48648": 1, + "48652": 2, + "48653": 1, + "48655": 1, + "48662": 1, + "48664": 2, + "48668": 1, + "48674": 1, + "48679": 1, + "48702": 1, + "48713": 1, + "48727": 1, + "48729": 1, + "48757": 1, + "48760": 1, + "48769": 1, + "48776": 1, + "48778": 1, + "48782": 1, + "48798": 1, + "48811": 2, + "48815": 1, + "48822": 1, + "48828": 1, + "48832": 1, + "48855": 1, + "48865": 1, + "48869": 1, + "48889": 1, + "48890": 1, + "48895": 1, + "48898": 1, + "48925": 1, + "48928": 1, + "48941": 1, + "48945": 1, + "48949": 1, + "48950": 1, + "48965": 1, + "48966": 1, + "48974": 1, + "48976": 1, + "48979": 1, + "48981": 1, + "48984": 2, + "48989": 1, + "48990": 2, + "48991": 1, + "48994": 2, + "48996": 2, + "48997": 1, + "48999": 4, + "49002": 2, + "49004": 1, + "49006": 1, + "49008": 1, + "49009": 1, + "49010": 1, + "49011": 2, + "49012": 3, + "49013": 4, + "49014": 2, + "49015": 1, + "49016": 1, + "49017": 2, + "49018": 4, + "49019": 1, + "49020": 2, + "49021": 5, + "49022": 1, + "49025": 3, + "49026": 3, + "49027": 2, + "49029": 2, + "49030": 2, + "49031": 3, + "49033": 2, + "49034": 1, + "49035": 2, + "49036": 1, + "49037": 4, + "49038": 2, + "49039": 2, + "49041": 2, + "49043": 3, + "49044": 1, + "49045": 1, + "49047": 1, + "49048": 2, + "49049": 1, + "49050": 1, + "49051": 1, + "49052": 1, + "49053": 1, + "49054": 1, + "49056": 1, + "49061": 1, + "49064": 2, + "49065": 1, + "49066": 1, + "49067": 1, + "49069": 2, + "49070": 1, + "49071": 1, + "49072": 2, + "49075": 1, + "49076": 1, + "49078": 2, + "49079": 2, + "49080": 1, + "49081": 1, + "49083": 2, + "49084": 1, + "49089": 2, + "49090": 2, + "49092": 2, + "49093": 2, + "49096": 2, + "49098": 1, + "49099": 2, + "49100": 1, + "49101": 2, + "49104": 1, + "49108": 1, + "49111": 1, + "49114": 1, + "49117": 2, + "49120": 1, + "49230": 1, + "65536": 1000 + }, + "started": "2020-09-07T18:45:19.688Z", + "trafficStats": { + "incomingCompressionRatio": 0.8504757537841797, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 111473558, + "incomingOctetsWireLevel": 111487558, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.00012559032160792787, + "outgoingCompressionRatio": 0.8504757919311523, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 111473563, + "outgoingOctetsWireLevel": 111483563, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 8.970736855338517e-05, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "108073": 1, + "108089": 1, + "108095": 1, + "108114": 1, + "108117": 1, + "108120": 1, + "108129": 2, + "108132": 1, + "108134": 2, + "108136": 1, + "108159": 1, + "108160": 1, + "108167": 1, + "108170": 1, + "108172": 1, + "108173": 2, + "108177": 1, + "108188": 1, + "108190": 1, + "108193": 1, + "108194": 1, + "108203": 1, + "108204": 1, + "108205": 1, + "108207": 1, + "108209": 2, + "108216": 1, + "108217": 1, + "108221": 1, + "108222": 1, + "108224": 1, + "108227": 1, + "108228": 1, + "108230": 2, + "108231": 1, + "108236": 1, + "108238": 1, + "108246": 1, + "108251": 1, + "108256": 1, + "108259": 1, + "108262": 1, + "108266": 1, + "108272": 1, + "108273": 1, + "108278": 1, + "108279": 2, + "108281": 1, + "108287": 2, + "108305": 1, + "108306": 1, + "108310": 1, + "108313": 1, + "108315": 1, + "108317": 1, + "108319": 1, + "108321": 2, + "108324": 1, + "108325": 1, + "108326": 2, + "108331": 1, + "108332": 1, + "108338": 1, + "108342": 1, + "108353": 2, + "108354": 1, + "108356": 2, + "108358": 1, + "108362": 2, + "108365": 1, + "108366": 2, + "108368": 1, + "108370": 1, + "108371": 2, + "108375": 1, + "108379": 3, + "108383": 2, + "108394": 2, + "108395": 1, + "108401": 1, + "108402": 1, + "108405": 2, + "108407": 1, + "108408": 2, + "108409": 1, + "108414": 2, + "108415": 1, + "108417": 1, + "108419": 1, + "108420": 1, + "108424": 2, + "108425": 1, + "108429": 1, + "108430": 3, + "108438": 2, + "108439": 1, + "108440": 1, + "108443": 1, + "108444": 2, + "108447": 1, + "108452": 2, + "108458": 1, + "108459": 1, + "108460": 1, + "108461": 1, + "108464": 1, + "108466": 2, + "108467": 1, + "108468": 2, + "108469": 1, + "108475": 1, + "108476": 1, + "108477": 1, + "108480": 2, + "108483": 1, + "108487": 2, + "108488": 1, + "108489": 1, + "108493": 1, + "108496": 1, + "108497": 1, + "108508": 1, + "108509": 1, + "108511": 3, + "108512": 1, + "108515": 1, + "108516": 1, + "108518": 1, + "108520": 1, + "108523": 2, + "108525": 1, + "108530": 1, + "108536": 1, + "108544": 1, + "108549": 1, + "108551": 1, + "108583": 2, + "108590": 1, + "108595": 1, + "108605": 1, + "108617": 1, + "108619": 1, + "108621": 1, + "108622": 1, + "108626": 1, + "108631": 2, + "108632": 1, + "108635": 1, + "108647": 1, + "108651": 1, + "108653": 1, + "108659": 2, + "108679": 1, + "108681": 1, + "108682": 1, + "108686": 1, + "108689": 1, + "108706": 1, + "108709": 1, + "108715": 1, + "108722": 2, + "108724": 2, + "108729": 1, + "108743": 1, + "108747": 2, + "108751": 1, + "108757": 1, + "108764": 2, + "108769": 1, + "108772": 1, + "108778": 1, + "108780": 1, + "108786": 1, + "108787": 1, + "108791": 1, + "108792": 1, + "108800": 1, + "108807": 1, + "108815": 2, + "108816": 1, + "108817": 1, + "108819": 1, + "108823": 1, + "108827": 1, + "108833": 1, + "108838": 1, + "108840": 1, + "108844": 1, + "108846": 1, + "108849": 1, + "108851": 1, + "108852": 3, + "108857": 1, + "108858": 2, + "108860": 1, + "108865": 1, + "108868": 1, + "108870": 1, + "108872": 1, + "108873": 1, + "108878": 1, + "108882": 1, + "108883": 2, + "108887": 1, + "108888": 2, + "108893": 1, + "108899": 1, + "108901": 2, + "108902": 1, + "108906": 1, + "108907": 1, + "108908": 1, + "108910": 1, + "108913": 1, + "108918": 1, + "108920": 2, + "108921": 1, + "108928": 1, + "108929": 1, + "108932": 1, + "108937": 1, + "108943": 1, + "108945": 1, + "108946": 2, + "108949": 1, + "108951": 1, + "108952": 1, + "108953": 1, + "108955": 1, + "108956": 2, + "108958": 2, + "108961": 1, + "108963": 1, + "108964": 1, + "108965": 1, + "108966": 2, + "108967": 1, + "108970": 1, + "108971": 1, + "108972": 2, + "108974": 1, + "108977": 1, + "108979": 1, + "108980": 1, + "108981": 1, + "108982": 1, + "108984": 1, + "108986": 1, + "108987": 2, + "108991": 3, + "108993": 1, + "108995": 1, + "109001": 1, + "109006": 1, + "109009": 2, + "109011": 1, + "109014": 1, + "109015": 1, + "109020": 1, + "109021": 1, + "109022": 3, + "109024": 1, + "109025": 1, + "109026": 2, + "109027": 2, + "109029": 2, + "109033": 2, + "109035": 2, + "109036": 2, + "109037": 2, + "109040": 2, + "109043": 1, + "109044": 1, + "109049": 1, + "109060": 1, + "109066": 1, + "109068": 1, + "109080": 1, + "109095": 1, + "109099": 1, + "109102": 1, + "109104": 1, + "109117": 2, + "109129": 2, + "109130": 1, + "109132": 1, + "109133": 1, + "109137": 2, + "109138": 1, + "109142": 1, + "109145": 1, + "109147": 1, + "109148": 1, + "109154": 1, + "109157": 1, + "109164": 1, + "109165": 1, + "109167": 1, + "109168": 1, + "109172": 1, + "109176": 1, + "109182": 1, + "109186": 1, + "109190": 1, + "109193": 1, + "109204": 1, + "109206": 1, + "109207": 1, + "109209": 1, + "109214": 1, + "109219": 1, + "109222": 1, + "109223": 1, + "109226": 1, + "109227": 1, + "109235": 1, + "109236": 2, + "109237": 1, + "109242": 1, + "109244": 1, + "109245": 3, + "109248": 1, + "109252": 1, + "109258": 1, + "109270": 1, + "109317": 1, + "109352": 1, + "109354": 1, + "109423": 1, + "109437": 1, + "109484": 1, + "109496": 1, + "109518": 1, + "109579": 1, + "109584": 1, + "109654": 1, + "109677": 1, + "109724": 1, + "109756": 1, + "109811": 1, + "109829": 1, + "109842": 1, + "109902": 1, + "109914": 1, + "109971": 1, + "109985": 1, + "110005": 1, + "110028": 1, + "110065": 1, + "110087": 1, + "110090": 1, + "110131": 1, + "110146": 1, + "110159": 1, + "110169": 1, + "110170": 1, + "110195": 1, + "110257": 1, + "110259": 1, + "110268": 1, + "110308": 1, + "110330": 1, + "110353": 1, + "110379": 1, + "110396": 1, + "110427": 1, + "110440": 1, + "110476": 1, + "110479": 1, + "110486": 1, + "110504": 1, + "110540": 1, + "110600": 1, + "110604": 1, + "110620": 1, + "110621": 1, + "110666": 1, + "110682": 1, + "110702": 1, + "110733": 1, + "110763": 1, + "110768": 1, + "110782": 1, + "110823": 2, + "110835": 1, + "110863": 1, + "110903": 1, + "110926": 1, + "110945": 1, + "110946": 1, + "110965": 1, + "111003": 1, + "111007": 1, + "111019": 1, + "111045": 1, + "111097": 1, + "111105": 1, + "111110": 1, + "111133": 1, + "111178": 1, + "111202": 1, + "111210": 1, + "111211": 1, + "111240": 1, + "111286": 1, + "111289": 1, + "111300": 1, + "111306": 1, + "111350": 1, + "111361": 1, + "111382": 1, + "111388": 1, + "111424": 1, + "111438": 1, + "111452": 1, + "111461": 1, + "111482": 1, + "111485": 1, + "111528": 2, + "111543": 1, + "111547": 1, + "111583": 1, + "111593": 1, + "111616": 1, + "111625": 1, + "111640": 1, + "111662": 1, + "111668": 1, + "111676": 1, + "111695": 1, + "111720": 1, + "111740": 1, + "111748": 1, + "111767": 1, + "111793": 1, + "111798": 1, + "111826": 1, + "111841": 1, + "111854": 1, + "111858": 1, + "111904": 1, + "111906": 1, + "111907": 1, + "111941": 1, + "111962": 1, + "111963": 1, + "111979": 1, + "112012": 1, + "112042": 1, + "112043": 1, + "112064": 1, + "112082": 1, + "112105": 1, + "112106": 1, + "112112": 1, + "112159": 1, + "112183": 1, + "112191": 1, + "112198": 1, + "112217": 1, + "112244": 1, + "112269": 1, + "112271": 1, + "112276": 1, + "112307": 1, + "112328": 1, + "112349": 1, + "112359": 1, + "112379": 1, + "112382": 1, + "112396": 1, + "112418": 1, + "112429": 1, + "112448": 1, + "112458": 1, + "112475": 1, + "112486": 1, + "112496": 1, + "112532": 1, + "112540": 1, + "112541": 1, + "112578": 1, + "112579": 1, + "112590": 1, + "112593": 1, + "112614": 1, + "112625": 1, + "112634": 1, + "112643": 1, + "112681": 1, + "112695": 1, + "112732": 1, + "112752": 1, + "112755": 1, + "112794": 1, + "112852": 1, + "112883": 1, + "112898": 1, + "112919": 1, + "112959": 1, + "112999": 1, + "113029": 1, + "113060": 1, + "113090": 1, + "113132": 1, + "113161": 1, + "113167": 1, + "113210": 1, + "113235": 1, + "113294": 1, + "113303": 1, + "113317": 1, + "113362": 1, + "113397": 1, + "113453": 1, + "113469": 1, + "113518": 2, + "113526": 1, + "113587": 1, + "113591": 1, + "113614": 1, + "113627": 1, + "113665": 1, + "113673": 1, + "113679": 1, + "113710": 1, + "113714": 1, + "113720": 1, + "113721": 1, + "113722": 1, + "113723": 1, + "113725": 1, + "113726": 3, + "113728": 3, + "113729": 2, + "113730": 2, + "113731": 2, + "113733": 1, + "113734": 3, + "113736": 1, + "113738": 1, + "113739": 1, + "113747": 1, + "113748": 1, + "113749": 1, + "113752": 1, + "113753": 1, + "113760": 1, + "113761": 1, + "113763": 1, + "113765": 1, + "113767": 2, + "113773": 1, + "113776": 1, + "113780": 1, + "113785": 1, + "113789": 1, + "113792": 1, + "113796": 1, + "113805": 1, + "113806": 1, + "113810": 1, + "113811": 1, + "113822": 1, + "113823": 2, + "113826": 1, + "113833": 1, + "113839": 1, + "113842": 1, + "113849": 1, + "113851": 1, + "113856": 1, + "113861": 1, + "113865": 2, + "113866": 1, + "113874": 1, + "113877": 1, + "113891": 1, + "113895": 1, + "113898": 2, + "113902": 1, + "113904": 1, + "113910": 1, + "113911": 1, + "113917": 1, + "113921": 1, + "113926": 1, + "113928": 1, + "113932": 2, + "113933": 1, + "113936": 1, + "113942": 1, + "113943": 1, + "113944": 1, + "113947": 1, + "113953": 1, + "113955": 1, + "113956": 1, + "113959": 1, + "113960": 1, + "113966": 1, + "113967": 1, + "113974": 1, + "113976": 1, + "113983": 2, + "113994": 1, + "114001": 1, + "114005": 1, + "114006": 1, + "114007": 2, + "114009": 1, + "114010": 1, + "114012": 1, + "114013": 1, + "114024": 1, + "114032": 1, + "114034": 1, + "114039": 1, + "114041": 1, + "114043": 1, + "114045": 1, + "114046": 1, + "114048": 2, + "114050": 2, + "114051": 2, + "114052": 1, + "114053": 1, + "114055": 1, + "114060": 1, + "114063": 2, + "114064": 2, + "114067": 1, + "114069": 1, + "114070": 1, + "114074": 1, + "114078": 2, + "114084": 1, + "114087": 2, + "114088": 1, + "114090": 1, + "114091": 1, + "114094": 1, + "114096": 1, + "114097": 2, + "114098": 1, + "114102": 1, + "114103": 3, + "114104": 1, + "114105": 3, + "114107": 2, + "114109": 1, + "114111": 2, + "114112": 3, + "114113": 1, + "114114": 1, + "114116": 1, + "114120": 4, + "114123": 1, + "114124": 2, + "114125": 4, + "114127": 1, + "114129": 1, + "114135": 1, + "114140": 1, + "114143": 1, + "114144": 2, + "114145": 2, + "114146": 1, + "114148": 1, + "114152": 3, + "114156": 1, + "114157": 1, + "114158": 1, + "114159": 2, + "114161": 1, + "114163": 1, + "114164": 1, + "114166": 2, + "114167": 1, + "114168": 1, + "114170": 2, + "114172": 1, + "114175": 2, + "114176": 1, + "114179": 2, + "114180": 1, + "114184": 2, + "114185": 1, + "114187": 1, + "114194": 1, + "114196": 2, + "114200": 1, + "114206": 1, + "114211": 1, + "114234": 1, + "114245": 1, + "114259": 1, + "114261": 1, + "114289": 1, + "114292": 1, + "114301": 1, + "114308": 1, + "114310": 1, + "114314": 1, + "114330": 1, + "114343": 2, + "114347": 1, + "114354": 1, + "114360": 1, + "114364": 1, + "114387": 1, + "114397": 1, + "114401": 1, + "114421": 1, + "114422": 1, + "114427": 1, + "114430": 1, + "114457": 1, + "114460": 1, + "114473": 1, + "114477": 1, + "114481": 1, + "114482": 1, + "114497": 1, + "114498": 1, + "114506": 1, + "114508": 1, + "114511": 1, + "114513": 1, + "114516": 2, + "114521": 1, + "114522": 2, + "114523": 1, + "114526": 2, + "114528": 2, + "114529": 1, + "114531": 4, + "114534": 2, + "114536": 1, + "114538": 1, + "114540": 1, + "114541": 1, + "114542": 1, + "114543": 2, + "114544": 3, + "114545": 4, + "114546": 2, + "114547": 1, + "114548": 1, + "114549": 2, + "114550": 4, + "114551": 1, + "114552": 2, + "114553": 5, + "114554": 1, + "114557": 3, + "114558": 3, + "114559": 2, + "114561": 2, + "114562": 2, + "114563": 3, + "114565": 2, + "114566": 1, + "114567": 2, + "114568": 1, + "114569": 4, + "114570": 2, + "114571": 2, + "114573": 2, + "114575": 3, + "114576": 1, + "114577": 1, + "114579": 1, + "114580": 2, + "114581": 1, + "114582": 1, + "114583": 1, + "114584": 1, + "114585": 1, + "114586": 1, + "114588": 1, + "114593": 1, + "114596": 2, + "114597": 1, + "114598": 1, + "114599": 1, + "114601": 2, + "114602": 1, + "114603": 1, + "114604": 2, + "114607": 1, + "114608": 1, + "114610": 2, + "114611": 2, + "114612": 1, + "114613": 1, + "114615": 2, + "114616": 1, + "114621": 2, + "114622": 2, + "114624": 2, + "114625": 2, + "114628": 2, + "114630": 1, + "114631": 2, + "114632": 1, + "114633": 2, + "114636": 1, + "114640": 1, + "114643": 1, + "114646": 1, + "114649": 2, + "114652": 1, + "114762": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333239266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882aea3bd19ad4b" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "aea3bd19" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_2_11.html b/autobahn/client/tungstenite_case_12_2_11.html new file mode 100644 index 0000000..58650a2 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_11.html @@ -0,0 +1,1006 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.2.11 : Pass - 1145 ms @ 2020-09-07T18:45:31.545Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=330&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: a+OsJcqG8BrCeDvJ3SVOGA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: g3wIjArf8+aDi5DRfls0LY9YFFs=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
449914499
457014570
457614576
459214592
460514605
460914609
462514625
465814658
467514675
470014700
470714707
476714767
476814768
479914799
481814818
483914839
484814848
487514875
489114891
495314953
498514985
501415014
501515015
503515035
509615096
512015120
514215142
516515165
524715247
531315313
546515465
561315613
575915759
581215812
585615856
5860211720
586515865
587515875
5876211752
587715877
5886423544
588915889
589515895
590115901
590515905
5906317718
592315923
5924211848
593915939
594115941
594615946
5950211900
596115961
5964211928
596915969
597415974
597515975
598015980
598215982
598515985
599115991
599315993
600916009
601216012
601316013
601716017
602116021
604216042
604516045
605516055
606816068
6073212146
607516075
609316093
610216102
611816118
613216132
614816148
616816168
618416184
618716187
619516195
622616226
622916229
624216242
626116261
628716287
629216292
632216322
632716327
635116351
635916359
636116361
638116381
638916389
641916419
642616426
645916459
646316463
649416494
651416514
651816518
652516525
655516555
657916579
660816608
662716627
663216632
665716657
667616676
668116681
669216692
671716717
673316733
673416734
674316743
674516745
675416754
675616756
676616766
677516775
678116781
679416794
680616806
682116821
683516835
684916849
686016860
686416864
687416874
688216882
688316883
688916889
689116891
689316893
689416894
689716897
689816898
689916899
6903213806
6904213808
690516905
690716907
690916909
691816918
692116921
6922213844
692316923
6924213848
692516925
692616926
692816928
693116931
693316933
6934213868
6935213870
693916939
6940213880
6941320823
694216942
694316943
6944213888
694616946
695216952
695616956
6959213918
696216962
696516965
696616966
6969213938
697016970
697316973
6974213948
6975213950
6976213952
697716977
697816978
6981427924
698316983
698416984
6991213982
699216992
6993320979
6994213988
699516995
699616996
699716997
6999213998
7000321000
700217002
7003214006
700517005
700817008
7010214020
7011214022
701217012
701317013
7014214028
701517015
7016535080
702117021
7023321069
7024214048
702517025
7026321078
7027321081
7028321084
703017030
7032214064
703317033
7034214068
703517035
7036214072
703817038
703917039
704117041
704217042
7044321132
704517045
704717047
7048214096
7049214098
705117051
705217052
705517055
7056214112
7057214114
706017060
706117061
706217062
706317063
706417064
7067214134
706817068
707017070
707117071
707217072
707417074
707517075
7077214154
707817078
7079321237
7081214162
7082214164
7083214166
7084321252
7085321255
7088321264
7089321267
7090428360
7091428364
709217092
709317093
7094214188
7095214190
7096428384
709717097
7098214196
7099642594
710017100
7102642612
710317103
710417104
710517105
710617106
7107214214
7108214216
710917109
7110214220
7111321333
7112214224
7113856904
7114535570
7115964035
7116642696
7117321351
7118214236
7119321357
7120321360
7121214242
7122535610
7123321369
712417124
7126535630
712717127
712817128
7129214258
713117131
7132214264
7133321399
713417134
7135214270
713617136
713717137
713817138
7139321417
7140321420
7141214282
7143321429
7144964296
7145321435
714617146
7147214294
7148321444
714917149
7150321450
7151321453
7152214304
7153535765
7154535770
7155857240
7156964404
7157642942
7158642948
7159428636
7160428640
7161535805
7163428652
7164857312
71651178815
7166535830
7167428668
7168750176
7169535845
7170321510
7171750197
7172643032
7173428692
7174857392
7175857400
71761178936
7177750239
717814100492
7179857432
718017180
7181321543
7182857456
7183535915
7184535920
7185428740
7186214372
7187535935
7188535940
7189214378
7190214380
7191428764
7192857536
7193214386
7194428776
7195643170
719617196
7197214394
7198214396
719917199
720117201
720217202
720417204
720517205
7206536030
7209536045
7210321630
721117211
7213321639
721417214
7215214430
7216214432
721717217
7218214436
7219214438
7220321660
7221428884
7222214444
7223643338
7224321672
7225643350
722617226
7227321681
722817228
7229428916
7230214460
7231428924
7233321699
7234428936
7235536175
723617236
7237536185
7238321714
7239214478
7240428960
7241643446
7242428968
7243214486
7244428976
7245536225
7246428984
72471394211
7248428992
7249321747
7250321750
725117251
7252858016
725317253
7254750778
7255321765
725617256
7257214514
7258214516
725917259
7260214520
7261429044
7263214526
7264214528
7265321795
726617266
726717267
726817268
7269321807
727117271
727217272
7275214550
7276321828
7277214554
7278429112
7279321837
7280321840
7281321843
7282321846
7283214566
7284214568
728517285
7286321858
7287214574
7289321867
729017290
7291214582
7300214600
7301214602
7303321909
7304214608
730617306
730717307
730917309
731017310
731117311
7312214624
731517315
731717317
7318321954
7320214640
732217322
732317323
732517325
7327321981
732817328
732917329
733117331
733217332
733717337
734017340
734217342
7343214686
734417344
734517345
Total10026981484
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
21122
3824
41768
51050
6318
7535
8972
9545
10660
11666
12560
13791
14684
15345
16580
176102
189162
19357
205100
218168
22366
235115
24372
25250
26252
27127
28256
29129
304120
31131
325160
34268
355175
363108
37274
38138
394156
40140
414164
42284
43143
444176
454180
463138
476282
483144
496294
503150
518408
523156
534212
54154
556330
566336
577399
582116
594236
605300
616366
62162
639567
643192
653195
665330
677469
684272
692138
706420
716426
725360
73151095
745370
757525
766456
772154
789702
793237
808640
817567
824328
835415
843252
853255
864344
875435
882176
892178
903270
914364
925460
934372
943282
954380
962192
973291
986588
99199
1012202
1023306
1033309
1045520
1056630
1065530
1074428
1087756
1095545
1105550
1112222
1125560
1133339
1142228
1156690
1163348
1173351
1183354
1193357
1201120
1213363
1232246
1241124
1265630
1274508
1314524
1324528
1332266
1342268
1352270
1361136
1371137
1381138
1393417
1404560
1412282
1432286
1442288
1452290
1466876
1472294
1483444
1502300
1514604
1521152
1532306
1541154
1555775
1563468
1571157
1581158
1592318
1601160
1613483
1621162
1634652
1653495
1662332
1673501
1684672
1693507
1701170
1712342
1724688
1734692
1745870
17561050
1763528
1771177
1782356
1793537
1804720
1813543
1822364
18371281
1841184
18661116
1872374
1881188
1893567
1901190
1912382
1922384
1931193
1942388
1953585
1962392
19781576
1985990
19991791
20071400
2014804
2022404
2034812
20451020
2052410
20661236
2073621
2081208
21061260
2112422
2121212
2133639
2142428
2151215
2162432
2173651
2181218
2192438
2203660
2211221
2222444
22351115
22451120
2252450
2261226
2274908
228112508
22951145
2301230
2313693
2323696
2334932
2344936
2353705
2364944
23761422
23861428
239102390
240122880
24181928
24261452
24361458
24461464
24561470
24751235
24881984
249133237
25092250
25141004
25292268
25382024
2543762
25571785
25671792
25741028
25892322
25992331
260267516955260
Total277537083403
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
026751
21000
81
Total27752
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333330266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888241a165054249
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3431613136353035
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_2_11.json b/autobahn/client/tungstenite_case_12_2_11.json new file mode 100644 index 0000000..bbe68e9 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_11.json @@ -0,0 +1,853 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 330, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 1145, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=330&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: a+OsJcqG8BrCeDvJ3SVOGA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: g3wIjArf8+aDi5DRfls0LY9YFFs=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.2.11", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "4499": 1, + "4570": 1, + "4576": 1, + "4592": 1, + "4605": 1, + "4609": 1, + "4625": 1, + "4658": 1, + "4675": 1, + "4700": 1, + "4707": 1, + "4767": 1, + "4768": 1, + "4799": 1, + "4818": 1, + "4839": 1, + "4848": 1, + "4875": 1, + "4891": 1, + "4953": 1, + "4985": 1, + "5014": 1, + "5015": 1, + "5035": 1, + "5096": 1, + "5120": 1, + "5142": 1, + "5165": 1, + "5247": 1, + "5313": 1, + "5465": 1, + "5613": 1, + "5759": 1, + "5812": 1, + "5856": 1, + "5860": 2, + "5865": 1, + "5875": 1, + "5876": 2, + "5877": 1, + "5886": 4, + "5889": 1, + "5895": 1, + "5901": 1, + "5905": 1, + "5906": 3, + "5923": 1, + "5924": 2, + "5939": 1, + "5941": 1, + "5946": 1, + "5950": 2, + "5961": 1, + "5964": 2, + "5969": 1, + "5974": 1, + "5975": 1, + "5980": 1, + "5982": 1, + "5985": 1, + "5991": 1, + "5993": 1, + "6009": 1, + "6012": 1, + "6013": 1, + "6017": 1, + "6021": 1, + "6042": 1, + "6045": 1, + "6055": 1, + "6068": 1, + "6073": 2, + "6075": 1, + "6093": 1, + "6102": 1, + "6118": 1, + "6132": 1, + "6148": 1, + "6168": 1, + "6184": 1, + "6187": 1, + "6195": 1, + "6226": 1, + "6229": 1, + "6242": 1, + "6261": 1, + "6287": 1, + "6292": 1, + "6322": 1, + "6327": 1, + "6351": 1, + "6359": 1, + "6361": 1, + "6381": 1, + "6389": 1, + "6419": 1, + "6426": 1, + "6459": 1, + "6463": 1, + "6494": 1, + "6514": 1, + "6518": 1, + "6525": 1, + "6555": 1, + "6579": 1, + "6608": 1, + "6627": 1, + "6632": 1, + "6657": 1, + "6676": 1, + "6681": 1, + "6692": 1, + "6717": 1, + "6733": 1, + "6734": 1, + "6743": 1, + "6745": 1, + "6754": 1, + "6756": 1, + "6766": 1, + "6775": 1, + "6781": 1, + "6794": 1, + "6806": 1, + "6821": 1, + "6835": 1, + "6849": 1, + "6860": 1, + "6864": 1, + "6874": 1, + "6882": 1, + "6883": 1, + "6889": 1, + "6891": 1, + "6893": 1, + "6894": 1, + "6897": 1, + "6898": 1, + "6899": 1, + "6903": 2, + "6904": 2, + "6905": 1, + "6907": 1, + "6909": 1, + "6918": 1, + "6921": 1, + "6922": 2, + "6923": 1, + "6924": 2, + "6925": 1, + "6926": 1, + "6928": 1, + "6931": 1, + "6933": 1, + "6934": 2, + "6935": 2, + "6939": 1, + "6940": 2, + "6941": 3, + "6942": 1, + "6943": 1, + "6944": 2, + "6946": 1, + "6952": 1, + "6956": 1, + "6959": 2, + "6962": 1, + "6965": 1, + "6966": 1, + "6969": 2, + "6970": 1, + "6973": 1, + "6974": 2, + "6975": 2, + "6976": 2, + "6977": 1, + "6978": 1, + "6981": 4, + "6983": 1, + "6984": 1, + "6991": 2, + "6992": 1, + "6993": 3, + "6994": 2, + "6995": 1, + "6996": 1, + "6997": 1, + "6999": 2, + "7000": 3, + "7002": 1, + "7003": 2, + "7005": 1, + "7008": 1, + "7010": 2, + "7011": 2, + "7012": 1, + "7013": 1, + "7014": 2, + "7015": 1, + "7016": 5, + "7021": 1, + "7023": 3, + "7024": 2, + "7025": 1, + "7026": 3, + "7027": 3, + "7028": 3, + "7030": 1, + "7032": 2, + "7033": 1, + "7034": 2, + "7035": 1, + "7036": 2, + "7038": 1, + "7039": 1, + "7041": 1, + "7042": 1, + "7044": 3, + "7045": 1, + "7047": 1, + "7048": 2, + "7049": 2, + "7051": 1, + "7052": 1, + "7055": 1, + "7056": 2, + "7057": 2, + "7060": 1, + "7061": 1, + "7062": 1, + "7063": 1, + "7064": 1, + "7067": 2, + "7068": 1, + "7070": 1, + "7071": 1, + "7072": 1, + "7074": 1, + "7075": 1, + "7077": 2, + "7078": 1, + "7079": 3, + "7081": 2, + "7082": 2, + "7083": 2, + "7084": 3, + "7085": 3, + "7088": 3, + "7089": 3, + "7090": 4, + "7091": 4, + "7092": 1, + "7093": 1, + "7094": 2, + "7095": 2, + "7096": 4, + "7097": 1, + "7098": 2, + "7099": 6, + "7100": 1, + "7102": 6, + "7103": 1, + "7104": 1, + "7105": 1, + "7106": 1, + "7107": 2, + "7108": 2, + "7109": 1, + "7110": 2, + "7111": 3, + "7112": 2, + "7113": 8, + "7114": 5, + "7115": 9, + "7116": 6, + "7117": 3, + "7118": 2, + "7119": 3, + "7120": 3, + "7121": 2, + "7122": 5, + "7123": 3, + "7124": 1, + "7126": 5, + "7127": 1, + "7128": 1, + "7129": 2, + "7131": 1, + "7132": 2, + "7133": 3, + "7134": 1, + "7135": 2, + "7136": 1, + "7137": 1, + "7138": 1, + "7139": 3, + "7140": 3, + "7141": 2, + "7143": 3, + "7144": 9, + "7145": 3, + "7146": 1, + "7147": 2, + "7148": 3, + "7149": 1, + "7150": 3, + "7151": 3, + "7152": 2, + "7153": 5, + "7154": 5, + "7155": 8, + "7156": 9, + "7157": 6, + "7158": 6, + "7159": 4, + "7160": 4, + "7161": 5, + "7163": 4, + "7164": 8, + "7165": 11, + "7166": 5, + "7167": 4, + "7168": 7, + "7169": 5, + "7170": 3, + "7171": 7, + "7172": 6, + "7173": 4, + "7174": 8, + "7175": 8, + "7176": 11, + "7177": 7, + "7178": 14, + "7179": 8, + "7180": 1, + "7181": 3, + "7182": 8, + "7183": 5, + "7184": 5, + "7185": 4, + "7186": 2, + "7187": 5, + "7188": 5, + "7189": 2, + "7190": 2, + "7191": 4, + "7192": 8, + "7193": 2, + "7194": 4, + "7195": 6, + "7196": 1, + "7197": 2, + "7198": 2, + "7199": 1, + "7201": 1, + "7202": 1, + "7204": 1, + "7205": 1, + "7206": 5, + "7209": 5, + "7210": 3, + "7211": 1, + "7213": 3, + "7214": 1, + "7215": 2, + "7216": 2, + "7217": 1, + "7218": 2, + "7219": 2, + "7220": 3, + "7221": 4, + "7222": 2, + "7223": 6, + "7224": 3, + "7225": 6, + "7226": 1, + "7227": 3, + "7228": 1, + "7229": 4, + "7230": 2, + "7231": 4, + "7233": 3, + "7234": 4, + "7235": 5, + "7236": 1, + "7237": 5, + "7238": 3, + "7239": 2, + "7240": 4, + "7241": 6, + "7242": 4, + "7243": 2, + "7244": 4, + "7245": 5, + "7246": 4, + "7247": 13, + "7248": 4, + "7249": 3, + "7250": 3, + "7251": 1, + "7252": 8, + "7253": 1, + "7254": 7, + "7255": 3, + "7256": 1, + "7257": 2, + "7258": 2, + "7259": 1, + "7260": 2, + "7261": 4, + "7263": 2, + "7264": 2, + "7265": 3, + "7266": 1, + "7267": 1, + "7268": 1, + "7269": 3, + "7271": 1, + "7272": 1, + "7275": 2, + "7276": 3, + "7277": 2, + "7278": 4, + "7279": 3, + "7280": 3, + "7281": 3, + "7282": 3, + "7283": 2, + "7284": 2, + "7285": 1, + "7286": 3, + "7287": 2, + "7289": 3, + "7290": 1, + "7291": 2, + "7300": 2, + "7301": 2, + "7303": 3, + "7304": 2, + "7306": 1, + "7307": 1, + "7309": 1, + "7310": 1, + "7311": 1, + "7312": 2, + "7315": 1, + "7317": 1, + "7318": 3, + "7320": 2, + "7322": 1, + "7323": 1, + "7325": 1, + "7327": 3, + "7328": 1, + "7329": 1, + "7331": 1, + "7332": 1, + "7337": 1, + "7340": 1, + "7342": 1, + "7343": 2, + "7344": 1, + "7345": 1 + }, + "started": "2020-09-07T18:45:31.545Z", + "trafficStats": { + "incomingCompressionRatio": 0.8512230224609375, + "incomingOctetsAppLevel": 8192000, + "incomingOctetsWebSocketLevel": 6973219, + "incomingOctetsWireLevel": 6981219, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0011472463434749431, + "outgoingCompressionRatio": 0.8512230224609375, + "outgoingOctetsAppLevel": 8192000, + "outgoingOctetsWebSocketLevel": 6973219, + "outgoingOctetsWireLevel": 7083147, + "outgoingWebSocketFrames": 27751, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.015764312005689195, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 26751, + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 11, + "3": 8, + "4": 17, + "5": 10, + "6": 3, + "7": 5, + "8": 9, + "9": 5, + "10": 6, + "11": 6, + "12": 5, + "13": 7, + "14": 6, + "15": 3, + "16": 5, + "17": 6, + "18": 9, + "19": 3, + "20": 5, + "21": 8, + "22": 3, + "23": 5, + "24": 3, + "25": 2, + "26": 2, + "27": 1, + "28": 2, + "29": 1, + "30": 4, + "31": 1, + "32": 5, + "34": 2, + "35": 5, + "36": 3, + "37": 2, + "38": 1, + "39": 4, + "40": 1, + "41": 4, + "42": 2, + "43": 1, + "44": 4, + "45": 4, + "46": 3, + "47": 6, + "48": 3, + "49": 6, + "50": 3, + "51": 8, + "52": 3, + "53": 4, + "54": 1, + "55": 6, + "56": 6, + "57": 7, + "58": 2, + "59": 4, + "60": 5, + "61": 6, + "62": 1, + "63": 9, + "64": 3, + "65": 3, + "66": 5, + "67": 7, + "68": 4, + "69": 2, + "70": 6, + "71": 6, + "72": 5, + "73": 15, + "74": 5, + "75": 7, + "76": 6, + "77": 2, + "78": 9, + "79": 3, + "80": 8, + "81": 7, + "82": 4, + "83": 5, + "84": 3, + "85": 3, + "86": 4, + "87": 5, + "88": 2, + "89": 2, + "90": 3, + "91": 4, + "92": 5, + "93": 4, + "94": 3, + "95": 4, + "96": 2, + "97": 3, + "98": 6, + "99": 1, + "101": 2, + "102": 3, + "103": 3, + "104": 5, + "105": 6, + "106": 5, + "107": 4, + "108": 7, + "109": 5, + "110": 5, + "111": 2, + "112": 5, + "113": 3, + "114": 2, + "115": 6, + "116": 3, + "117": 3, + "118": 3, + "119": 3, + "120": 1, + "121": 3, + "123": 2, + "124": 1, + "126": 5, + "127": 4, + "131": 4, + "132": 4, + "133": 2, + "134": 2, + "135": 2, + "136": 1, + "137": 1, + "138": 1, + "139": 3, + "140": 4, + "141": 2, + "143": 2, + "144": 2, + "145": 2, + "146": 6, + "147": 2, + "148": 3, + "150": 2, + "151": 4, + "152": 1, + "153": 2, + "154": 1, + "155": 5, + "156": 3, + "157": 1, + "158": 1, + "159": 2, + "160": 1, + "161": 3, + "162": 1, + "163": 4, + "165": 3, + "166": 2, + "167": 3, + "168": 4, + "169": 3, + "170": 1, + "171": 2, + "172": 4, + "173": 4, + "174": 5, + "175": 6, + "176": 3, + "177": 1, + "178": 2, + "179": 3, + "180": 4, + "181": 3, + "182": 2, + "183": 7, + "184": 1, + "186": 6, + "187": 2, + "188": 1, + "189": 3, + "190": 1, + "191": 2, + "192": 2, + "193": 1, + "194": 2, + "195": 3, + "196": 2, + "197": 8, + "198": 5, + "199": 9, + "200": 7, + "201": 4, + "202": 2, + "203": 4, + "204": 5, + "205": 2, + "206": 6, + "207": 3, + "208": 1, + "210": 6, + "211": 2, + "212": 1, + "213": 3, + "214": 2, + "215": 1, + "216": 2, + "217": 3, + "218": 1, + "219": 2, + "220": 3, + "221": 1, + "222": 2, + "223": 5, + "224": 5, + "225": 2, + "226": 1, + "227": 4, + "228": 11, + "229": 5, + "230": 1, + "231": 3, + "232": 3, + "233": 4, + "234": 4, + "235": 3, + "236": 4, + "237": 6, + "238": 6, + "239": 10, + "240": 12, + "241": 8, + "242": 6, + "243": 6, + "244": 6, + "245": 6, + "247": 5, + "248": 8, + "249": 13, + "250": 9, + "251": 4, + "252": 9, + "253": 8, + "254": 3, + "255": 7, + "256": 7, + "257": 4, + "258": 9, + "259": 9, + "260": 26751 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333330266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888241a165054249" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "41a16505" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_2_12.html b/autobahn/client/tungstenite_case_12_2_12.html new file mode 100644 index 0000000..84cd349 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_12.html @@ -0,0 +1,1143 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.2.12 : Pass - 1979 ms @ 2020-09-07T18:45:32.690Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=331&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: C5HcbLgD/+vk4DxCln1K8Q==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: SUFkgvy5yTlW1SIiP99893wWA/A=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
10394110394
10445110445
10487110487
10500110500
10532110532
10555110555
10572110572
10579110579
10587110587
10656110656
10674110674
10716110716
10755110755
10757110757
10770110770
10779110779
10815110815
10867110867
10888110888
10893110893
10993110993
11023111023
11059111059
11072111072
11083111083
11156111156
11202111202
11218111218
11235111235
11250111250
11311111311
11366111366
11368111368
11385111385
11428111428
11477111477
11525111525
11537111537
11540111540
11584111584
11651111651
11669111669
11689111689
11721111721
11761111761
11767111767
11769111769
11771111771
11777111777
11792111792
11813111813
11814111814
11816111816
11823111823
11829111829
11841111841
11844111844
11848111848
11863111863
11867111867
11868111868
11896111896
11901111901
11905111905
11910111910
11912111912
11929111929
11945111945
11958111958
11967111967
11973111973
11988111988
12015112015
12021112021
12023112023
12038112038
12045112045
12066112066
12111224222
12127112127
12130112130
12144112144
12160224320
12173112173
12199224398
12225112225
12228112228
12239112239
12241112241
12273112273
12278112278
12280112280
12292112292
12321112321
12326112326
12345112345
12391112391
12400112400
12434112434
12437112437
12449112449
12504112504
12528112528
12555112555
12565112565
12620112620
12636112636
12667112667
12691112691
12709112709
12750112750
12786112786
12800112800
12805112805
12834112834
12876112876
12913112913
12922112922
12955112955
12974112974
12986112986
12990112990
13017113017
13033113033
13063113063
13074113074
13141113141
13155113155
13181113181
13186113186
13187113187
13227113227
13253113253
13273113273
13293113293
13338113338
13374113374
13375113375
13388113388
13410113410
13427113427
13469113469
13483113483
13519113519
13551113551
13566113566
13579113579
13592113592
13617113617
13642113642
13662113662
13672113672
13697113697
13722113722
13745113745
13747113747
13759113759
13770113770
13809113809
13827113827
13841113841
13845113845
13848113848
13850113850
13853227706
13854227708
13856113856
13857113857
13860113860
13861113861
13863113863
13866113866
13869227738
13870113870
13871227742
13873113873
13874113874
13880113880
13881113881
13882113882
13883113883
13887227774
13889113889
13890113890
13891113891
13896113896
13897113897
13898113898
13900113900
13901113901
13903113903
13907113907
13909113909
13912113912
13913113913
13914113914
13919113919
13929113929
13930227860
13932113932
13935113935
13936113936
13937113937
13940227880
13942227884
13950113950
13953113953
13959227918
13960113960
13967113967
13970113970
13972341916
13979113979
13981227962
13982113982
13986227972
13988113988
13990113990
13997227994
14001114001
14006114006
14007114007
14012114012
14014114014
14016228032
14017114017
14019114019
14023114023
14024570120
14029228058
14030114030
14031342093
14034228068
14035456140
14041114041
14043114043
14044342132
14047114047
14048114048
14049228098
14050228100
14051114051
14053228106
14055342165
14056228112
14057228114
14058456232
14060114060
14061228122
14062114062
14063228126
14064114064
14066114066
14067228134
14068342204
14069228138
14070114070
14071342213
14072114072
14073114073
14075114075
14077114077
14082114082
14083228166
14085228170
14091114091
14092114092
14093114093
14094114094
14096228192
14097114097
14098342294
14101114101
14104114104
14108228216
14109114109
14113114113
14115114115
14116114116
14117114117
14118114118
14121114121
14123114123
14126114126
14127114127
14128114128
14129114129
14130114130
14132228264
14133114133
14135114135
14136228272
14137114137
14139114139
14140228280
14141114141
14142228284
14144114144
14145114145
14146114146
14148114148
14150114150
14151114151
14153114153
14154114154
14155114155
14156342468
14157342471
14158342474
14159228318
14160228320
14161114161
14162114162
14164114164
14166342498
14168228336
14170114170
14173228346
14177342531
14178114178
14180228360
14181342543
14182456728
14183114183
14184114184
14186114186
14187114187
14188228376
14190228380
14195114195
14197114197
14198114198
14199114199
14201114201
14203114203
14205114205
14206114206
14208114208
14209114209
14210114210
14211114211
14212114212
14213114213
14214114214
14216228432
14217228434
14218228436
14219114219
14221114221
14222228444
14223228446
14224114224
14226114226
14228114228
14230114230
14233114233
14234228468
14235114235
14236114236
14237228474
14238342714
14240114240
14242114242
14247114247
14248114248
14250228500
14251342753
14253114253
14255342765
14256114256
14257342771
14258228516
14259114259
14260228520
14261342783
14264228528
14267228534
14268342804
14269457076
14270342810
14271457084
14272228544
14273114273
14275228550
14276114276
14277571385
14278342834
14279457116
14280114280
14281342843
14282342846
14283457132
14285457140
14286342858
14287571435
14288228576
14289457156
14290114290
14291114291
14293571465
14294114294
14295342885
14296342888
142977100079
14298457192
14299571495
143009128700
14301342903
14302685812
14303571515
14304228608
1430510143050
14306114306
14307342921
14308457232
14309342927
14310571550
14311228622
14312228624
14313457252
14314114314
14315457260
14316228632
14317571585
14318457272
14320342960
14321685926
14322342966
14323571615
14324457296
14325228650
14326228652
14327342981
14328457312
14329114329
14330114330
14331228662
14332342996
14333457332
14334343002
14335228670
14336228672
14338114338
14340114340
14341114341
14342228684
14343571715
14344114344
14345228690
14346571730
14347343041
14348228696
14349114349
14350228700
14351228702
14352228704
14353114353
14355343065
14357114357
14358114358
14360114360
14363228726
14367228734
14368228736
14369114369
14373228746
14374343122
14375114375
14377343131
14379114379
14380228760
14381114381
14383228766
14384228768
14387228774
14390114390
14392114392
14393228786
14394228788
14395114395
14396114396
14397228794
14398343194
14399114399
14400228800
14402114402
14403114403
14404343212
14406572030
14409457636
14410228820
14411114411
14412343236
14413228826
14414343242
14416228832
14417572085
14418228836
14419114419
14420114420
14421572105
14422343266
14423457692
14424114424
14425114425
14426114426
14427343281
14428228856
14429228858
14430114430
14431228862
14432114432
14434114434
14435228870
14436228872
14437343311
14438228876
14440457760
14441228882
14443228886
14444343332
14445114445
14446343338
14447114447
14448114448
14449228898
14450686700
14451343353
14452228904
14453457812
14454114454
144557101185
14456343368
14457457828
14458572290
14459114459
14460114460
14461343383
14462228924
14463343389
14464343392
14465114465
14466228932
14468343404
14470343410
14472114472
14473114473
14475114475
14476228952
14477343431
14478343434
14479228958
14481572405
14482114482
14483114483
14484228968
14485343455
14486114486
14487114487
14488114488
14489114489
14490114490
14491114491
14492114492
14494114494
14498114498
14499343497
14500229000
14501114501
14503229006
14504114504
14505229010
14507114507
14508343524
14510229020
14511229022
14512114512
14513114513
14514229028
14518114518
14519229038
14520114520
14524114524
14525114525
14526114526
14527229054
14528229056
14529114529
14533114533
14534114534
14535229070
14536114536
14538114538
14541114541
14543114543
Total100213931447
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
212
326
4624
5630
6318
7321
8324
9327
10550
11444
12560
13339
14114
15460
16116
18472
20240
21363
22244
23369
24248
25250
26378
274108
28256
29129
30390
315155
326192
33266
34134
354140
36136
37274
38276
393117
40280
417287
423126
433129
44288
453135
46292
47294
48148
49149
504200
515255
523156
534212
543162
553165
566336
575285
585290
593177
603180
612122
625310
646384
65165
662132
676402
685340
693207
7011770
716426
726432
735365
744296
756450
763228
773231
782156
797553
806480
815405
824328
832166
843252
855425
864344
874348
882176
894356
90190
913273
924368
933279
944376
956570
967672
972194
987686
993297
1003300
1013303
1026612
1031103
1045520
1052210
1064424
1074428
1086648
1096654
1104440
1115555
1124448
1138904
1144456
1156690
1166696
1173351
1181118
1196714
1204480
1213363
1226732
1235615
1244496
1253375
1264504
1271127
1305650
1312262
1326792
1333399
1342268
1352270
1362272
1376822
1385690
1395695
1401140
1415705
1424568
1432286
14471008
1455725
1462292
1471147
1481148
1493447
1505750
1514604
1522304
1535765
1545770
1562312
1571157
1584632
1593477
1604640
1612322
1621162
1635815
1642328
1654660
1662332
16761002
1683504
1693507
1703510
1715855
1722344
17361038
1745870
1752350
1762352
1773531
1783534
1793537
1803540
1821182
1832366
1845920
1855925
18661116
18781496
18861128
1894756
1901190
1913573
1922384
19381544
1944776
19571365
19671372
1974788
1985990
1994796
20181608
20251010
203112233
2042408
20551025
2064824
20751035
2081208
20961254
2101210
2113633
2124848
213102130
2144856
21561290
216132808
2173651
21861308
21961314
2203660
221122652
2223666
22351115
2244896
22551125
22651130
22751135
2284912
22971603
23051150
2314924
2323696
23381864
23451170
2354940
23651180
237102370
23861428
23971673
24071680
24151205
2424968
24392187
24461464
2453735
2461246
2474988
2483744
24951245
25041000
2512502
25241008
2531253
2542508
25541020
2563768
25761542
2583774
25961554
2605385014001000
Total5485214141928
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
053850
21000
81
Total54851
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333331266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888251750661529d
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3531373530363631
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_2_12.json b/autobahn/client/tungstenite_case_12_2_12.json new file mode 100644 index 0000000..73bfcd2 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_12.json @@ -0,0 +1,990 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 331, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 1979, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=331&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: C5HcbLgD/+vk4DxCln1K8Q==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: SUFkgvy5yTlW1SIiP99893wWA/A=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.2.12", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "10394": 1, + "10445": 1, + "10487": 1, + "10500": 1, + "10532": 1, + "10555": 1, + "10572": 1, + "10579": 1, + "10587": 1, + "10656": 1, + "10674": 1, + "10716": 1, + "10755": 1, + "10757": 1, + "10770": 1, + "10779": 1, + "10815": 1, + "10867": 1, + "10888": 1, + "10893": 1, + "10993": 1, + "11023": 1, + "11059": 1, + "11072": 1, + "11083": 1, + "11156": 1, + "11202": 1, + "11218": 1, + "11235": 1, + "11250": 1, + "11311": 1, + "11366": 1, + "11368": 1, + "11385": 1, + "11428": 1, + "11477": 1, + "11525": 1, + "11537": 1, + "11540": 1, + "11584": 1, + "11651": 1, + "11669": 1, + "11689": 1, + "11721": 1, + "11761": 1, + "11767": 1, + "11769": 1, + "11771": 1, + "11777": 1, + "11792": 1, + "11813": 1, + "11814": 1, + "11816": 1, + "11823": 1, + "11829": 1, + "11841": 1, + "11844": 1, + "11848": 1, + "11863": 1, + "11867": 1, + "11868": 1, + "11896": 1, + "11901": 1, + "11905": 1, + "11910": 1, + "11912": 1, + "11929": 1, + "11945": 1, + "11958": 1, + "11967": 1, + "11973": 1, + "11988": 1, + "12015": 1, + "12021": 1, + "12023": 1, + "12038": 1, + "12045": 1, + "12066": 1, + "12111": 2, + "12127": 1, + "12130": 1, + "12144": 1, + "12160": 2, + "12173": 1, + "12199": 2, + "12225": 1, + "12228": 1, + "12239": 1, + "12241": 1, + "12273": 1, + "12278": 1, + "12280": 1, + "12292": 1, + "12321": 1, + "12326": 1, + "12345": 1, + "12391": 1, + "12400": 1, + "12434": 1, + "12437": 1, + "12449": 1, + "12504": 1, + "12528": 1, + "12555": 1, + "12565": 1, + "12620": 1, + "12636": 1, + "12667": 1, + "12691": 1, + "12709": 1, + "12750": 1, + "12786": 1, + "12800": 1, + "12805": 1, + "12834": 1, + "12876": 1, + "12913": 1, + "12922": 1, + "12955": 1, + "12974": 1, + "12986": 1, + "12990": 1, + "13017": 1, + "13033": 1, + "13063": 1, + "13074": 1, + "13141": 1, + "13155": 1, + "13181": 1, + "13186": 1, + "13187": 1, + "13227": 1, + "13253": 1, + "13273": 1, + "13293": 1, + "13338": 1, + "13374": 1, + "13375": 1, + "13388": 1, + "13410": 1, + "13427": 1, + "13469": 1, + "13483": 1, + "13519": 1, + "13551": 1, + "13566": 1, + "13579": 1, + "13592": 1, + "13617": 1, + "13642": 1, + "13662": 1, + "13672": 1, + "13697": 1, + "13722": 1, + "13745": 1, + "13747": 1, + "13759": 1, + "13770": 1, + "13809": 1, + "13827": 1, + "13841": 1, + "13845": 1, + "13848": 1, + "13850": 1, + "13853": 2, + "13854": 2, + "13856": 1, + "13857": 1, + "13860": 1, + "13861": 1, + "13863": 1, + "13866": 1, + "13869": 2, + "13870": 1, + "13871": 2, + "13873": 1, + "13874": 1, + "13880": 1, + "13881": 1, + "13882": 1, + "13883": 1, + "13887": 2, + "13889": 1, + "13890": 1, + "13891": 1, + "13896": 1, + "13897": 1, + "13898": 1, + "13900": 1, + "13901": 1, + "13903": 1, + "13907": 1, + "13909": 1, + "13912": 1, + "13913": 1, + "13914": 1, + "13919": 1, + "13929": 1, + "13930": 2, + "13932": 1, + "13935": 1, + "13936": 1, + "13937": 1, + "13940": 2, + "13942": 2, + "13950": 1, + "13953": 1, + "13959": 2, + "13960": 1, + "13967": 1, + "13970": 1, + "13972": 3, + "13979": 1, + "13981": 2, + "13982": 1, + "13986": 2, + "13988": 1, + "13990": 1, + "13997": 2, + "14001": 1, + "14006": 1, + "14007": 1, + "14012": 1, + "14014": 1, + "14016": 2, + "14017": 1, + "14019": 1, + "14023": 1, + "14024": 5, + "14029": 2, + "14030": 1, + "14031": 3, + "14034": 2, + "14035": 4, + "14041": 1, + "14043": 1, + "14044": 3, + "14047": 1, + "14048": 1, + "14049": 2, + "14050": 2, + "14051": 1, + "14053": 2, + "14055": 3, + "14056": 2, + "14057": 2, + "14058": 4, + "14060": 1, + "14061": 2, + "14062": 1, + "14063": 2, + "14064": 1, + "14066": 1, + "14067": 2, + "14068": 3, + "14069": 2, + "14070": 1, + "14071": 3, + "14072": 1, + "14073": 1, + "14075": 1, + "14077": 1, + "14082": 1, + "14083": 2, + "14085": 2, + "14091": 1, + "14092": 1, + "14093": 1, + "14094": 1, + "14096": 2, + "14097": 1, + "14098": 3, + "14101": 1, + "14104": 1, + "14108": 2, + "14109": 1, + "14113": 1, + "14115": 1, + "14116": 1, + "14117": 1, + "14118": 1, + "14121": 1, + "14123": 1, + "14126": 1, + "14127": 1, + "14128": 1, + "14129": 1, + "14130": 1, + "14132": 2, + "14133": 1, + "14135": 1, + "14136": 2, + "14137": 1, + "14139": 1, + "14140": 2, + "14141": 1, + "14142": 2, + "14144": 1, + "14145": 1, + "14146": 1, + "14148": 1, + "14150": 1, + "14151": 1, + "14153": 1, + "14154": 1, + "14155": 1, + "14156": 3, + "14157": 3, + "14158": 3, + "14159": 2, + "14160": 2, + "14161": 1, + "14162": 1, + "14164": 1, + "14166": 3, + "14168": 2, + "14170": 1, + "14173": 2, + "14177": 3, + "14178": 1, + "14180": 2, + "14181": 3, + "14182": 4, + "14183": 1, + "14184": 1, + "14186": 1, + "14187": 1, + "14188": 2, + "14190": 2, + "14195": 1, + "14197": 1, + "14198": 1, + "14199": 1, + "14201": 1, + "14203": 1, + "14205": 1, + "14206": 1, + "14208": 1, + "14209": 1, + "14210": 1, + "14211": 1, + "14212": 1, + "14213": 1, + "14214": 1, + "14216": 2, + "14217": 2, + "14218": 2, + "14219": 1, + "14221": 1, + "14222": 2, + "14223": 2, + "14224": 1, + "14226": 1, + "14228": 1, + "14230": 1, + "14233": 1, + "14234": 2, + "14235": 1, + "14236": 1, + "14237": 2, + "14238": 3, + "14240": 1, + "14242": 1, + "14247": 1, + "14248": 1, + "14250": 2, + "14251": 3, + "14253": 1, + "14255": 3, + "14256": 1, + "14257": 3, + "14258": 2, + "14259": 1, + "14260": 2, + "14261": 3, + "14264": 2, + "14267": 2, + "14268": 3, + "14269": 4, + "14270": 3, + "14271": 4, + "14272": 2, + "14273": 1, + "14275": 2, + "14276": 1, + "14277": 5, + "14278": 3, + "14279": 4, + "14280": 1, + "14281": 3, + "14282": 3, + "14283": 4, + "14285": 4, + "14286": 3, + "14287": 5, + "14288": 2, + "14289": 4, + "14290": 1, + "14291": 1, + "14293": 5, + "14294": 1, + "14295": 3, + "14296": 3, + "14297": 7, + "14298": 4, + "14299": 5, + "14300": 9, + "14301": 3, + "14302": 6, + "14303": 5, + "14304": 2, + "14305": 10, + "14306": 1, + "14307": 3, + "14308": 4, + "14309": 3, + "14310": 5, + "14311": 2, + "14312": 2, + "14313": 4, + "14314": 1, + "14315": 4, + "14316": 2, + "14317": 5, + "14318": 4, + "14320": 3, + "14321": 6, + "14322": 3, + "14323": 5, + "14324": 4, + "14325": 2, + "14326": 2, + "14327": 3, + "14328": 4, + "14329": 1, + "14330": 1, + "14331": 2, + "14332": 3, + "14333": 4, + "14334": 3, + "14335": 2, + "14336": 2, + "14338": 1, + "14340": 1, + "14341": 1, + "14342": 2, + "14343": 5, + "14344": 1, + "14345": 2, + "14346": 5, + "14347": 3, + "14348": 2, + "14349": 1, + "14350": 2, + "14351": 2, + "14352": 2, + "14353": 1, + "14355": 3, + "14357": 1, + "14358": 1, + "14360": 1, + "14363": 2, + "14367": 2, + "14368": 2, + "14369": 1, + "14373": 2, + "14374": 3, + "14375": 1, + "14377": 3, + "14379": 1, + "14380": 2, + "14381": 1, + "14383": 2, + "14384": 2, + "14387": 2, + "14390": 1, + "14392": 1, + "14393": 2, + "14394": 2, + "14395": 1, + "14396": 1, + "14397": 2, + "14398": 3, + "14399": 1, + "14400": 2, + "14402": 1, + "14403": 1, + "14404": 3, + "14406": 5, + "14409": 4, + "14410": 2, + "14411": 1, + "14412": 3, + "14413": 2, + "14414": 3, + "14416": 2, + "14417": 5, + "14418": 2, + "14419": 1, + "14420": 1, + "14421": 5, + "14422": 3, + "14423": 4, + "14424": 1, + "14425": 1, + "14426": 1, + "14427": 3, + "14428": 2, + "14429": 2, + "14430": 1, + "14431": 2, + "14432": 1, + "14434": 1, + "14435": 2, + "14436": 2, + "14437": 3, + "14438": 2, + "14440": 4, + "14441": 2, + "14443": 2, + "14444": 3, + "14445": 1, + "14446": 3, + "14447": 1, + "14448": 1, + "14449": 2, + "14450": 6, + "14451": 3, + "14452": 2, + "14453": 4, + "14454": 1, + "14455": 7, + "14456": 3, + "14457": 4, + "14458": 5, + "14459": 1, + "14460": 1, + "14461": 3, + "14462": 2, + "14463": 3, + "14464": 3, + "14465": 1, + "14466": 2, + "14468": 3, + "14470": 3, + "14472": 1, + "14473": 1, + "14475": 1, + "14476": 2, + "14477": 3, + "14478": 3, + "14479": 2, + "14481": 5, + "14482": 1, + "14483": 1, + "14484": 2, + "14485": 3, + "14486": 1, + "14487": 1, + "14488": 1, + "14489": 1, + "14490": 1, + "14491": 1, + "14492": 1, + "14494": 1, + "14498": 1, + "14499": 3, + "14500": 2, + "14501": 1, + "14503": 2, + "14504": 1, + "14505": 2, + "14507": 1, + "14508": 3, + "14510": 2, + "14511": 2, + "14512": 1, + "14513": 1, + "14514": 2, + "14518": 1, + "14519": 2, + "14520": 1, + "14524": 1, + "14525": 1, + "14526": 1, + "14527": 2, + "14528": 2, + "14529": 1, + "14533": 1, + "14534": 1, + "14535": 2, + "14536": 1, + "14538": 1, + "14541": 1, + "14543": 1 + }, + "started": "2020-09-07T18:45:32.690Z", + "trafficStats": { + "incomingCompressionRatio": 0.8498035888671875, + "incomingOctetsAppLevel": 16384000, + "incomingOctetsWebSocketLevel": 13923182, + "incomingOctetsWireLevel": 13931182, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0005745812990162738, + "outgoingCompressionRatio": 0.8498035888671875, + "outgoingOctetsAppLevel": 16384000, + "outgoingOctetsWebSocketLevel": 13923182, + "outgoingOctetsWireLevel": 14141672, + "outgoingWebSocketFrames": 54850, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.015692533502758205, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 53850, + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "3": 2, + "4": 6, + "5": 6, + "6": 3, + "7": 3, + "8": 3, + "9": 3, + "10": 5, + "11": 4, + "12": 5, + "13": 3, + "14": 1, + "15": 4, + "16": 1, + "18": 4, + "20": 2, + "21": 3, + "22": 2, + "23": 3, + "24": 2, + "25": 2, + "26": 3, + "27": 4, + "28": 2, + "29": 1, + "30": 3, + "31": 5, + "32": 6, + "33": 2, + "34": 1, + "35": 4, + "36": 1, + "37": 2, + "38": 2, + "39": 3, + "40": 2, + "41": 7, + "42": 3, + "43": 3, + "44": 2, + "45": 3, + "46": 2, + "47": 2, + "48": 1, + "49": 1, + "50": 4, + "51": 5, + "52": 3, + "53": 4, + "54": 3, + "55": 3, + "56": 6, + "57": 5, + "58": 5, + "59": 3, + "60": 3, + "61": 2, + "62": 5, + "64": 6, + "65": 1, + "66": 2, + "67": 6, + "68": 5, + "69": 3, + "70": 11, + "71": 6, + "72": 6, + "73": 5, + "74": 4, + "75": 6, + "76": 3, + "77": 3, + "78": 2, + "79": 7, + "80": 6, + "81": 5, + "82": 4, + "83": 2, + "84": 3, + "85": 5, + "86": 4, + "87": 4, + "88": 2, + "89": 4, + "90": 1, + "91": 3, + "92": 4, + "93": 3, + "94": 4, + "95": 6, + "96": 7, + "97": 2, + "98": 7, + "99": 3, + "100": 3, + "101": 3, + "102": 6, + "103": 1, + "104": 5, + "105": 2, + "106": 4, + "107": 4, + "108": 6, + "109": 6, + "110": 4, + "111": 5, + "112": 4, + "113": 8, + "114": 4, + "115": 6, + "116": 6, + "117": 3, + "118": 1, + "119": 6, + "120": 4, + "121": 3, + "122": 6, + "123": 5, + "124": 4, + "125": 3, + "126": 4, + "127": 1, + "130": 5, + "131": 2, + "132": 6, + "133": 3, + "134": 2, + "135": 2, + "136": 2, + "137": 6, + "138": 5, + "139": 5, + "140": 1, + "141": 5, + "142": 4, + "143": 2, + "144": 7, + "145": 5, + "146": 2, + "147": 1, + "148": 1, + "149": 3, + "150": 5, + "151": 4, + "152": 2, + "153": 5, + "154": 5, + "156": 2, + "157": 1, + "158": 4, + "159": 3, + "160": 4, + "161": 2, + "162": 1, + "163": 5, + "164": 2, + "165": 4, + "166": 2, + "167": 6, + "168": 3, + "169": 3, + "170": 3, + "171": 5, + "172": 2, + "173": 6, + "174": 5, + "175": 2, + "176": 2, + "177": 3, + "178": 3, + "179": 3, + "180": 3, + "182": 1, + "183": 2, + "184": 5, + "185": 5, + "186": 6, + "187": 8, + "188": 6, + "189": 4, + "190": 1, + "191": 3, + "192": 2, + "193": 8, + "194": 4, + "195": 7, + "196": 7, + "197": 4, + "198": 5, + "199": 4, + "201": 8, + "202": 5, + "203": 11, + "204": 2, + "205": 5, + "206": 4, + "207": 5, + "208": 1, + "209": 6, + "210": 1, + "211": 3, + "212": 4, + "213": 10, + "214": 4, + "215": 6, + "216": 13, + "217": 3, + "218": 6, + "219": 6, + "220": 3, + "221": 12, + "222": 3, + "223": 5, + "224": 4, + "225": 5, + "226": 5, + "227": 5, + "228": 4, + "229": 7, + "230": 5, + "231": 4, + "232": 3, + "233": 8, + "234": 5, + "235": 4, + "236": 5, + "237": 10, + "238": 6, + "239": 7, + "240": 7, + "241": 5, + "242": 4, + "243": 9, + "244": 6, + "245": 3, + "246": 1, + "247": 4, + "248": 3, + "249": 5, + "250": 4, + "251": 2, + "252": 4, + "253": 1, + "254": 2, + "255": 4, + "256": 3, + "257": 6, + "258": 3, + "259": 6, + "260": 53850 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333331266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888251750661529d" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "51750661" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_2_13.html b/autobahn/client/tungstenite_case_12_2_13.html new file mode 100644 index 0000000..806e6fe --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_13.html @@ -0,0 +1,1244 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.2.13 : Pass - 3775 ms @ 2020-09-07T18:45:34.669Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=332&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: tDhmfvWOh7QgY7QHDOP5EQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: NlPl6IuC6yL0tRUPi5ZcBJHdeDU=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
22873122873
22876122876
22885122885
22975122975
23046123046
23087123087
23102123102
23122123122
23162123162
23236123236
23238123238
23246123246
23259123259
23268123268
23275123275
23283123283
23291123291
23311123311
23354123354
23357123357
23375123375
23382123382
23403123403
23415123415
23454123454
23495123495
23537123537
23555123555
23572123572
23581123581
23614123614
23641123641
23661123661
23696123696
23740123740
23750123750
23778123778
23794123794
23846123846
23895123895
23925123925
23933123933
23955123955
23998123998
24074124074
24080124080
24099124099
24115124115
24168124168
24231124231
24261124261
24271124271
24292124292
24326124326
24388124388
24393124393
24438124438
24456124456
24476124476
24542124542
24565124565
24614124614
24624124624
24638124638
24697124697
24717124717
24758124758
24791124791
24809124809
24847124847
24883124883
24909124909
24912124912
24933124933
24952124952
24984124984
24993124993
25009125009
25027125027
25030125030
25046125046
25058125058
25085125085
25099125099
25132125132
25148125148
25185125185
25188125188
25206125206
25208125208
25244125244
25252125252
25299125299
25307125307
25332125332
25341125341
25349125349
25369125369
25381125381
25418125418
25448125448
25470250940
25499125499
25513125513
25525125525
25539125539
25564125564
25605125605
25616125616
25632125632
25646125646
25672125672
25673125673
25699125699
25707125707
25756125756
25766125766
25784125784
25793125793
25818125818
25834125834
25845125845
25850125850
25906125906
25925125925
25933125933
25956125956
25977125977
25980125980
25992125992
26000126000
26055126055
26068126068
26083126083
26108126108
26119126119
26130126130
26151126151
26156126156
26193126193
26203126203
26229126229
26243126243
26269126269
26271126271
26281126281
26298126298
26328126328
26346126346
26348126348
26361126361
26388252776
26408126408
26431126431
26459126459
26460126460
26476126476
26504126504
26522126522
26535126535
26550126550
26564126564
26565126565
26571126571
26608126608
26619126619
26620126620
26628126628
26654126654
26679126679
26699126699
26735126735
26748126748
26761126761
26831126831
26857126857
26899126899
26926126926
26944126944
26993126993
27016127016
27057127057
27074127074
27112127112
27132127132
27153127153
27202127202
27205127205
27265127265
27300127300
27314127314
27323127323
27334127334
27387127387
27429127429
27444127444
27466127466
27503127503
27508127508
27560127560
27564127564
27606127606
27624127624
27681127681
27684127684
27687127687
27740127740
27769127769
27794127794
27808127808
27845127845
27870127870
27880127880
27898127898
27911127911
27936127936
27968127968
27970127970
28002128002
28024128024
28031256062
28032128032
28036128036
28039256078
28040384120
28043256086
28044128044
28048384144
28050128050
28056128056
28057256114
28059384177
28060128060
28062128062
28063256126
28066128066
28070256140
28077256154
28080128080
28088128088
28089128089
28091384273
28092128092
28099256198
28104128104
28109128109
28112128112
28117256234
28119128119
28122128122
28125128125
28128256256
28129128129
28132128132
28134128134
28138128138
28139128139
28142128142
28148256296
28151128151
28153256306
28154128154
28158384474
28160256320
28161128161
28163256326
28164128164
28168256336
28169256338
28172128172
28174128174
28178128178
28180256360
28184256368
28185128185
28189128189
28190128190
28191128191
28192128192
28193128193
28194128194
28195128195
28196256392
28199128199
28200128200
28201256402
28202128202
28204128204
28206128206
28207128207
28209256418
28210384630
28211256422
28212128212
28213128213
28215256430
28216384648
28217128217
28218128218
28219128219
28221128221
28223128223
28224128224
28225256450
28227256454
28229128229
28231128231
28233128233
28234128234
28238128238
28241128241
28244128244
28245128245
28247128247
28248128248
28249256498
28250256500
28252128252
28255128255
28256128256
28257128257
28258256516
28259128259
28260256520
28261128261
28264128264
28265128265
28266128266
28267128267
28272384816
28273128273
28275256550
28276256552
28278128278
28279128279
28280128280
28282128282
28286256572
28289256578
282914113164
28295128295
28297256594
28301128301
28306128306
28307128307
28308128308
28310128310
28314128314
28315128315
28316256632
28317128317
28318256636
28319128319
28323128323
28326128326
28330128330
28332128332
28336128336
28337128337
28339128339
28340256680
28342128342
28346128346
28347128347
28348128348
28354256708
28362128362
28366256732
28369128369
28373128373
28376128376
28377385131
28378128378
28380385140
28382128382
28385128385
28387128387
28389128389
28390128390
28392256784
28395128395
28396128396
28397256794
28400128400
28403128403
28405128405
28408128408
28412128412
28416128416
28418256836
28421128421
28425128425
28426128426
28428128428
28429128429
28430128430
28436128436
28438128438
28439128439
28441128441
28442128442
28443128443
28446256892
28448256896
28454128454
28455256910
284584113832
28459128459
28465128465
28467256934
28469128469
28475128475
28476256952
28477128477
28478128478
28481256962
28484256968
28485256970
28486256972
284874113948
28488128488
28490128490
28493128493
28498128498
28500128500
28504128504
28505128505
28506128506
28507257014
28508128508
28510128510
28511128511
28512128512
28516128516
28517257034
28519128519
28521257042
28524257048
28525128525
28526385578
28527128527
28529128529
285304114120
28531257062
28532257064
28533385599
28534385602
28535257070
28536385608
28537128537
28538257076
28539257078
28540128540
28542257084
28543128543
28544128544
28545257090
28547257094
28549128549
28552128552
28553128553
28555128555
28556257112
28557385671
28558257116
28559128559
28560128560
28561128561
28562128562
28563128563
28564257128
28566128566
28568128568
28570257140
28571128571
285724114288
28573128573
285744114296
28575257150
28576128576
28577128577
28578385734
285795142895
28581385743
28582128582
28583257166
28584128584
28585128585
28586257172
28588385764
28589128589
28592257184
28594257188
285955142975
28598128598
28599257198
28600257200
28601257202
28602257204
286044114416
28605128605
28606257212
286074114428
28608385824
28609128609
28610128610
28611128611
28614257228
28615128615
28617257234
28618257236
28619128619
28620257240
28621385863
28623385869
28624128624
286255143125
28626128626
286274114508
286284114512
28629385887
28630128630
28631385893
28633128633
28635385905
28636385908
28637128637
28638257276
28639128639
28640385920
28641128641
28642385926
28643385929
28644128644
28645128645
28646257292
28647257294
286484114592
28649128649
28650128650
28653128653
28654257308
28656128656
28657257314
28660128660
28662128662
28664128664
28666128666
28667128667
28674128674
28675257350
28678128678
28681386043
28682128682
28685128685
28687257374
28691128691
28694257388
28697128697
28702128702
28703128703
28706128706
28709128709
28710128710
28711128711
28712128712
28716128716
28719128719
28722257444
28723128723
28724257448
28727257454
28728128728
287305143650
28731386193
28732257464
28733257466
28734128734
28735128735
28737386211
28738257476
28739128739
28741257482
28742257484
28744257488
28745257490
28750128750
28753257506
28754386262
28756386268
28757257514
28758386274
28759128759
28761257522
28762128762
28763128763
28764128764
28765128765
28766128766
28767257534
28768128768
28769128769
28770257540
28771257542
28772128772
28773257546
28776128776
28779128779
28782128782
28784128784
28786128786
28788128788
28789257578
28790257580
28795386385
28796128796
28797128797
28798128798
28800128800
28801386403
28802257604
28806386418
28808257616
28809257618
28810257620
28811257622
28813128813
28814257628
28815128815
28817128817
28819257638
28821128821
28822128822
28823128823
28824128824
28826128826
28828257656
28829257658
28830257660
28832128832
28833257666
28834128834
28835257670
28836128836
28838257676
28841128841
28843257686
28844128844
28845128845
28847128847
28848386544
28851128851
28853128853
28854128854
28855257710
288575144285
28858257716
28859257718
28860257720
28861128861
28862128862
28863128863
28865128865
28866386598
28867128867
28868128868
28870386610
28871128871
28872257744
288734115492
28874386622
28876128876
288774115508
28878257756
288794115516
288807202160
28881257762
28882128882
28883128883
28884128884
28885386655
28886257772
28887386661
28888386664
28889257778
28891128891
28892128892
28894128894
28895386685
28896257792
28897128897
289006173400
28901128901
28902128902
28906128906
28907128907
28908386724
28915128915
28917257834
28919128919
Total100227878381
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
224
3618
4416
515
6212
7214
8216
9436
10220
11111
12224
13226
14684
16348
17117
18236
19476
20120
21121
23246
245120
25250
265130
27254
28256
29258
30390
31393
324128
336198
343102
35270
365180
37137
384152
403120
413123
42142
433129
446264
457315
464184
47294
495245
504200
51151
527364
535265
545270
555275
565280
573171
583174
597413
604240
613183
623186
637441
644256
655325
664264
675335
684272
69169
713213
722144
73173
74174
754300
765380
785390
793237
804320
813243
822164
837581
844336
855425
866516
87187
882176
894356
903270
913273
925460
934372
946564
957665
97197
984392
993297
1001100
1014404
1023306
1032206
1044416
1053315
1064424
1073321
1085540
1094436
1106660
1117777
1128896
1134452
1147798
1154460
1164464
1175585
1184472
1192238
1207840
1213363
1223366
1238984
1242248
1257875
1261126
1271127
1303390
1313393
132101320
1336798
1342268
1355675
1363408
1376822
1384552
1392278
1406840
1412282
1424568
1435715
1443432
1451145
1463438
1471147
1484592
1492298
1505750
1516906
152121824
1535765
154101540
1556930
1563468
1574628
1585790
15981272
1603480
1613483
16271134
1634652
1642328
1654660
1663498
1672334
16861008
1694676
1711171
17271204
1733519
1743522
17571225
1762352
1772354
1785890
1794716
1804720
18181448
18261092
18371281
18491656
1852370
1864744
18761122
1883564
1893567
19071330
19161146
1923576
1933579
19491746
1954780
1963588
19761182
19861188
1992398
2003600
20181608
20251010
20391827
20491836
20581640
2062412
20761242
20861248
20991881
21051050
21181688
21251060
21361278
2143642
21561290
21681728
2172434
21861308
2194876
22071540
2214884
22251110
22351115
224102240
2253675
22651130
2272454
22892052
2293687
23051150
2314924
23251160
2333699
2343702
2363708
2373711
2381238
2393717
2404960
24151205
2421242
2432486
2442488
2453735
2464984
2474988
2484992
2492498
2503750
25241008
2531253
2543762
25551275
2562512
2573771
2583774
2592518
26010833628167360
Total10933828306854
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
0108336
21000
81
Total109337
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333332266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882dd323ddcdeda
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6464333233646463
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_2_13.json b/autobahn/client/tungstenite_case_12_2_13.json new file mode 100644 index 0000000..711d2e9 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_13.json @@ -0,0 +1,1091 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 332, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 3775, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=332&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: tDhmfvWOh7QgY7QHDOP5EQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: NlPl6IuC6yL0tRUPi5ZcBJHdeDU=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.2.13", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "22873": 1, + "22876": 1, + "22885": 1, + "22975": 1, + "23046": 1, + "23087": 1, + "23102": 1, + "23122": 1, + "23162": 1, + "23236": 1, + "23238": 1, + "23246": 1, + "23259": 1, + "23268": 1, + "23275": 1, + "23283": 1, + "23291": 1, + "23311": 1, + "23354": 1, + "23357": 1, + "23375": 1, + "23382": 1, + "23403": 1, + "23415": 1, + "23454": 1, + "23495": 1, + "23537": 1, + "23555": 1, + "23572": 1, + "23581": 1, + "23614": 1, + "23641": 1, + "23661": 1, + "23696": 1, + "23740": 1, + "23750": 1, + "23778": 1, + "23794": 1, + "23846": 1, + "23895": 1, + "23925": 1, + "23933": 1, + "23955": 1, + "23998": 1, + "24074": 1, + "24080": 1, + "24099": 1, + "24115": 1, + "24168": 1, + "24231": 1, + "24261": 1, + "24271": 1, + "24292": 1, + "24326": 1, + "24388": 1, + "24393": 1, + "24438": 1, + "24456": 1, + "24476": 1, + "24542": 1, + "24565": 1, + "24614": 1, + "24624": 1, + "24638": 1, + "24697": 1, + "24717": 1, + "24758": 1, + "24791": 1, + "24809": 1, + "24847": 1, + "24883": 1, + "24909": 1, + "24912": 1, + "24933": 1, + "24952": 1, + "24984": 1, + "24993": 1, + "25009": 1, + "25027": 1, + "25030": 1, + "25046": 1, + "25058": 1, + "25085": 1, + "25099": 1, + "25132": 1, + "25148": 1, + "25185": 1, + "25188": 1, + "25206": 1, + "25208": 1, + "25244": 1, + "25252": 1, + "25299": 1, + "25307": 1, + "25332": 1, + "25341": 1, + "25349": 1, + "25369": 1, + "25381": 1, + "25418": 1, + "25448": 1, + "25470": 2, + "25499": 1, + "25513": 1, + "25525": 1, + "25539": 1, + "25564": 1, + "25605": 1, + "25616": 1, + "25632": 1, + "25646": 1, + "25672": 1, + "25673": 1, + "25699": 1, + "25707": 1, + "25756": 1, + "25766": 1, + "25784": 1, + "25793": 1, + "25818": 1, + "25834": 1, + "25845": 1, + "25850": 1, + "25906": 1, + "25925": 1, + "25933": 1, + "25956": 1, + "25977": 1, + "25980": 1, + "25992": 1, + "26000": 1, + "26055": 1, + "26068": 1, + "26083": 1, + "26108": 1, + "26119": 1, + "26130": 1, + "26151": 1, + "26156": 1, + "26193": 1, + "26203": 1, + "26229": 1, + "26243": 1, + "26269": 1, + "26271": 1, + "26281": 1, + "26298": 1, + "26328": 1, + "26346": 1, + "26348": 1, + "26361": 1, + "26388": 2, + "26408": 1, + "26431": 1, + "26459": 1, + "26460": 1, + "26476": 1, + "26504": 1, + "26522": 1, + "26535": 1, + "26550": 1, + "26564": 1, + "26565": 1, + "26571": 1, + "26608": 1, + "26619": 1, + "26620": 1, + "26628": 1, + "26654": 1, + "26679": 1, + "26699": 1, + "26735": 1, + "26748": 1, + "26761": 1, + "26831": 1, + "26857": 1, + "26899": 1, + "26926": 1, + "26944": 1, + "26993": 1, + "27016": 1, + "27057": 1, + "27074": 1, + "27112": 1, + "27132": 1, + "27153": 1, + "27202": 1, + "27205": 1, + "27265": 1, + "27300": 1, + "27314": 1, + "27323": 1, + "27334": 1, + "27387": 1, + "27429": 1, + "27444": 1, + "27466": 1, + "27503": 1, + "27508": 1, + "27560": 1, + "27564": 1, + "27606": 1, + "27624": 1, + "27681": 1, + "27684": 1, + "27687": 1, + "27740": 1, + "27769": 1, + "27794": 1, + "27808": 1, + "27845": 1, + "27870": 1, + "27880": 1, + "27898": 1, + "27911": 1, + "27936": 1, + "27968": 1, + "27970": 1, + "28002": 1, + "28024": 1, + "28031": 2, + "28032": 1, + "28036": 1, + "28039": 2, + "28040": 3, + "28043": 2, + "28044": 1, + "28048": 3, + "28050": 1, + "28056": 1, + "28057": 2, + "28059": 3, + "28060": 1, + "28062": 1, + "28063": 2, + "28066": 1, + "28070": 2, + "28077": 2, + "28080": 1, + "28088": 1, + "28089": 1, + "28091": 3, + "28092": 1, + "28099": 2, + "28104": 1, + "28109": 1, + "28112": 1, + "28117": 2, + "28119": 1, + "28122": 1, + "28125": 1, + "28128": 2, + "28129": 1, + "28132": 1, + "28134": 1, + "28138": 1, + "28139": 1, + "28142": 1, + "28148": 2, + "28151": 1, + "28153": 2, + "28154": 1, + "28158": 3, + "28160": 2, + "28161": 1, + "28163": 2, + "28164": 1, + "28168": 2, + "28169": 2, + "28172": 1, + "28174": 1, + "28178": 1, + "28180": 2, + "28184": 2, + "28185": 1, + "28189": 1, + "28190": 1, + "28191": 1, + "28192": 1, + "28193": 1, + "28194": 1, + "28195": 1, + "28196": 2, + "28199": 1, + "28200": 1, + "28201": 2, + "28202": 1, + "28204": 1, + "28206": 1, + "28207": 1, + "28209": 2, + "28210": 3, + "28211": 2, + "28212": 1, + "28213": 1, + "28215": 2, + "28216": 3, + "28217": 1, + "28218": 1, + "28219": 1, + "28221": 1, + "28223": 1, + "28224": 1, + "28225": 2, + "28227": 2, + "28229": 1, + "28231": 1, + "28233": 1, + "28234": 1, + "28238": 1, + "28241": 1, + "28244": 1, + "28245": 1, + "28247": 1, + "28248": 1, + "28249": 2, + "28250": 2, + "28252": 1, + "28255": 1, + "28256": 1, + "28257": 1, + "28258": 2, + "28259": 1, + "28260": 2, + "28261": 1, + "28264": 1, + "28265": 1, + "28266": 1, + "28267": 1, + "28272": 3, + "28273": 1, + "28275": 2, + "28276": 2, + "28278": 1, + "28279": 1, + "28280": 1, + "28282": 1, + "28286": 2, + "28289": 2, + "28291": 4, + "28295": 1, + "28297": 2, + "28301": 1, + "28306": 1, + "28307": 1, + "28308": 1, + "28310": 1, + "28314": 1, + "28315": 1, + "28316": 2, + "28317": 1, + "28318": 2, + "28319": 1, + "28323": 1, + "28326": 1, + "28330": 1, + "28332": 1, + "28336": 1, + "28337": 1, + "28339": 1, + "28340": 2, + "28342": 1, + "28346": 1, + "28347": 1, + "28348": 1, + "28354": 2, + "28362": 1, + "28366": 2, + "28369": 1, + "28373": 1, + "28376": 1, + "28377": 3, + "28378": 1, + "28380": 3, + "28382": 1, + "28385": 1, + "28387": 1, + "28389": 1, + "28390": 1, + "28392": 2, + "28395": 1, + "28396": 1, + "28397": 2, + "28400": 1, + "28403": 1, + "28405": 1, + "28408": 1, + "28412": 1, + "28416": 1, + "28418": 2, + "28421": 1, + "28425": 1, + "28426": 1, + "28428": 1, + "28429": 1, + "28430": 1, + "28436": 1, + "28438": 1, + "28439": 1, + "28441": 1, + "28442": 1, + "28443": 1, + "28446": 2, + "28448": 2, + "28454": 1, + "28455": 2, + "28458": 4, + "28459": 1, + "28465": 1, + "28467": 2, + "28469": 1, + "28475": 1, + "28476": 2, + "28477": 1, + "28478": 1, + "28481": 2, + "28484": 2, + "28485": 2, + "28486": 2, + "28487": 4, + "28488": 1, + "28490": 1, + "28493": 1, + "28498": 1, + "28500": 1, + "28504": 1, + "28505": 1, + "28506": 1, + "28507": 2, + "28508": 1, + "28510": 1, + "28511": 1, + "28512": 1, + "28516": 1, + "28517": 2, + "28519": 1, + "28521": 2, + "28524": 2, + "28525": 1, + "28526": 3, + "28527": 1, + "28529": 1, + "28530": 4, + "28531": 2, + "28532": 2, + "28533": 3, + "28534": 3, + "28535": 2, + "28536": 3, + "28537": 1, + "28538": 2, + "28539": 2, + "28540": 1, + "28542": 2, + "28543": 1, + "28544": 1, + "28545": 2, + "28547": 2, + "28549": 1, + "28552": 1, + "28553": 1, + "28555": 1, + "28556": 2, + "28557": 3, + "28558": 2, + "28559": 1, + "28560": 1, + "28561": 1, + "28562": 1, + "28563": 1, + "28564": 2, + "28566": 1, + "28568": 1, + "28570": 2, + "28571": 1, + "28572": 4, + "28573": 1, + "28574": 4, + "28575": 2, + "28576": 1, + "28577": 1, + "28578": 3, + "28579": 5, + "28581": 3, + "28582": 1, + "28583": 2, + "28584": 1, + "28585": 1, + "28586": 2, + "28588": 3, + "28589": 1, + "28592": 2, + "28594": 2, + "28595": 5, + "28598": 1, + "28599": 2, + "28600": 2, + "28601": 2, + "28602": 2, + "28604": 4, + "28605": 1, + "28606": 2, + "28607": 4, + "28608": 3, + "28609": 1, + "28610": 1, + "28611": 1, + "28614": 2, + "28615": 1, + "28617": 2, + "28618": 2, + "28619": 1, + "28620": 2, + "28621": 3, + "28623": 3, + "28624": 1, + "28625": 5, + "28626": 1, + "28627": 4, + "28628": 4, + "28629": 3, + "28630": 1, + "28631": 3, + "28633": 1, + "28635": 3, + "28636": 3, + "28637": 1, + "28638": 2, + "28639": 1, + "28640": 3, + "28641": 1, + "28642": 3, + "28643": 3, + "28644": 1, + "28645": 1, + "28646": 2, + "28647": 2, + "28648": 4, + "28649": 1, + "28650": 1, + "28653": 1, + "28654": 2, + "28656": 1, + "28657": 2, + "28660": 1, + "28662": 1, + "28664": 1, + "28666": 1, + "28667": 1, + "28674": 1, + "28675": 2, + "28678": 1, + "28681": 3, + "28682": 1, + "28685": 1, + "28687": 2, + "28691": 1, + "28694": 2, + "28697": 1, + "28702": 1, + "28703": 1, + "28706": 1, + "28709": 1, + "28710": 1, + "28711": 1, + "28712": 1, + "28716": 1, + "28719": 1, + "28722": 2, + "28723": 1, + "28724": 2, + "28727": 2, + "28728": 1, + "28730": 5, + "28731": 3, + "28732": 2, + "28733": 2, + "28734": 1, + "28735": 1, + "28737": 3, + "28738": 2, + "28739": 1, + "28741": 2, + "28742": 2, + "28744": 2, + "28745": 2, + "28750": 1, + "28753": 2, + "28754": 3, + "28756": 3, + "28757": 2, + "28758": 3, + "28759": 1, + "28761": 2, + "28762": 1, + "28763": 1, + "28764": 1, + "28765": 1, + "28766": 1, + "28767": 2, + "28768": 1, + "28769": 1, + "28770": 2, + "28771": 2, + "28772": 1, + "28773": 2, + "28776": 1, + "28779": 1, + "28782": 1, + "28784": 1, + "28786": 1, + "28788": 1, + "28789": 2, + "28790": 2, + "28795": 3, + "28796": 1, + "28797": 1, + "28798": 1, + "28800": 1, + "28801": 3, + "28802": 2, + "28806": 3, + "28808": 2, + "28809": 2, + "28810": 2, + "28811": 2, + "28813": 1, + "28814": 2, + "28815": 1, + "28817": 1, + "28819": 2, + "28821": 1, + "28822": 1, + "28823": 1, + "28824": 1, + "28826": 1, + "28828": 2, + "28829": 2, + "28830": 2, + "28832": 1, + "28833": 2, + "28834": 1, + "28835": 2, + "28836": 1, + "28838": 2, + "28841": 1, + "28843": 2, + "28844": 1, + "28845": 1, + "28847": 1, + "28848": 3, + "28851": 1, + "28853": 1, + "28854": 1, + "28855": 2, + "28857": 5, + "28858": 2, + "28859": 2, + "28860": 2, + "28861": 1, + "28862": 1, + "28863": 1, + "28865": 1, + "28866": 3, + "28867": 1, + "28868": 1, + "28870": 3, + "28871": 1, + "28872": 2, + "28873": 4, + "28874": 3, + "28876": 1, + "28877": 4, + "28878": 2, + "28879": 4, + "28880": 7, + "28881": 2, + "28882": 1, + "28883": 1, + "28884": 1, + "28885": 3, + "28886": 2, + "28887": 3, + "28888": 3, + "28889": 2, + "28891": 1, + "28892": 1, + "28894": 1, + "28895": 3, + "28896": 2, + "28897": 1, + "28900": 6, + "28901": 1, + "28902": 1, + "28906": 1, + "28907": 1, + "28908": 3, + "28915": 1, + "28917": 2, + "28919": 1 + }, + "started": "2020-09-07T18:45:34.669Z", + "trafficStats": { + "incomingCompressionRatio": 0.8505284423828126, + "incomingOctetsAppLevel": 32768000, + "incomingOctetsWebSocketLevel": 27870116, + "incomingOctetsWireLevel": 27878116, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0002870458092101231, + "outgoingCompressionRatio": 0.8505284423828126, + "outgoingOctetsAppLevel": 32768000, + "outgoingOctetsWebSocketLevel": 27870116, + "outgoingOctetsWireLevel": 28306598, + "outgoingWebSocketFrames": 109336, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.015661291111956622, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 108336, + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 2, + "3": 6, + "4": 4, + "5": 1, + "6": 2, + "7": 2, + "8": 2, + "9": 4, + "10": 2, + "11": 1, + "12": 2, + "13": 2, + "14": 6, + "16": 3, + "17": 1, + "18": 2, + "19": 4, + "20": 1, + "21": 1, + "23": 2, + "24": 5, + "25": 2, + "26": 5, + "27": 2, + "28": 2, + "29": 2, + "30": 3, + "31": 3, + "32": 4, + "33": 6, + "34": 3, + "35": 2, + "36": 5, + "37": 1, + "38": 4, + "40": 3, + "41": 3, + "42": 1, + "43": 3, + "44": 6, + "45": 7, + "46": 4, + "47": 2, + "49": 5, + "50": 4, + "51": 1, + "52": 7, + "53": 5, + "54": 5, + "55": 5, + "56": 5, + "57": 3, + "58": 3, + "59": 7, + "60": 4, + "61": 3, + "62": 3, + "63": 7, + "64": 4, + "65": 5, + "66": 4, + "67": 5, + "68": 4, + "69": 1, + "71": 3, + "72": 2, + "73": 1, + "74": 1, + "75": 4, + "76": 5, + "78": 5, + "79": 3, + "80": 4, + "81": 3, + "82": 2, + "83": 7, + "84": 4, + "85": 5, + "86": 6, + "87": 1, + "88": 2, + "89": 4, + "90": 3, + "91": 3, + "92": 5, + "93": 4, + "94": 6, + "95": 7, + "97": 1, + "98": 4, + "99": 3, + "100": 1, + "101": 4, + "102": 3, + "103": 2, + "104": 4, + "105": 3, + "106": 4, + "107": 3, + "108": 5, + "109": 4, + "110": 6, + "111": 7, + "112": 8, + "113": 4, + "114": 7, + "115": 4, + "116": 4, + "117": 5, + "118": 4, + "119": 2, + "120": 7, + "121": 3, + "122": 3, + "123": 8, + "124": 2, + "125": 7, + "126": 1, + "127": 1, + "130": 3, + "131": 3, + "132": 10, + "133": 6, + "134": 2, + "135": 5, + "136": 3, + "137": 6, + "138": 4, + "139": 2, + "140": 6, + "141": 2, + "142": 4, + "143": 5, + "144": 3, + "145": 1, + "146": 3, + "147": 1, + "148": 4, + "149": 2, + "150": 5, + "151": 6, + "152": 12, + "153": 5, + "154": 10, + "155": 6, + "156": 3, + "157": 4, + "158": 5, + "159": 8, + "160": 3, + "161": 3, + "162": 7, + "163": 4, + "164": 2, + "165": 4, + "166": 3, + "167": 2, + "168": 6, + "169": 4, + "171": 1, + "172": 7, + "173": 3, + "174": 3, + "175": 7, + "176": 2, + "177": 2, + "178": 5, + "179": 4, + "180": 4, + "181": 8, + "182": 6, + "183": 7, + "184": 9, + "185": 2, + "186": 4, + "187": 6, + "188": 3, + "189": 3, + "190": 7, + "191": 6, + "192": 3, + "193": 3, + "194": 9, + "195": 4, + "196": 3, + "197": 6, + "198": 6, + "199": 2, + "200": 3, + "201": 8, + "202": 5, + "203": 9, + "204": 9, + "205": 8, + "206": 2, + "207": 6, + "208": 6, + "209": 9, + "210": 5, + "211": 8, + "212": 5, + "213": 6, + "214": 3, + "215": 6, + "216": 8, + "217": 2, + "218": 6, + "219": 4, + "220": 7, + "221": 4, + "222": 5, + "223": 5, + "224": 10, + "225": 3, + "226": 5, + "227": 2, + "228": 9, + "229": 3, + "230": 5, + "231": 4, + "232": 5, + "233": 3, + "234": 3, + "236": 3, + "237": 3, + "238": 1, + "239": 3, + "240": 4, + "241": 5, + "242": 1, + "243": 2, + "244": 2, + "245": 3, + "246": 4, + "247": 4, + "248": 4, + "249": 2, + "250": 3, + "252": 4, + "253": 1, + "254": 3, + "255": 5, + "256": 2, + "257": 3, + "258": 3, + "259": 2, + "260": 108336 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333332266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882dd323ddcdeda" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "dd323ddc" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_2_14.html b/autobahn/client/tungstenite_case_12_2_14.html new file mode 100644 index 0000000..573f8ed --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_14.html @@ -0,0 +1,1283 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.2.14 : Pass - 7245 ms @ 2020-09-07T18:45:38.445Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=333&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: F2C0syIlxFSSAh2ACCd6BQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: M2HXM86geHyTbtLjwu+eio+QDzQ=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
51274151274
51298151298
51309151309
51342151342
51345151345
51357151357
51372151372
51379151379
51382151382
51385151385
51391151391
51398151398
51403151403
51421151421
51427151427
51445151445
51451151451
51465151465
51470151470
51474151474
51487151487
51494151494
51495151495
51497151497
51505151505
51507151507
51523151523
51528151528
51529151529
515352103070
51541151541
51548151548
51549151549
51551151551
51554151554
51555151555
51564151564
51571151571
515732103146
51574151574
51585151585
515902103180
51592151592
51598151598
51599151599
516002103200
516032103206
51605151605
516063154818
51607151607
51608151608
51614151614
51615151615
51616151616
51617151617
51618151618
516222103244
51630151630
516313154893
516422103284
51665151665
516662103332
51682151682
51686151686
51688151688
51690151690
51692151692
51701151701
51720151720
517222103444
51733151733
517352103470
51743151743
51744151744
51762151762
51766151766
51767151767
51770151770
51773151773
51776151776
51777151777
517792103558
51784151784
51789151789
51790151790
517932103586
51799151799
51802151802
51806151806
51811151811
51813151813
51819151819
51820151820
51822151822
51826151826
51827151827
518282103656
51829151829
51830151830
518312103662
51832151832
51833151833
51835151835
51838151838
51840151840
51843151843
518452103690
51846151846
51847151847
51852151852
518533155559
51854151854
51856151856
51857151857
51858151858
518593155577
51890151890
51896151896
51906151906
51909151909
51942151942
51967151967
51983151983
52019152019
52056152056
52070152070
52113152113
52145152145
52158152158
52176152176
52199152199
52235152235
52284152284
52307152307
52330152330
52344152344
52365152365
52419152419
52445152445
52476152476
52495152495
52524152524
52605152605
52627152627
52687152687
52704152704
52706152706
52789152789
52800152800
52857152857
52893152893
52907152907
52970152970
52995152995
53055153055
53057153057
53098153098
53130153130
53152153152
53205153205
53222153222
53273153273
53299153299
53331153331
53354153354
53368153368
53370153370
53420153420
53435153435
53438153438
53478153478
53487153487
53504153504
53516153516
53547153547
53556153556
53598153598
53608153608
53622153622
53640153640
53651153651
53671153671
53690153690
53693153693
53729153729
53753153753
53780153780
53795153795
53799153799
53809153809
53852153852
53868153868
53876153876
53907153907
53921153921
53951153951
53957153957
53966153966
53995153995
54028154028
54040154040
54047154047
54093154093
54109154109
54119154119
54134154134
54148154148
54181154181
54194154194
54220154220
54277154277
54283154283
54296154296
54315154315
54330154330
54349154349
54351154351
54380154380
54428154428
54435154435
54446154446
54475154475
54483154483
54507154507
54516154516
54541154541
54576154576
54589154589
54617154617
54623154623
54643154643
54657154657
54683154683
54709154709
54713154713
54732154732
54749154749
54760154760
54817154817
54822154822
54851154851
54857154857
54881154881
54893154893
54901154901
54919154919
54944154944
54984154984
54994154994
55002155002
550352110070
55052155052
55058155058
55080155080
55103155103
55104155104
55140155140
55142155142
55177155177
55180155180
55200155200
55212155212
55213155213
55226155226
55250155250
55262155262
55271155271
55296155296
55305155305
55324155324
55336155336
55350155350
55354155354
55372155372
55404155404
55426155426
55432155432
55441155441
554722110944
55484155484
55498155498
55500155500
55527155527
55538155538
55540155540
55555155555
55561155561
55565155565
55587155587
55595155595
55608155608
55664155664
55667155667
55670155670
55707155707
55720155720
55757155757
55784155784
55823155823
55831155831
55859155859
55870155870
55901155901
55922155922
55928155928
55971155971
56023156023
56034156034
56046156046
56075156075
56096156096
56131156131
56132156132
56154156154
56177156177
562152112430
56241156241
56242156242
56273156273
56299156299
56311156311
56354156354
56389156389
56390156390
56415156415
56418156418
56432156432
56442156442
56458156458
56472156472
56489156489
56519156519
56525156525
56529156529
56537156537
56555156555
56565156565
56572156572
56573156573
56578156578
56586156586
56587156587
565942113188
56600156600
56611156611
56613156613
56615156615
56616156616
566182113236
56624156624
56626156626
566273169881
56628156628
566302113260
56631156631
56633156633
56635156635
56636156636
566382113276
566392113278
56641156641
566423169926
56643156643
56644156644
56646156646
566474226588
566492113298
566502113300
56653156653
56654156654
56656156656
56661156661
566622113324
56663156663
56664156664
566702113340
56678156678
56679156679
56683156683
56684156684
566852113370
56687156687
566902113380
566962113392
56698156698
56699156699
56700156700
56701156701
567022113404
56704156704
567084226832
567114226844
56712156712
567162113432
567192113438
567202113440
567212113442
56722156722
567252113450
56726156726
56727156727
56729156729
567352113470
56736156736
567382113476
56744156744
56745156745
56748156748
56751156751
567522113504
56757156757
56758156758
567602113520
56763156763
56765156765
567673170301
567702113540
56772156772
56774156774
56776156776
56778156778
56779156779
56782156782
56791156791
567943170382
56795156795
567982113596
56803156803
56804156804
56805156805
56810156810
568113170433
56812156812
56821156821
568222113644
56823156823
56825156825
56827156827
56829156829
56832156832
56834156834
56837156837
568382113676
568392113678
56848156848
568502113700
568533170559
56854156854
56855156855
56857156857
56858156858
56859156859
56860156860
56865156865
56866156866
568672113734
56869156869
56871156871
56889156889
56894156894
56916156916
56918156918
56935156935
56941156941
56968156968
56974156974
569762113952
56978156978
56997156997
57004157004
57006157006
57008157008
57021157021
57026157026
57029157029
57036157036
57038157038
570532114106
57068157068
57081157081
57083157083
57085157085
57088157088
57089157089
57090157090
57092157092
57093157093
570952114190
57096157096
570972114194
570992114198
57100157100
57102157102
571044228416
571052114210
57106157106
571072114214
571082114216
571092114218
571113171333
57112157112
571132114226
571142114228
571164228464
571173171351
571185285590
571193171357
571202114240
571212114242
57122157122
571233171369
571242114248
57125157125
571263171378
571275285635
571286342768
571294228516
57130157130
571316342786
571324228528
571333171399
571342114268
571354228540
571363171408
571373171411
571383171414
57139157139
571403171420
571412114282
571425285710
571433171429
571443171432
571454228580
571463171438
571472114294
571483171444
571495285745
571504228600
571513171453
571522114304
57153157153
571543171462
57155157155
571562114312
57157157157
571582114316
571596342954
571612114322
571623171486
57163157163
571662114332
571672114334
571682114336
571694228676
57171157171
571722114344
571732114346
571743171522
57175157175
57177157177
571782114356
57185157185
57187157187
571902114380
57194157194
57196157196
57201157201
57205157205
57209157209
572142114428
57215157215
572192114438
572202114440
57223157223
57227157227
57229157229
57230157230
57231157231
57234157234
572362114472
57238157238
57239157239
57240157240
57242157242
57243157243
57246157246
57250157250
57254157254
57255157255
57257157257
572592114518
57264157264
572652114530
572663171798
57271157271
57272157272
57273157273
572802114560
57284157284
57285157285
57288157288
57289157289
57290157290
57291157291
57295157295
57298157298
57300157300
57301157301
57304157304
57306157306
573072114614
57308157308
573092114618
573122114624
57313157313
57318157318
573222114644
573232114646
57324157324
57325157325
57326157326
57327157327
573284229312
573292114658
57333157333
57335157335
57336157336
573372114674
573382114676
573402114680
573422114684
573452114690
57347157347
57348157348
573492114698
57350157350
57353157353
573544229416
573572114714
57360157360
57363157363
573662114732
57367157367
57368157368
57370157370
57372157372
57374157374
573753172125
573763172128
57378157378
573792114758
57380157380
57381157381
57383157383
573842114768
57388157388
57390157390
57391157391
57396157396
57397157397
573982114796
57400157400
574012114802
57402157402
57403157403
57405157405
57406157406
574072114814
57408157408
574102114820
57412157412
57415157415
57416157416
57418157418
57419157419
57421157421
57423157423
57424157424
57426157426
57427157427
574282114856
574293172287
57430157430
574313172293
574322114864
574332114866
574342114868
574362114872
574382114876
574403172320
574412114882
57442157442
57444157444
57446157446
574472114894
574492114898
57453157453
57455157455
57458157458
57461157461
574642114928
574673172401
57468157468
57471157471
574732114946
574762114952
57477157477
57482157482
57483157483
57488157488
574912114982
57492157492
57493157493
57495157495
574962114992
574973172491
574982114996
57499157499
57500157500
57503157503
575042115008
57505157505
575062115012
57507157507
57508157508
57509157509
575112115022
57513157513
57517157517
57518157518
575202115040
57522157522
57523157523
575272115054
57529157529
57691157691
Total100255760530
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
224
3618
4832
5630
6424
7428
8216
9327
10660
11222
12784
13339
14342
15690
16348
178136
18590
19476
20480
21121
227154
23369
246144
259225
267182
274108
284112
2910290
30390
314124
325160
3310330
3411374
355175
363108
379333
386228
393117
403120
415205
425210
435215
445220
458360
466276
474188
4811528
495245
505250
518408
527364
534212
545270
558440
569504
579513
586348
594236
608480
617427
625310
632126
644256
6511715
663198
676402
687476
692138
70170
715355
724288
736438
744296
756450
76176
774308
785390
797553
807560
816486
824328
834332
846504
85185
864344
873261
886528
893267
903270
914364
924368
933279
942188
95195
966576
975485
98198
992198
1004400
1012202
1027714
1036618
1041104
1052210
1062212
1072214
1085540
1094436
1103330
1116666
1125560
1132226
1148912
1153345
1163348
1175585
1182236
1192238
1205600
1212242
1222244
1234492
1241124
1253375
12691134
1273381
1303390
1317917
1325660
1331133
1343402
1352270
1364544
1375685
1385690
1394556
14081120
1416846
1424568
143101430
1443432
1454580
1465730
1476882
1485740
1494596
1503450
1514604
1522304
1532306
1542308
1554620
15671092
1573471
1586948
1593477
1601160
1613483
1623486
1634652
1642328
1654660
1673501
1685840
1692338
1704680
1714684
17281376
1734692
17471218
1752350
1772354
1782356
1793537
1804720
1814724
1824728
1832366
1841184
1853555
1862372
1875935
1882376
1904760
1911191
1922384
1934772
1942388
1951195
1963588
1971197
1983594
1994796
2004800
2012402
2023606
2032406
2041204
2053615
20651030
2071207
2081208
2092418
2112422
2121212
2131213
21451070
2153645
2161216
21771519
2183654
2203660
2212442
2223666
2232446
2241224
2251225
22651130
2273681
2283684
23051150
23192079
2324928
2331233
2342468
2352470
2364944
2372474
2381238
2402480
24151205
2422484
2433729
2441244
24551225
2462492
24751235
2484992
2493747
2502500
2511251
25251260
2533759
2543762
2553765
2562512
25751285
2583774
25941036
26021735556512300
Total21835756624755
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
0217355
21000
81
Total218356
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333333266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888294dfc4e39737
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3934646663346533
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_2_14.json b/autobahn/client/tungstenite_case_12_2_14.json new file mode 100644 index 0000000..1115844 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_14.json @@ -0,0 +1,1130 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 333, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 7245, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=333&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: F2C0syIlxFSSAh2ACCd6BQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: M2HXM86geHyTbtLjwu+eio+QDzQ=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.2.14", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "51274": 1, + "51298": 1, + "51309": 1, + "51342": 1, + "51345": 1, + "51357": 1, + "51372": 1, + "51379": 1, + "51382": 1, + "51385": 1, + "51391": 1, + "51398": 1, + "51403": 1, + "51421": 1, + "51427": 1, + "51445": 1, + "51451": 1, + "51465": 1, + "51470": 1, + "51474": 1, + "51487": 1, + "51494": 1, + "51495": 1, + "51497": 1, + "51505": 1, + "51507": 1, + "51523": 1, + "51528": 1, + "51529": 1, + "51535": 2, + "51541": 1, + "51548": 1, + "51549": 1, + "51551": 1, + "51554": 1, + "51555": 1, + "51564": 1, + "51571": 1, + "51573": 2, + "51574": 1, + "51585": 1, + "51590": 2, + "51592": 1, + "51598": 1, + "51599": 1, + "51600": 2, + "51603": 2, + "51605": 1, + "51606": 3, + "51607": 1, + "51608": 1, + "51614": 1, + "51615": 1, + "51616": 1, + "51617": 1, + "51618": 1, + "51622": 2, + "51630": 1, + "51631": 3, + "51642": 2, + "51665": 1, + "51666": 2, + "51682": 1, + "51686": 1, + "51688": 1, + "51690": 1, + "51692": 1, + "51701": 1, + "51720": 1, + "51722": 2, + "51733": 1, + "51735": 2, + "51743": 1, + "51744": 1, + "51762": 1, + "51766": 1, + "51767": 1, + "51770": 1, + "51773": 1, + "51776": 1, + "51777": 1, + "51779": 2, + "51784": 1, + "51789": 1, + "51790": 1, + "51793": 2, + "51799": 1, + "51802": 1, + "51806": 1, + "51811": 1, + "51813": 1, + "51819": 1, + "51820": 1, + "51822": 1, + "51826": 1, + "51827": 1, + "51828": 2, + "51829": 1, + "51830": 1, + "51831": 2, + "51832": 1, + "51833": 1, + "51835": 1, + "51838": 1, + "51840": 1, + "51843": 1, + "51845": 2, + "51846": 1, + "51847": 1, + "51852": 1, + "51853": 3, + "51854": 1, + "51856": 1, + "51857": 1, + "51858": 1, + "51859": 3, + "51890": 1, + "51896": 1, + "51906": 1, + "51909": 1, + "51942": 1, + "51967": 1, + "51983": 1, + "52019": 1, + "52056": 1, + "52070": 1, + "52113": 1, + "52145": 1, + "52158": 1, + "52176": 1, + "52199": 1, + "52235": 1, + "52284": 1, + "52307": 1, + "52330": 1, + "52344": 1, + "52365": 1, + "52419": 1, + "52445": 1, + "52476": 1, + "52495": 1, + "52524": 1, + "52605": 1, + "52627": 1, + "52687": 1, + "52704": 1, + "52706": 1, + "52789": 1, + "52800": 1, + "52857": 1, + "52893": 1, + "52907": 1, + "52970": 1, + "52995": 1, + "53055": 1, + "53057": 1, + "53098": 1, + "53130": 1, + "53152": 1, + "53205": 1, + "53222": 1, + "53273": 1, + "53299": 1, + "53331": 1, + "53354": 1, + "53368": 1, + "53370": 1, + "53420": 1, + "53435": 1, + "53438": 1, + "53478": 1, + "53487": 1, + "53504": 1, + "53516": 1, + "53547": 1, + "53556": 1, + "53598": 1, + "53608": 1, + "53622": 1, + "53640": 1, + "53651": 1, + "53671": 1, + "53690": 1, + "53693": 1, + "53729": 1, + "53753": 1, + "53780": 1, + "53795": 1, + "53799": 1, + "53809": 1, + "53852": 1, + "53868": 1, + "53876": 1, + "53907": 1, + "53921": 1, + "53951": 1, + "53957": 1, + "53966": 1, + "53995": 1, + "54028": 1, + "54040": 1, + "54047": 1, + "54093": 1, + "54109": 1, + "54119": 1, + "54134": 1, + "54148": 1, + "54181": 1, + "54194": 1, + "54220": 1, + "54277": 1, + "54283": 1, + "54296": 1, + "54315": 1, + "54330": 1, + "54349": 1, + "54351": 1, + "54380": 1, + "54428": 1, + "54435": 1, + "54446": 1, + "54475": 1, + "54483": 1, + "54507": 1, + "54516": 1, + "54541": 1, + "54576": 1, + "54589": 1, + "54617": 1, + "54623": 1, + "54643": 1, + "54657": 1, + "54683": 1, + "54709": 1, + "54713": 1, + "54732": 1, + "54749": 1, + "54760": 1, + "54817": 1, + "54822": 1, + "54851": 1, + "54857": 1, + "54881": 1, + "54893": 1, + "54901": 1, + "54919": 1, + "54944": 1, + "54984": 1, + "54994": 1, + "55002": 1, + "55035": 2, + "55052": 1, + "55058": 1, + "55080": 1, + "55103": 1, + "55104": 1, + "55140": 1, + "55142": 1, + "55177": 1, + "55180": 1, + "55200": 1, + "55212": 1, + "55213": 1, + "55226": 1, + "55250": 1, + "55262": 1, + "55271": 1, + "55296": 1, + "55305": 1, + "55324": 1, + "55336": 1, + "55350": 1, + "55354": 1, + "55372": 1, + "55404": 1, + "55426": 1, + "55432": 1, + "55441": 1, + "55472": 2, + "55484": 1, + "55498": 1, + "55500": 1, + "55527": 1, + "55538": 1, + "55540": 1, + "55555": 1, + "55561": 1, + "55565": 1, + "55587": 1, + "55595": 1, + "55608": 1, + "55664": 1, + "55667": 1, + "55670": 1, + "55707": 1, + "55720": 1, + "55757": 1, + "55784": 1, + "55823": 1, + "55831": 1, + "55859": 1, + "55870": 1, + "55901": 1, + "55922": 1, + "55928": 1, + "55971": 1, + "56023": 1, + "56034": 1, + "56046": 1, + "56075": 1, + "56096": 1, + "56131": 1, + "56132": 1, + "56154": 1, + "56177": 1, + "56215": 2, + "56241": 1, + "56242": 1, + "56273": 1, + "56299": 1, + "56311": 1, + "56354": 1, + "56389": 1, + "56390": 1, + "56415": 1, + "56418": 1, + "56432": 1, + "56442": 1, + "56458": 1, + "56472": 1, + "56489": 1, + "56519": 1, + "56525": 1, + "56529": 1, + "56537": 1, + "56555": 1, + "56565": 1, + "56572": 1, + "56573": 1, + "56578": 1, + "56586": 1, + "56587": 1, + "56594": 2, + "56600": 1, + "56611": 1, + "56613": 1, + "56615": 1, + "56616": 1, + "56618": 2, + "56624": 1, + "56626": 1, + "56627": 3, + "56628": 1, + "56630": 2, + "56631": 1, + "56633": 1, + "56635": 1, + "56636": 1, + "56638": 2, + "56639": 2, + "56641": 1, + "56642": 3, + "56643": 1, + "56644": 1, + "56646": 1, + "56647": 4, + "56649": 2, + "56650": 2, + "56653": 1, + "56654": 1, + "56656": 1, + "56661": 1, + "56662": 2, + "56663": 1, + "56664": 1, + "56670": 2, + "56678": 1, + "56679": 1, + "56683": 1, + "56684": 1, + "56685": 2, + "56687": 1, + "56690": 2, + "56696": 2, + "56698": 1, + "56699": 1, + "56700": 1, + "56701": 1, + "56702": 2, + "56704": 1, + "56708": 4, + "56711": 4, + "56712": 1, + "56716": 2, + "56719": 2, + "56720": 2, + "56721": 2, + "56722": 1, + "56725": 2, + "56726": 1, + "56727": 1, + "56729": 1, + "56735": 2, + "56736": 1, + "56738": 2, + "56744": 1, + "56745": 1, + "56748": 1, + "56751": 1, + "56752": 2, + "56757": 1, + "56758": 1, + "56760": 2, + "56763": 1, + "56765": 1, + "56767": 3, + "56770": 2, + "56772": 1, + "56774": 1, + "56776": 1, + "56778": 1, + "56779": 1, + "56782": 1, + "56791": 1, + "56794": 3, + "56795": 1, + "56798": 2, + "56803": 1, + "56804": 1, + "56805": 1, + "56810": 1, + "56811": 3, + "56812": 1, + "56821": 1, + "56822": 2, + "56823": 1, + "56825": 1, + "56827": 1, + "56829": 1, + "56832": 1, + "56834": 1, + "56837": 1, + "56838": 2, + "56839": 2, + "56848": 1, + "56850": 2, + "56853": 3, + "56854": 1, + "56855": 1, + "56857": 1, + "56858": 1, + "56859": 1, + "56860": 1, + "56865": 1, + "56866": 1, + "56867": 2, + "56869": 1, + "56871": 1, + "56889": 1, + "56894": 1, + "56916": 1, + "56918": 1, + "56935": 1, + "56941": 1, + "56968": 1, + "56974": 1, + "56976": 2, + "56978": 1, + "56997": 1, + "57004": 1, + "57006": 1, + "57008": 1, + "57021": 1, + "57026": 1, + "57029": 1, + "57036": 1, + "57038": 1, + "57053": 2, + "57068": 1, + "57081": 1, + "57083": 1, + "57085": 1, + "57088": 1, + "57089": 1, + "57090": 1, + "57092": 1, + "57093": 1, + "57095": 2, + "57096": 1, + "57097": 2, + "57099": 2, + "57100": 1, + "57102": 1, + "57104": 4, + "57105": 2, + "57106": 1, + "57107": 2, + "57108": 2, + "57109": 2, + "57111": 3, + "57112": 1, + "57113": 2, + "57114": 2, + "57116": 4, + "57117": 3, + "57118": 5, + "57119": 3, + "57120": 2, + "57121": 2, + "57122": 1, + "57123": 3, + "57124": 2, + "57125": 1, + "57126": 3, + "57127": 5, + "57128": 6, + "57129": 4, + "57130": 1, + "57131": 6, + "57132": 4, + "57133": 3, + "57134": 2, + "57135": 4, + "57136": 3, + "57137": 3, + "57138": 3, + "57139": 1, + "57140": 3, + "57141": 2, + "57142": 5, + "57143": 3, + "57144": 3, + "57145": 4, + "57146": 3, + "57147": 2, + "57148": 3, + "57149": 5, + "57150": 4, + "57151": 3, + "57152": 2, + "57153": 1, + "57154": 3, + "57155": 1, + "57156": 2, + "57157": 1, + "57158": 2, + "57159": 6, + "57161": 2, + "57162": 3, + "57163": 1, + "57166": 2, + "57167": 2, + "57168": 2, + "57169": 4, + "57171": 1, + "57172": 2, + "57173": 2, + "57174": 3, + "57175": 1, + "57177": 1, + "57178": 2, + "57185": 1, + "57187": 1, + "57190": 2, + "57194": 1, + "57196": 1, + "57201": 1, + "57205": 1, + "57209": 1, + "57214": 2, + "57215": 1, + "57219": 2, + "57220": 2, + "57223": 1, + "57227": 1, + "57229": 1, + "57230": 1, + "57231": 1, + "57234": 1, + "57236": 2, + "57238": 1, + "57239": 1, + "57240": 1, + "57242": 1, + "57243": 1, + "57246": 1, + "57250": 1, + "57254": 1, + "57255": 1, + "57257": 1, + "57259": 2, + "57264": 1, + "57265": 2, + "57266": 3, + "57271": 1, + "57272": 1, + "57273": 1, + "57280": 2, + "57284": 1, + "57285": 1, + "57288": 1, + "57289": 1, + "57290": 1, + "57291": 1, + "57295": 1, + "57298": 1, + "57300": 1, + "57301": 1, + "57304": 1, + "57306": 1, + "57307": 2, + "57308": 1, + "57309": 2, + "57312": 2, + "57313": 1, + "57318": 1, + "57322": 2, + "57323": 2, + "57324": 1, + "57325": 1, + "57326": 1, + "57327": 1, + "57328": 4, + "57329": 2, + "57333": 1, + "57335": 1, + "57336": 1, + "57337": 2, + "57338": 2, + "57340": 2, + "57342": 2, + "57345": 2, + "57347": 1, + "57348": 1, + "57349": 2, + "57350": 1, + "57353": 1, + "57354": 4, + "57357": 2, + "57360": 1, + "57363": 1, + "57366": 2, + "57367": 1, + "57368": 1, + "57370": 1, + "57372": 1, + "57374": 1, + "57375": 3, + "57376": 3, + "57378": 1, + "57379": 2, + "57380": 1, + "57381": 1, + "57383": 1, + "57384": 2, + "57388": 1, + "57390": 1, + "57391": 1, + "57396": 1, + "57397": 1, + "57398": 2, + "57400": 1, + "57401": 2, + "57402": 1, + "57403": 1, + "57405": 1, + "57406": 1, + "57407": 2, + "57408": 1, + "57410": 2, + "57412": 1, + "57415": 1, + "57416": 1, + "57418": 1, + "57419": 1, + "57421": 1, + "57423": 1, + "57424": 1, + "57426": 1, + "57427": 1, + "57428": 2, + "57429": 3, + "57430": 1, + "57431": 3, + "57432": 2, + "57433": 2, + "57434": 2, + "57436": 2, + "57438": 2, + "57440": 3, + "57441": 2, + "57442": 1, + "57444": 1, + "57446": 1, + "57447": 2, + "57449": 2, + "57453": 1, + "57455": 1, + "57458": 1, + "57461": 1, + "57464": 2, + "57467": 3, + "57468": 1, + "57471": 1, + "57473": 2, + "57476": 2, + "57477": 1, + "57482": 1, + "57483": 1, + "57488": 1, + "57491": 2, + "57492": 1, + "57493": 1, + "57495": 1, + "57496": 2, + "57497": 3, + "57498": 2, + "57499": 1, + "57500": 1, + "57503": 1, + "57504": 2, + "57505": 1, + "57506": 2, + "57507": 1, + "57508": 1, + "57509": 1, + "57511": 2, + "57513": 1, + "57517": 1, + "57518": 1, + "57520": 2, + "57522": 1, + "57523": 1, + "57527": 2, + "57529": 1, + "57691": 1 + }, + "started": "2020-09-07T18:45:38.445Z", + "trafficStats": { + "incomingCompressionRatio": 0.8507120513916016, + "incomingOctetsAppLevel": 65536000, + "incomingOctetsWebSocketLevel": 55752265, + "incomingOctetsWireLevel": 55760265, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.00014349192808579166, + "outgoingCompressionRatio": 0.8507120513916016, + "outgoingOctetsAppLevel": 65536000, + "outgoingOctetsWebSocketLevel": 55752265, + "outgoingOctetsWireLevel": 56624499, + "outgoingWebSocketFrames": 218355, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0156448173002478, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 217355, + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 2, + "3": 6, + "4": 8, + "5": 6, + "6": 4, + "7": 4, + "8": 2, + "9": 3, + "10": 6, + "11": 2, + "12": 7, + "13": 3, + "14": 3, + "15": 6, + "16": 3, + "17": 8, + "18": 5, + "19": 4, + "20": 4, + "21": 1, + "22": 7, + "23": 3, + "24": 6, + "25": 9, + "26": 7, + "27": 4, + "28": 4, + "29": 10, + "30": 3, + "31": 4, + "32": 5, + "33": 10, + "34": 11, + "35": 5, + "36": 3, + "37": 9, + "38": 6, + "39": 3, + "40": 3, + "41": 5, + "42": 5, + "43": 5, + "44": 5, + "45": 8, + "46": 6, + "47": 4, + "48": 11, + "49": 5, + "50": 5, + "51": 8, + "52": 7, + "53": 4, + "54": 5, + "55": 8, + "56": 9, + "57": 9, + "58": 6, + "59": 4, + "60": 8, + "61": 7, + "62": 5, + "63": 2, + "64": 4, + "65": 11, + "66": 3, + "67": 6, + "68": 7, + "69": 2, + "70": 1, + "71": 5, + "72": 4, + "73": 6, + "74": 4, + "75": 6, + "76": 1, + "77": 4, + "78": 5, + "79": 7, + "80": 7, + "81": 6, + "82": 4, + "83": 4, + "84": 6, + "85": 1, + "86": 4, + "87": 3, + "88": 6, + "89": 3, + "90": 3, + "91": 4, + "92": 4, + "93": 3, + "94": 2, + "95": 1, + "96": 6, + "97": 5, + "98": 1, + "99": 2, + "100": 4, + "101": 2, + "102": 7, + "103": 6, + "104": 1, + "105": 2, + "106": 2, + "107": 2, + "108": 5, + "109": 4, + "110": 3, + "111": 6, + "112": 5, + "113": 2, + "114": 8, + "115": 3, + "116": 3, + "117": 5, + "118": 2, + "119": 2, + "120": 5, + "121": 2, + "122": 2, + "123": 4, + "124": 1, + "125": 3, + "126": 9, + "127": 3, + "130": 3, + "131": 7, + "132": 5, + "133": 1, + "134": 3, + "135": 2, + "136": 4, + "137": 5, + "138": 5, + "139": 4, + "140": 8, + "141": 6, + "142": 4, + "143": 10, + "144": 3, + "145": 4, + "146": 5, + "147": 6, + "148": 5, + "149": 4, + "150": 3, + "151": 4, + "152": 2, + "153": 2, + "154": 2, + "155": 4, + "156": 7, + "157": 3, + "158": 6, + "159": 3, + "160": 1, + "161": 3, + "162": 3, + "163": 4, + "164": 2, + "165": 4, + "167": 3, + "168": 5, + "169": 2, + "170": 4, + "171": 4, + "172": 8, + "173": 4, + "174": 7, + "175": 2, + "177": 2, + "178": 2, + "179": 3, + "180": 4, + "181": 4, + "182": 4, + "183": 2, + "184": 1, + "185": 3, + "186": 2, + "187": 5, + "188": 2, + "190": 4, + "191": 1, + "192": 2, + "193": 4, + "194": 2, + "195": 1, + "196": 3, + "197": 1, + "198": 3, + "199": 4, + "200": 4, + "201": 2, + "202": 3, + "203": 2, + "204": 1, + "205": 3, + "206": 5, + "207": 1, + "208": 1, + "209": 2, + "211": 2, + "212": 1, + "213": 1, + "214": 5, + "215": 3, + "216": 1, + "217": 7, + "218": 3, + "220": 3, + "221": 2, + "222": 3, + "223": 2, + "224": 1, + "225": 1, + "226": 5, + "227": 3, + "228": 3, + "230": 5, + "231": 9, + "232": 4, + "233": 1, + "234": 2, + "235": 2, + "236": 4, + "237": 2, + "238": 1, + "240": 2, + "241": 5, + "242": 2, + "243": 3, + "244": 1, + "245": 5, + "246": 2, + "247": 5, + "248": 4, + "249": 3, + "250": 2, + "251": 1, + "252": 5, + "253": 3, + "254": 3, + "255": 3, + "256": 2, + "257": 5, + "258": 3, + "259": 4, + "260": 217355 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333333266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888294dfc4e39737" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "94dfc4e3" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_2_15.html b/autobahn/client/tungstenite_case_12_2_15.html new file mode 100644 index 0000000..beff1f3 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_15.html @@ -0,0 +1,1360 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.2.15 : Pass - 14032 ms @ 2020-09-07T18:45:45.691Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=334&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 8TOU19W87W4ZWKouBrGJsw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: vjsnLTysEs4L0rRphtF6zdq9AJA=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
42541142541
42557142557
42563142563
42582142582
42585142585
42588142588
42597285194
42600142600
42602285204
42604142604
42627142627
42628142628
42635142635
42638142638
42640142640
42641285282
42645142645
42656142656
42658142658
42661142661
42662142662
42671142671
42672142672
42673142673
42675142675
42677285354
42684142684
42685142685
42689142689
42690142690
42692142692
42695142695
42696142696
42698285396
42699142699
42704142704
42706142706
42714142714
42719142719
42724142724
42727142727
42730142730
42734142734
42740142740
42741142741
42746142746
42747285494
42749142749
42755285510
42773142773
42774142774
42778142778
42781142781
42783142783
42785142785
42787142787
42789285578
42792142792
42793142793
42794285588
42799142799
42800142800
42806142806
42810142810
42821285642
42822142822
42824285648
42826142826
42830285660
42833142833
42834285668
42836142836
42838142838
42839285678
42843142843
428473128541
42851285702
42862285724
42863142863
42869142869
42870142870
42873285746
42875142875
42876285752
42877142877
42882285764
42883142883
42885142885
42887142887
42888142888
42892285784
42893142893
42897142897
428983128694
42906285812
42907142907
42908142908
42911142911
42912285824
42915142915
42920285840
42926142926
42927142927
42928142928
42929142929
42932142932
42934285868
42935142935
42936285872
42937142937
42943142943
42944142944
42945142945
42948285896
42951142951
42955285910
42956142956
42957142957
42961142961
42964142964
42965142965
42976142976
42977142977
429793128937
42980142980
42983142983
42984142984
42986142986
42988142988
42991285982
42993142993
42998142998
43004143004
43012143012
43017143017
43019143019
43051286102
43058143058
43063143063
43073143073
43085143085
43087143087
43089143089
43090143090
43094143094
43099286198
43100143100
43103143103
43115143115
43119143119
43121143121
43127286254
43147143147
43149143149
43150143150
43154143154
43157143157
43174143174
43177143177
43183143183
43190286380
43192286384
43197143197
43211143211
43215286430
43219143219
43225143225
43232286464
43237143237
43240143240
43246143246
43248143248
43254143254
43255143255
43259143259
43260143260
43268143268
43275143275
43283286566
43284143284
43285143285
43287143287
43291143291
43295143295
43301143301
43306143306
43308143308
43312143312
43314143314
43317143317
43319143319
433203129960
43325143325
43326286652
43328143328
43333143333
43336143336
43338143338
43340143340
43341143341
43346143346
43350143350
43351286702
43355143355
43356286712
43361143361
43367143367
43369286738
43370143370
43374143374
43375143375
43376143376
43378143378
43381143381
43386143386
43388286776
43389143389
43396143396
43397143397
43400143400
43405143405
43411143411
43413143413
43414286828
43417143417
43419143419
43420143420
43421143421
43423143423
43424286848
43426286852
43429143429
43431143431
43432143432
43433143433
43434286868
43435143435
43438143438
43439143439
43440286880
43442143442
43445143445
43447143447
43448143448
43449143449
43450286900
43452143452
43454143454
43455143455
434593130377
43461143461
43463143463
43469143469
43474143474
43477286954
43479143479
43482143482
43483143483
43488143488
43489143489
434903130470
43492143492
43493143493
43494286988
43495286990
43497286994
43501287002
43503287006
43504287008
43505287010
43508287016
43511143511
43512143512
43517143517
43528143528
43534143534
43536143536
43548143548
43563143563
43567143567
43570143570
43572143572
43585287170
43597287194
43598143598
43600143600
43601143601
43605287210
43606143606
43610143610
43613143613
43615143615
43616143616
43622143622
43625143625
43632143632
43633143633
43635143635
43636143636
43640143640
43644143644
43650143650
43654143654
43658143658
43661143661
43672143672
43674143674
43675143675
43677143677
43682143682
43687143687
43690143690
43691143691
43694143694
43695143695
43703143703
43704287408
43705143705
43710143710
43712143712
437133131139
43716143716
43720143720
43726143726
43738143738
43785143785
43820143820
43822143822
43891143891
43905143905
43952143952
43964143964
43986143986
44047144047
44052144052
44122144122
44145144145
44192144192
44224144224
44279144279
44297144297
44310144310
44370144370
44382144382
44439144439
44453144453
44473144473
44496144496
44533144533
44555144555
44558144558
44599144599
44614144614
44627144627
44637144637
44638144638
44663144663
44725144725
44727144727
44736144736
44776144776
44798144798
44821144821
44847144847
44864144864
44895144895
44908144908
44944144944
44947144947
44954144954
44972144972
45008145008
45068145068
45072145072
45088145088
45089145089
45134145134
45150145150
45170145170
45201145201
45231145231
45236145236
45250145250
45291290582
45303145303
45331145331
45371145371
45394145394
45413145413
45414145414
45433145433
45471145471
45475145475
45487145487
45513145513
45565145565
45573145573
45578145578
45601145601
45646145646
45670145670
45678145678
45679145679
45708145708
45754145754
45757145757
45768145768
45774145774
45818145818
45829145829
45850145850
45856145856
45892145892
45906145906
45920145920
45929145929
45950145950
45953145953
45996291992
46011146011
46015146015
46051146051
46061146061
46084146084
46093146093
46108146108
46130146130
46136146136
46144146144
46163146163
46188146188
46208146208
46216146216
46235146235
46261146261
46266146266
46294146294
46309146309
46322146322
46326146326
46372146372
46374146374
46375146375
46409146409
46430146430
46431146431
46447146447
46480146480
46510146510
46511146511
46532146532
46550146550
46573146573
46574146574
46580146580
46627146627
46651146651
46659146659
46666146666
46685146685
46712146712
46737146737
46739146739
46744146744
46775146775
46796146796
46817146817
46827146827
46847146847
46850146850
46864146864
46886146886
46897146897
46916146916
46926146926
46943146943
46954146954
46964146964
47000147000
47008147008
47009147009
47046147046
47047147047
47058147058
47061147061
47082147082
47093147093
47102147102
47111147111
47149147149
47163147163
47200147200
47220147220
47223147223
47262147262
47320147320
47351147351
47366147366
47387147387
47427147427
47467147467
47497147497
47528147528
47558147558
47600147600
47629147629
47635147635
47678147678
47703147703
47762147762
47771147771
47785147785
47830147830
47865147865
47921147921
47937147937
47986295972
47994147994
48055148055
48059148059
48082148082
48095148095
48133148133
48141148141
48147148147
48178148178
48182148182
48188148188
48189148189
48190148190
48191148191
48193148193
481943144582
481963144588
48197296394
48198296396
48199296398
48201148201
482023144606
48204148204
48206148206
48207148207
48215148215
48216148216
48217148217
48220148220
48221148221
48228148228
48229148229
48231148231
48233148233
48235296470
48241148241
48244148244
48248148248
48253148253
48257148257
48260148260
48264148264
48273148273
48274148274
48278148278
48279148279
48290148290
48291296582
48294148294
48301148301
48307148307
48310148310
48317148317
48319148319
48324148324
48329148329
48333296666
48334148334
48342148342
48345148345
48359148359
48363148363
48366296732
48370148370
48372148372
48378148378
48379148379
48385148385
48389148389
48394148394
48396148396
48400296800
48401148401
48404148404
48410148410
48411148411
48412148412
48415148415
48421148421
48423148423
48424148424
48427148427
48428148428
48434148434
48435148435
48442148442
48444148444
48451296902
48462148462
48469148469
48473148473
48474148474
48475296950
48477148477
48478148478
48480148480
48481148481
48492148492
48500148500
48502148502
48507148507
48509148509
48511148511
48513148513
48514148514
48516297032
48518297036
48519297038
48520148520
48521148521
48523148523
48528148528
48531297062
48532297064
48535148535
48537148537
48538148538
48542148542
48546297092
48552148552
48555297110
48556148556
48558148558
48559148559
48562148562
48564148564
48565297130
48566148566
48570148570
485713145713
48572148572
485733145719
48575297150
48577148577
48579297158
485803145740
48581148581
48582148582
48584148584
485884194352
48591148591
48592297184
485934194372
48595148595
48597148597
48603148603
48608148608
48611148611
48612297224
48613297226
48614148614
48616148616
486203145860
48624148624
48625148625
48626148626
48627297254
48629148629
48631148631
48632148632
48634297268
48635148635
48636148636
48638297276
48640148640
48643297286
48644148644
48647297294
48648148648
48652297304
48653148653
48655148655
48662148662
48664297328
48668148668
48674148674
48679148679
48702148702
48713148713
48727148727
48729148729
48757148757
48760148760
48769148769
48776148776
48778148778
48782148782
48798148798
48811297622
48815148815
48822148822
48828148828
48832148832
48855148855
48865148865
48869148869
48889148889
48890148890
48895148895
48898148898
48925148925
48928148928
48941148941
48945148945
48949148949
48950148950
48965148965
48966148966
48974148974
48976148976
48979148979
48981148981
48984297968
48989148989
48990297980
48991148991
48994297988
48996297992
48997148997
489994195996
49002298004
49004149004
49006149006
49008149008
49009149009
49010149010
49011298022
490123147036
490134196052
49014298028
49015149015
49016149016
49017298034
490184196072
49019149019
49020298040
490215245105
49022149022
490253147075
490263147078
49027298054
49029298058
49030298060
490313147093
49033298066
49034149034
49035298070
49036149036
490374196148
49038298076
49039298078
49041298082
490433147129
49044149044
49045149045
49047149047
49048298096
49049149049
49050149050
49051149051
49052149052
49053149053
49054149054
49056149056
49061149061
49064298128
49065149065
49066149066
49067149067
49069298138
49070149070
49071149071
49072298144
49075149075
49076149076
49078298156
49079298158
49080149080
49081149081
49083298166
49084149084
49089298178
49090298180
49092298184
49093298186
49096298192
49098149098
49099298198
49100149100
49101298202
49104149104
49108149108
49111149111
49114149114
49117298234
49120149120
49230149230
65536100065536000
Total2002111487823
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
224
326
4624
515
7535
8324
9327
10330
11111
12224
14342
15345
16464
17234
19357
20360
21363
22122
23246
24124
254100
26252
27381
28256
29129
30390
314124
32396
33399
34134
353105
36272
373111
386228
39139
40140
41282
423126
433129
444176
46292
473141
48296
493147
505250
51151
523156
535265
543162
555275
565280
576342
585290
592118
603180
613183
626372
642128
654260
6610660
672134
682136
693207
707490
713213
72172
734292
745370
757525
763228
774308
783234
796474
805400
816486
827574
839747
844336
852170
862172
872174
883264
895445
903270
916546
92192
935465
946564
954380
965480
985490
995495
1003300
1015505
1025510
1034412
1048832
1057735
1064424
1075535
1085540
1095545
1106660
1113333
1127784
11391017
1142228
1151115
1161116
1178936
1187826
1194476
1205600
1214484
1225610
1236738
1246744
1254500
1263378
1275635
1304520
13181048
1325660
1332266
1344536
13581080
1366816
13781096
1383414
1394556
1403420
1414564
1425710
1433429
1446864
1456870
1463438
1473441
1484592
1493447
15081200
1511151
15271064
1534612
1554620
1563468
1572314
15871106
1594636
1604640
16171127
1624648
1633489
1646984
165111815
16671162
1672334
1682336
1693507
1704680
17171197
17291548
17381384
17481392
1755875
1764704
17771239
17861068
17971253
1802360
18171267
1825910
18381464
1844736
1855925
186112046
1874748
1883564
1894756
19061140
1912382
1923576
19361158
19471358
19561170
1963588
1973591
19861188
1995995
20051000
2012402
2022404
20351015
2044816
2053615
2061206
2072414
2084832
2092418
2112422
2132426
21461284
2154860
2163648
21751085
21851090
21961314
2203660
22151105
2224888
2232446
2243672
2254900
2264904
2274908
22851140
2294916
23051150
2314924
2323696
2332466
23451170
2354940
2363708
23761422
2382476
2392478
24061440
24151205
2423726
2433729
2444976
2452490
2461246
2471247
2482496
2494996
25041000
25141004
2522504
2533759
2542508
2553765
2562512
2573771
25841032
25941036
260434923113079980
Total435925113216599
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
0434923
21000
81
Total435924
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333334266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88824e08a52f4de0
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3465303861353266
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_2_15.json b/autobahn/client/tungstenite_case_12_2_15.json new file mode 100644 index 0000000..211ff1a --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_15.json @@ -0,0 +1,1207 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 334, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 14032, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=334&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 8TOU19W87W4ZWKouBrGJsw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: vjsnLTysEs4L0rRphtF6zdq9AJA=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.2.15", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "42541": 1, + "42557": 1, + "42563": 1, + "42582": 1, + "42585": 1, + "42588": 1, + "42597": 2, + "42600": 1, + "42602": 2, + "42604": 1, + "42627": 1, + "42628": 1, + "42635": 1, + "42638": 1, + "42640": 1, + "42641": 2, + "42645": 1, + "42656": 1, + "42658": 1, + "42661": 1, + "42662": 1, + "42671": 1, + "42672": 1, + "42673": 1, + "42675": 1, + "42677": 2, + "42684": 1, + "42685": 1, + "42689": 1, + "42690": 1, + "42692": 1, + "42695": 1, + "42696": 1, + "42698": 2, + "42699": 1, + "42704": 1, + "42706": 1, + "42714": 1, + "42719": 1, + "42724": 1, + "42727": 1, + "42730": 1, + "42734": 1, + "42740": 1, + "42741": 1, + "42746": 1, + "42747": 2, + "42749": 1, + "42755": 2, + "42773": 1, + "42774": 1, + "42778": 1, + "42781": 1, + "42783": 1, + "42785": 1, + "42787": 1, + "42789": 2, + "42792": 1, + "42793": 1, + "42794": 2, + "42799": 1, + "42800": 1, + "42806": 1, + "42810": 1, + "42821": 2, + "42822": 1, + "42824": 2, + "42826": 1, + "42830": 2, + "42833": 1, + "42834": 2, + "42836": 1, + "42838": 1, + "42839": 2, + "42843": 1, + "42847": 3, + "42851": 2, + "42862": 2, + "42863": 1, + "42869": 1, + "42870": 1, + "42873": 2, + "42875": 1, + "42876": 2, + "42877": 1, + "42882": 2, + "42883": 1, + "42885": 1, + "42887": 1, + "42888": 1, + "42892": 2, + "42893": 1, + "42897": 1, + "42898": 3, + "42906": 2, + "42907": 1, + "42908": 1, + "42911": 1, + "42912": 2, + "42915": 1, + "42920": 2, + "42926": 1, + "42927": 1, + "42928": 1, + "42929": 1, + "42932": 1, + "42934": 2, + "42935": 1, + "42936": 2, + "42937": 1, + "42943": 1, + "42944": 1, + "42945": 1, + "42948": 2, + "42951": 1, + "42955": 2, + "42956": 1, + "42957": 1, + "42961": 1, + "42964": 1, + "42965": 1, + "42976": 1, + "42977": 1, + "42979": 3, + "42980": 1, + "42983": 1, + "42984": 1, + "42986": 1, + "42988": 1, + "42991": 2, + "42993": 1, + "42998": 1, + "43004": 1, + "43012": 1, + "43017": 1, + "43019": 1, + "43051": 2, + "43058": 1, + "43063": 1, + "43073": 1, + "43085": 1, + "43087": 1, + "43089": 1, + "43090": 1, + "43094": 1, + "43099": 2, + "43100": 1, + "43103": 1, + "43115": 1, + "43119": 1, + "43121": 1, + "43127": 2, + "43147": 1, + "43149": 1, + "43150": 1, + "43154": 1, + "43157": 1, + "43174": 1, + "43177": 1, + "43183": 1, + "43190": 2, + "43192": 2, + "43197": 1, + "43211": 1, + "43215": 2, + "43219": 1, + "43225": 1, + "43232": 2, + "43237": 1, + "43240": 1, + "43246": 1, + "43248": 1, + "43254": 1, + "43255": 1, + "43259": 1, + "43260": 1, + "43268": 1, + "43275": 1, + "43283": 2, + "43284": 1, + "43285": 1, + "43287": 1, + "43291": 1, + "43295": 1, + "43301": 1, + "43306": 1, + "43308": 1, + "43312": 1, + "43314": 1, + "43317": 1, + "43319": 1, + "43320": 3, + "43325": 1, + "43326": 2, + "43328": 1, + "43333": 1, + "43336": 1, + "43338": 1, + "43340": 1, + "43341": 1, + "43346": 1, + "43350": 1, + "43351": 2, + "43355": 1, + "43356": 2, + "43361": 1, + "43367": 1, + "43369": 2, + "43370": 1, + "43374": 1, + "43375": 1, + "43376": 1, + "43378": 1, + "43381": 1, + "43386": 1, + "43388": 2, + "43389": 1, + "43396": 1, + "43397": 1, + "43400": 1, + "43405": 1, + "43411": 1, + "43413": 1, + "43414": 2, + "43417": 1, + "43419": 1, + "43420": 1, + "43421": 1, + "43423": 1, + "43424": 2, + "43426": 2, + "43429": 1, + "43431": 1, + "43432": 1, + "43433": 1, + "43434": 2, + "43435": 1, + "43438": 1, + "43439": 1, + "43440": 2, + "43442": 1, + "43445": 1, + "43447": 1, + "43448": 1, + "43449": 1, + "43450": 2, + "43452": 1, + "43454": 1, + "43455": 1, + "43459": 3, + "43461": 1, + "43463": 1, + "43469": 1, + "43474": 1, + "43477": 2, + "43479": 1, + "43482": 1, + "43483": 1, + "43488": 1, + "43489": 1, + "43490": 3, + "43492": 1, + "43493": 1, + "43494": 2, + "43495": 2, + "43497": 2, + "43501": 2, + "43503": 2, + "43504": 2, + "43505": 2, + "43508": 2, + "43511": 1, + "43512": 1, + "43517": 1, + "43528": 1, + "43534": 1, + "43536": 1, + "43548": 1, + "43563": 1, + "43567": 1, + "43570": 1, + "43572": 1, + "43585": 2, + "43597": 2, + "43598": 1, + "43600": 1, + "43601": 1, + "43605": 2, + "43606": 1, + "43610": 1, + "43613": 1, + "43615": 1, + "43616": 1, + "43622": 1, + "43625": 1, + "43632": 1, + "43633": 1, + "43635": 1, + "43636": 1, + "43640": 1, + "43644": 1, + "43650": 1, + "43654": 1, + "43658": 1, + "43661": 1, + "43672": 1, + "43674": 1, + "43675": 1, + "43677": 1, + "43682": 1, + "43687": 1, + "43690": 1, + "43691": 1, + "43694": 1, + "43695": 1, + "43703": 1, + "43704": 2, + "43705": 1, + "43710": 1, + "43712": 1, + "43713": 3, + "43716": 1, + "43720": 1, + "43726": 1, + "43738": 1, + "43785": 1, + "43820": 1, + "43822": 1, + "43891": 1, + "43905": 1, + "43952": 1, + "43964": 1, + "43986": 1, + "44047": 1, + "44052": 1, + "44122": 1, + "44145": 1, + "44192": 1, + "44224": 1, + "44279": 1, + "44297": 1, + "44310": 1, + "44370": 1, + "44382": 1, + "44439": 1, + "44453": 1, + "44473": 1, + "44496": 1, + "44533": 1, + "44555": 1, + "44558": 1, + "44599": 1, + "44614": 1, + "44627": 1, + "44637": 1, + "44638": 1, + "44663": 1, + "44725": 1, + "44727": 1, + "44736": 1, + "44776": 1, + "44798": 1, + "44821": 1, + "44847": 1, + "44864": 1, + "44895": 1, + "44908": 1, + "44944": 1, + "44947": 1, + "44954": 1, + "44972": 1, + "45008": 1, + "45068": 1, + "45072": 1, + "45088": 1, + "45089": 1, + "45134": 1, + "45150": 1, + "45170": 1, + "45201": 1, + "45231": 1, + "45236": 1, + "45250": 1, + "45291": 2, + "45303": 1, + "45331": 1, + "45371": 1, + "45394": 1, + "45413": 1, + "45414": 1, + "45433": 1, + "45471": 1, + "45475": 1, + "45487": 1, + "45513": 1, + "45565": 1, + "45573": 1, + "45578": 1, + "45601": 1, + "45646": 1, + "45670": 1, + "45678": 1, + "45679": 1, + "45708": 1, + "45754": 1, + "45757": 1, + "45768": 1, + "45774": 1, + "45818": 1, + "45829": 1, + "45850": 1, + "45856": 1, + "45892": 1, + "45906": 1, + "45920": 1, + "45929": 1, + "45950": 1, + "45953": 1, + "45996": 2, + "46011": 1, + "46015": 1, + "46051": 1, + "46061": 1, + "46084": 1, + "46093": 1, + "46108": 1, + "46130": 1, + "46136": 1, + "46144": 1, + "46163": 1, + "46188": 1, + "46208": 1, + "46216": 1, + "46235": 1, + "46261": 1, + "46266": 1, + "46294": 1, + "46309": 1, + "46322": 1, + "46326": 1, + "46372": 1, + "46374": 1, + "46375": 1, + "46409": 1, + "46430": 1, + "46431": 1, + "46447": 1, + "46480": 1, + "46510": 1, + "46511": 1, + "46532": 1, + "46550": 1, + "46573": 1, + "46574": 1, + "46580": 1, + "46627": 1, + "46651": 1, + "46659": 1, + "46666": 1, + "46685": 1, + "46712": 1, + "46737": 1, + "46739": 1, + "46744": 1, + "46775": 1, + "46796": 1, + "46817": 1, + "46827": 1, + "46847": 1, + "46850": 1, + "46864": 1, + "46886": 1, + "46897": 1, + "46916": 1, + "46926": 1, + "46943": 1, + "46954": 1, + "46964": 1, + "47000": 1, + "47008": 1, + "47009": 1, + "47046": 1, + "47047": 1, + "47058": 1, + "47061": 1, + "47082": 1, + "47093": 1, + "47102": 1, + "47111": 1, + "47149": 1, + "47163": 1, + "47200": 1, + "47220": 1, + "47223": 1, + "47262": 1, + "47320": 1, + "47351": 1, + "47366": 1, + "47387": 1, + "47427": 1, + "47467": 1, + "47497": 1, + "47528": 1, + "47558": 1, + "47600": 1, + "47629": 1, + "47635": 1, + "47678": 1, + "47703": 1, + "47762": 1, + "47771": 1, + "47785": 1, + "47830": 1, + "47865": 1, + "47921": 1, + "47937": 1, + "47986": 2, + "47994": 1, + "48055": 1, + "48059": 1, + "48082": 1, + "48095": 1, + "48133": 1, + "48141": 1, + "48147": 1, + "48178": 1, + "48182": 1, + "48188": 1, + "48189": 1, + "48190": 1, + "48191": 1, + "48193": 1, + "48194": 3, + "48196": 3, + "48197": 2, + "48198": 2, + "48199": 2, + "48201": 1, + "48202": 3, + "48204": 1, + "48206": 1, + "48207": 1, + "48215": 1, + "48216": 1, + "48217": 1, + "48220": 1, + "48221": 1, + "48228": 1, + "48229": 1, + "48231": 1, + "48233": 1, + "48235": 2, + "48241": 1, + "48244": 1, + "48248": 1, + "48253": 1, + "48257": 1, + "48260": 1, + "48264": 1, + "48273": 1, + "48274": 1, + "48278": 1, + "48279": 1, + "48290": 1, + "48291": 2, + "48294": 1, + "48301": 1, + "48307": 1, + "48310": 1, + "48317": 1, + "48319": 1, + "48324": 1, + "48329": 1, + "48333": 2, + "48334": 1, + "48342": 1, + "48345": 1, + "48359": 1, + "48363": 1, + "48366": 2, + "48370": 1, + "48372": 1, + "48378": 1, + "48379": 1, + "48385": 1, + "48389": 1, + "48394": 1, + "48396": 1, + "48400": 2, + "48401": 1, + "48404": 1, + "48410": 1, + "48411": 1, + "48412": 1, + "48415": 1, + "48421": 1, + "48423": 1, + "48424": 1, + "48427": 1, + "48428": 1, + "48434": 1, + "48435": 1, + "48442": 1, + "48444": 1, + "48451": 2, + "48462": 1, + "48469": 1, + "48473": 1, + "48474": 1, + "48475": 2, + "48477": 1, + "48478": 1, + "48480": 1, + "48481": 1, + "48492": 1, + "48500": 1, + "48502": 1, + "48507": 1, + "48509": 1, + "48511": 1, + "48513": 1, + "48514": 1, + "48516": 2, + "48518": 2, + "48519": 2, + "48520": 1, + "48521": 1, + "48523": 1, + "48528": 1, + "48531": 2, + "48532": 2, + "48535": 1, + "48537": 1, + "48538": 1, + "48542": 1, + "48546": 2, + "48552": 1, + "48555": 2, + "48556": 1, + "48558": 1, + "48559": 1, + "48562": 1, + "48564": 1, + "48565": 2, + "48566": 1, + "48570": 1, + "48571": 3, + "48572": 1, + "48573": 3, + "48575": 2, + "48577": 1, + "48579": 2, + "48580": 3, + "48581": 1, + "48582": 1, + "48584": 1, + "48588": 4, + "48591": 1, + "48592": 2, + "48593": 4, + "48595": 1, + "48597": 1, + "48603": 1, + "48608": 1, + "48611": 1, + "48612": 2, + "48613": 2, + "48614": 1, + "48616": 1, + "48620": 3, + "48624": 1, + "48625": 1, + "48626": 1, + "48627": 2, + "48629": 1, + "48631": 1, + "48632": 1, + "48634": 2, + "48635": 1, + "48636": 1, + "48638": 2, + "48640": 1, + "48643": 2, + "48644": 1, + "48647": 2, + "48648": 1, + "48652": 2, + "48653": 1, + "48655": 1, + "48662": 1, + "48664": 2, + "48668": 1, + "48674": 1, + "48679": 1, + "48702": 1, + "48713": 1, + "48727": 1, + "48729": 1, + "48757": 1, + "48760": 1, + "48769": 1, + "48776": 1, + "48778": 1, + "48782": 1, + "48798": 1, + "48811": 2, + "48815": 1, + "48822": 1, + "48828": 1, + "48832": 1, + "48855": 1, + "48865": 1, + "48869": 1, + "48889": 1, + "48890": 1, + "48895": 1, + "48898": 1, + "48925": 1, + "48928": 1, + "48941": 1, + "48945": 1, + "48949": 1, + "48950": 1, + "48965": 1, + "48966": 1, + "48974": 1, + "48976": 1, + "48979": 1, + "48981": 1, + "48984": 2, + "48989": 1, + "48990": 2, + "48991": 1, + "48994": 2, + "48996": 2, + "48997": 1, + "48999": 4, + "49002": 2, + "49004": 1, + "49006": 1, + "49008": 1, + "49009": 1, + "49010": 1, + "49011": 2, + "49012": 3, + "49013": 4, + "49014": 2, + "49015": 1, + "49016": 1, + "49017": 2, + "49018": 4, + "49019": 1, + "49020": 2, + "49021": 5, + "49022": 1, + "49025": 3, + "49026": 3, + "49027": 2, + "49029": 2, + "49030": 2, + "49031": 3, + "49033": 2, + "49034": 1, + "49035": 2, + "49036": 1, + "49037": 4, + "49038": 2, + "49039": 2, + "49041": 2, + "49043": 3, + "49044": 1, + "49045": 1, + "49047": 1, + "49048": 2, + "49049": 1, + "49050": 1, + "49051": 1, + "49052": 1, + "49053": 1, + "49054": 1, + "49056": 1, + "49061": 1, + "49064": 2, + "49065": 1, + "49066": 1, + "49067": 1, + "49069": 2, + "49070": 1, + "49071": 1, + "49072": 2, + "49075": 1, + "49076": 1, + "49078": 2, + "49079": 2, + "49080": 1, + "49081": 1, + "49083": 2, + "49084": 1, + "49089": 2, + "49090": 2, + "49092": 2, + "49093": 2, + "49096": 2, + "49098": 1, + "49099": 2, + "49100": 1, + "49101": 2, + "49104": 1, + "49108": 1, + "49111": 1, + "49114": 1, + "49117": 2, + "49120": 1, + "49230": 1, + "65536": 1000 + }, + "started": "2020-09-07T18:45:45.691Z", + "trafficStats": { + "incomingCompressionRatio": 0.8504757537841797, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 111473558, + "incomingOctetsWireLevel": 111487558, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.00012559032160792787, + "outgoingCompressionRatio": 0.8504757919311523, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 111473563, + "outgoingOctetsWireLevel": 113216343, + "outgoingWebSocketFrames": 435923, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.01563402077674686, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 434923, + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 2, + "3": 2, + "4": 6, + "5": 1, + "7": 5, + "8": 3, + "9": 3, + "10": 3, + "11": 1, + "12": 2, + "14": 3, + "15": 3, + "16": 4, + "17": 2, + "19": 3, + "20": 3, + "21": 3, + "22": 1, + "23": 2, + "24": 1, + "25": 4, + "26": 2, + "27": 3, + "28": 2, + "29": 1, + "30": 3, + "31": 4, + "32": 3, + "33": 3, + "34": 1, + "35": 3, + "36": 2, + "37": 3, + "38": 6, + "39": 1, + "40": 1, + "41": 2, + "42": 3, + "43": 3, + "44": 4, + "46": 2, + "47": 3, + "48": 2, + "49": 3, + "50": 5, + "51": 1, + "52": 3, + "53": 5, + "54": 3, + "55": 5, + "56": 5, + "57": 6, + "58": 5, + "59": 2, + "60": 3, + "61": 3, + "62": 6, + "64": 2, + "65": 4, + "66": 10, + "67": 2, + "68": 2, + "69": 3, + "70": 7, + "71": 3, + "72": 1, + "73": 4, + "74": 5, + "75": 7, + "76": 3, + "77": 4, + "78": 3, + "79": 6, + "80": 5, + "81": 6, + "82": 7, + "83": 9, + "84": 4, + "85": 2, + "86": 2, + "87": 2, + "88": 3, + "89": 5, + "90": 3, + "91": 6, + "92": 1, + "93": 5, + "94": 6, + "95": 4, + "96": 5, + "98": 5, + "99": 5, + "100": 3, + "101": 5, + "102": 5, + "103": 4, + "104": 8, + "105": 7, + "106": 4, + "107": 5, + "108": 5, + "109": 5, + "110": 6, + "111": 3, + "112": 7, + "113": 9, + "114": 2, + "115": 1, + "116": 1, + "117": 8, + "118": 7, + "119": 4, + "120": 5, + "121": 4, + "122": 5, + "123": 6, + "124": 6, + "125": 4, + "126": 3, + "127": 5, + "130": 4, + "131": 8, + "132": 5, + "133": 2, + "134": 4, + "135": 8, + "136": 6, + "137": 8, + "138": 3, + "139": 4, + "140": 3, + "141": 4, + "142": 5, + "143": 3, + "144": 6, + "145": 6, + "146": 3, + "147": 3, + "148": 4, + "149": 3, + "150": 8, + "151": 1, + "152": 7, + "153": 4, + "155": 4, + "156": 3, + "157": 2, + "158": 7, + "159": 4, + "160": 4, + "161": 7, + "162": 4, + "163": 3, + "164": 6, + "165": 11, + "166": 7, + "167": 2, + "168": 2, + "169": 3, + "170": 4, + "171": 7, + "172": 9, + "173": 8, + "174": 8, + "175": 5, + "176": 4, + "177": 7, + "178": 6, + "179": 7, + "180": 2, + "181": 7, + "182": 5, + "183": 8, + "184": 4, + "185": 5, + "186": 11, + "187": 4, + "188": 3, + "189": 4, + "190": 6, + "191": 2, + "192": 3, + "193": 6, + "194": 7, + "195": 6, + "196": 3, + "197": 3, + "198": 6, + "199": 5, + "200": 5, + "201": 2, + "202": 2, + "203": 5, + "204": 4, + "205": 3, + "206": 1, + "207": 2, + "208": 4, + "209": 2, + "211": 2, + "213": 2, + "214": 6, + "215": 4, + "216": 3, + "217": 5, + "218": 5, + "219": 6, + "220": 3, + "221": 5, + "222": 4, + "223": 2, + "224": 3, + "225": 4, + "226": 4, + "227": 4, + "228": 5, + "229": 4, + "230": 5, + "231": 4, + "232": 3, + "233": 2, + "234": 5, + "235": 4, + "236": 3, + "237": 6, + "238": 2, + "239": 2, + "240": 6, + "241": 5, + "242": 3, + "243": 3, + "244": 4, + "245": 2, + "246": 1, + "247": 1, + "248": 2, + "249": 4, + "250": 4, + "251": 4, + "252": 2, + "253": 3, + "254": 2, + "255": 3, + "256": 2, + "257": 3, + "258": 4, + "259": 4, + "260": 434923 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333334266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88824e08a52f4de0" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "4e08a52f" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_2_16.html b/autobahn/client/tungstenite_case_12_2_16.html new file mode 100644 index 0000000..d460b2b --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_16.html @@ -0,0 +1,1712 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.2.16 : Pass - 12449 ms @ 2020-09-07T18:45:59.723Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=335&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: dWTmpZY4wMy3W2wwqBWqWg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: GlZPyz80q1gTBlc5pq6msBvmQPc=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
42541142541
42557142557
42563142563
42582142582
42585142585
42588142588
42597285194
42600142600
42602285204
42604142604
42627142627
42628142628
42635142635
42638142638
42640142640
42641285282
42645142645
42656142656
42658142658
42661142661
42662142662
42671142671
42672142672
42673142673
42675142675
42677285354
42684142684
42685142685
42689142689
42690142690
42692142692
42695142695
42696142696
42698285396
42699142699
42704142704
42706142706
42714142714
42719142719
42724142724
42727142727
42730142730
42734142734
42740142740
42741142741
42746142746
42747285494
42749142749
42755285510
42773142773
42774142774
42778142778
42781142781
42783142783
42785142785
42787142787
42789285578
42792142792
42793142793
42794285588
42799142799
42800142800
42806142806
42810142810
42821285642
42822142822
42824285648
42826142826
42830285660
42833142833
42834285668
42836142836
42838142838
42839285678
42843142843
428473128541
42851285702
42862285724
42863142863
42869142869
42870142870
42873285746
42875142875
42876285752
42877142877
42882285764
42883142883
42885142885
42887142887
42888142888
42892285784
42893142893
42897142897
428983128694
42906285812
42907142907
42908142908
42911142911
42912285824
42915142915
42920285840
42926142926
42927142927
42928142928
42929142929
42932142932
42934285868
42935142935
42936285872
42937142937
42943142943
42944142944
42945142945
42948285896
42951142951
42955285910
42956142956
42957142957
42961142961
42964142964
42965142965
42976142976
42977142977
429793128937
42980142980
42983142983
42984142984
42986142986
42988142988
42991285982
42993142993
42998142998
43004143004
43012143012
43017143017
43019143019
43051286102
43058143058
43063143063
43073143073
43085143085
43087143087
43089143089
43090143090
43094143094
43099286198
43100143100
43103143103
43115143115
43119143119
43121143121
43127286254
43147143147
43149143149
43150143150
43154143154
43157143157
43174143174
43177143177
43183143183
43190286380
43192286384
43197143197
43211143211
43215286430
43219143219
43225143225
43232286464
43237143237
43240143240
43246143246
43248143248
43254143254
43255143255
43259143259
43260143260
43268143268
43275143275
43283286566
43284143284
43285143285
43287143287
43291143291
43295143295
43301143301
43306143306
43308143308
43312143312
43314143314
43317143317
43319143319
433203129960
43325143325
43326286652
43328143328
43333143333
43336143336
43338143338
43340143340
43341143341
43346143346
43350143350
43351286702
43355143355
43356286712
43361143361
43367143367
43369286738
43370143370
43374143374
43375143375
43376143376
43378143378
43381143381
43386143386
43388286776
43389143389
43396143396
43397143397
43400143400
43405143405
43411143411
43413143413
43414286828
43417143417
43419143419
43420143420
43421143421
43423143423
43424286848
43426286852
43429143429
43431143431
43432143432
43433143433
43434286868
43435143435
43438143438
43439143439
43440286880
43442143442
43445143445
43447143447
43448143448
43449143449
43450286900
43452143452
43454143454
43455143455
434593130377
43461143461
43463143463
43469143469
43474143474
43477286954
43479143479
43482143482
43483143483
43488143488
43489143489
434903130470
43492143492
43493143493
43494286988
43495286990
43497286994
43501287002
43503287006
43504287008
43505287010
43508287016
43511143511
43512143512
43517143517
43528143528
43534143534
43536143536
43548143548
43563143563
43567143567
43570143570
43572143572
43585287170
43597287194
43598143598
43600143600
43601143601
43605287210
43606143606
43610143610
43613143613
43615143615
43616143616
43622143622
43625143625
43632143632
43633143633
43635143635
43636143636
43640143640
43644143644
43650143650
43654143654
43658143658
43661143661
43672143672
43674143674
43675143675
43677143677
43682143682
43687143687
43690143690
43691143691
43694143694
43695143695
43703143703
43704287408
43705143705
43710143710
43712143712
437133131139
43716143716
43720143720
43726143726
43738143738
43785143785
43820143820
43822143822
43891143891
43905143905
43952143952
43964143964
43986143986
44047144047
44052144052
44122144122
44145144145
44192144192
44224144224
44279144279
44297144297
44310144310
44370144370
44382144382
44439144439
44453144453
44473144473
44496144496
44533144533
44555144555
44558144558
44599144599
44614144614
44627144627
44637144637
44638144638
44663144663
44725144725
44727144727
44736144736
44776144776
44798144798
44821144821
44847144847
44864144864
44895144895
44908144908
44944144944
44947144947
44954144954
44972144972
45008145008
45068145068
45072145072
45088145088
45089145089
45134145134
45150145150
45170145170
45201145201
45231145231
45236145236
45250145250
45291290582
45303145303
45331145331
45371145371
45394145394
45413145413
45414145414
45433145433
45471145471
45475145475
45487145487
45513145513
45565145565
45573145573
45578145578
45601145601
45646145646
45670145670
45678145678
45679145679
45708145708
45754145754
45757145757
45768145768
45774145774
45818145818
45829145829
45850145850
45856145856
45892145892
45906145906
45920145920
45929145929
45950145950
45953145953
45996291992
46011146011
46015146015
46051146051
46061146061
46084146084
46093146093
46108146108
46130146130
46136146136
46144146144
46163146163
46188146188
46208146208
46216146216
46235146235
46261146261
46266146266
46294146294
46309146309
46322146322
46326146326
46372146372
46374146374
46375146375
46409146409
46430146430
46431146431
46447146447
46480146480
46510146510
46511146511
46532146532
46550146550
46573146573
46574146574
46580146580
46627146627
46651146651
46659146659
46666146666
46685146685
46712146712
46737146737
46739146739
46744146744
46775146775
46796146796
46817146817
46827146827
46847146847
46850146850
46864146864
46886146886
46897146897
46916146916
46926146926
46943146943
46954146954
46964146964
47000147000
47008147008
47009147009
47046147046
47047147047
47058147058
47061147061
47082147082
47093147093
47102147102
47111147111
47149147149
47163147163
47200147200
47220147220
47223147223
47262147262
47320147320
47351147351
47366147366
47387147387
47427147427
47467147467
47497147497
47528147528
47558147558
47600147600
47629147629
47635147635
47678147678
47703147703
47762147762
47771147771
47785147785
47830147830
47865147865
47921147921
47937147937
47986295972
47994147994
48055148055
48059148059
48082148082
48095148095
48133148133
48141148141
48147148147
48178148178
48182148182
48188148188
48189148189
48190148190
48191148191
48193148193
481943144582
481963144588
48197296394
48198296396
48199296398
48201148201
482023144606
48204148204
48206148206
48207148207
48215148215
48216148216
48217148217
48220148220
48221148221
48228148228
48229148229
48231148231
48233148233
48235296470
48241148241
48244148244
48248148248
48253148253
48257148257
48260148260
48264148264
48273148273
48274148274
48278148278
48279148279
48290148290
48291296582
48294148294
48301148301
48307148307
48310148310
48317148317
48319148319
48324148324
48329148329
48333296666
48334148334
48342148342
48345148345
48359148359
48363148363
48366296732
48370148370
48372148372
48378148378
48379148379
48385148385
48389148389
48394148394
48396148396
48400296800
48401148401
48404148404
48410148410
48411148411
48412148412
48415148415
48421148421
48423148423
48424148424
48427148427
48428148428
48434148434
48435148435
48442148442
48444148444
48451296902
48462148462
48469148469
48473148473
48474148474
48475296950
48477148477
48478148478
48480148480
48481148481
48492148492
48500148500
48502148502
48507148507
48509148509
48511148511
48513148513
48514148514
48516297032
48518297036
48519297038
48520148520
48521148521
48523148523
48528148528
48531297062
48532297064
48535148535
48537148537
48538148538
48542148542
48546297092
48552148552
48555297110
48556148556
48558148558
48559148559
48562148562
48564148564
48565297130
48566148566
48570148570
485713145713
48572148572
485733145719
48575297150
48577148577
48579297158
485803145740
48581148581
48582148582
48584148584
485884194352
48591148591
48592297184
485934194372
48595148595
48597148597
48603148603
48608148608
48611148611
48612297224
48613297226
48614148614
48616148616
486203145860
48624148624
48625148625
48626148626
48627297254
48629148629
48631148631
48632148632
48634297268
48635148635
48636148636
48638297276
48640148640
48643297286
48644148644
48647297294
48648148648
48652297304
48653148653
48655148655
48662148662
48664297328
48668148668
48674148674
48679148679
48702148702
48713148713
48727148727
48729148729
48757148757
48760148760
48769148769
48776148776
48778148778
48782148782
48798148798
48811297622
48815148815
48822148822
48828148828
48832148832
48855148855
48865148865
48869148869
48889148889
48890148890
48895148895
48898148898
48925148925
48928148928
48941148941
48945148945
48949148949
48950148950
48965148965
48966148966
48974148974
48976148976
48979148979
48981148981
48984297968
48989148989
48990297980
48991148991
48994297988
48996297992
48997148997
489994195996
49002298004
49004149004
49006149006
49008149008
49009149009
49010149010
49011298022
490123147036
490134196052
49014298028
49015149015
49016149016
49017298034
490184196072
49019149019
49020298040
490215245105
49022149022
490253147075
490263147078
49027298054
49029298058
49030298060
490313147093
49033298066
49034149034
49035298070
49036149036
490374196148
49038298076
49039298078
49041298082
490433147129
49044149044
49045149045
49047149047
49048298096
49049149049
49050149050
49051149051
49052149052
49053149053
49054149054
49056149056
49061149061
49064298128
49065149065
49066149066
49067149067
49069298138
49070149070
49071149071
49072298144
49075149075
49076149076
49078298156
49079298158
49080149080
49081149081
49083298166
49084149084
49089298178
49090298180
49092298184
49093298186
49096298192
49098149098
49099298198
49100149100
49101298202
49104149104
49108149108
49111149111
49114149114
49117298234
49120149120
49230149230
65536100065536000
Total2002111487823
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
313
428
717
818
16116
20120
21121
31262
33133
383114
42142
43143
44144
47147
48148
49149
50150
51151
52152
532106
543162
563168
572114
582116
592118
61161
623186
64164
65165
663198
672134
69169
70170
71171
74174
75175
76176
77177
78178
792158
802160
81181
82182
83183
84184
88188
89189
91191
93193
953285
96196
99199
1013303
1021102
1042208
1073321
1081108
1131113
1161116
1171117
1201120
1242248
1271127
1311131
1321132
1352270
1362272
1391139
1401140
1411141
1451145
1481148
1501150
1521152
1532306
1562312
1591159
1631163
1652330
1691169
1701170
1711171
1723516
1742348
1761176
1792358
1811181
1821182
1841184
1861186
1911191
1931193
1952390
1961196
1972394
2011201
2042408
2061206
2072414
2142428
2192438
2211221
2221222
2253675
2283684
2301230
2322464
2341234
2362472
2374948
2401240
2412482
2421242
2471247
2501250
2511251
2522504
2551255
2561256
2571257
2581258
2622524
2631263
2653795
2662532
2671267
2681268
2691269
2721272
2733819
2741274
2772554
2821282
2832566
2841284
2852570
2861286
2881288
2891289
2902580
2941294
2962592
2971297
2991299
3011301
3023906
3041304
3051305
3061306
3071307
3082616
3101310
3133939
3151315
3181318
3191319
3201320
3221322
3231323
3241324
3283984
3311331
3321332
3332666
3351335
3361336
33731011
3382676
3391339
34031020
3411341
3421342
3432686
3471347
3481348
3491349
3512702
3521352
3531353
3541354
3561356
3572714
3581358
3601360
3621362
3631363
3641364
3671367
3681368
3691369
3702740
3712742
3731373
3751375
3761376
37831134
3791379
3802760
3812762
3822764
3832766
3851385
3871387
3902780
39331179
3942788
3951395
3962792
3972794
3992798
4001400
4011401
4021402
4031403
4041404
4052810
4062812
40841632
4091409
4112822
4131413
41431242
4151415
4162832
41731251
4181418
42031260
42141684
4222844
4242848
4261426
42731281
4281428
4291429
4301430
4312862
4322864
43331299
4342868
43531305
4361436
43741748
4391439
44152205
44241768
4432886
4442888
4451445
4461446
4471447
45041800
4511451
4531453
45431362
45541820
4561456
4571457
45931377
4601460
4611461
4641464
4652930
4702940
4711471
47231416
4731473
47431422
47531425
47631428
4772954
4781478
4792958
48231446
48331449
4841484
4852970
48641944
48731461
4881488
4892978
49031470
4912982
4932986
4942988
4962992
4971497
4981498
4992998
50021000
5021502
50521010
5061506
5071507
50921018
51021020
5121512
5131513
51421028
51521030
51621032
5171517
5181518
5211521
5241524
52621052
53021060
5351535
5361536
5371537
5411541
5451545
5471547
5491549
5521552
5541554
5571557
5611561
5631563
56421128
56721134
56921138
5721572
5751575
5761576
57921158
58021160
5821582
5831583
5851585
58721174
58821176
58921178
59121182
5921592
5941594
59531785
5961596
5971597
5981598
60321206
60421208
6061606
6071607
60821216
6101610
6121612
6131613
6141614
6151615
6171617
6181618
6191619
6211621
62231866
6261626
6311631
6321632
6331633
6341634
6361636
6381638
64021280
6411641
6421642
6431643
64421288
6461646
64731941
6481648
6491649
6511651
65421308
6561656
65721314
6591659
6601660
6621662
66421328
6671667
6681668
6691669
6711671
6721672
67332019
6761676
67732031
6781678
6791679
6811681
68332049
6841684
68532055
68621372
6871687
6881688
69021380
69121382
6921692
69432082
69542780
6961696
69821396
7011701
70232106
70421408
7051705
7061706
70821416
7101710
7121712
7161716
7171717
72021440
7251725
72721454
7301730
7311731
7331733
7341734
7361736
7371737
7401740
7461746
7471747
75121502
75232256
75321506
7551755
7561756
75721514
76021520
76121522
7631763
7671767
7741774
77921558
7801780
78421568
78721574
7891789
79021580
7911791
7931793
79521590
7961796
7981798
7991799
80021600
8021802
8031803
8041804
80521610
8061806
80732421
8111811
81221624
8161816
8221822
8231823
82621652
82732481
82821656
83021660
8321832
83643344
8381838
8391839
84032520
8411841
8421842
8431843
8441844
84521690
84621692
8491849
8511851
85221704
85365118
8541854
85621712
85721714
85821716
8591859
86143444
8631863
86432592
86621732
86832604
8691869
8701870
8711871
87232616
87332619
87443496
87554375
87632628
8771877
8781878
87943516
88054400
88121762
88243528
88365298
88421768
88754435
88854440
88932667
89132673
89221784
89343572
8941894
89521790
8961896
89721794
89832694
89954495
90021800
90121802
9021902
90332709
90432712
90543620
9061906
9071907
9091909
91032730
9111911
91243648
91321826
91421828
9151915
9161916
9171917
91843672
9191919
9211921
9231923
92643704
9271927
9281928
9291929
93032790
93121862
93221864
93321866
93443736
9351935
9371937
93821876
94043760
94143764
94232826
94321886
94543780
94621892
94921898
9501950
95132853
95221904
95443816
95521910
9561956
95721914
95821916
9601960
96143844
96221924
96332889
96621932
9671967
96832904
97021940
97121942
9731973
9761976
97921958
9811981
98221964
9831983
98543940
9861986
9891989
9901990
99221984
9941994
9951995
99721994
9991999
100311003
100411004
101011010
101211012
101822036
101911019
102111021
102311023
102511025
102611026
102722054
1028108310111342680
Total109312111910881
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
0108310
21000
81
Total109311
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333335266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88828d7cc3448e94
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3864376363333434
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_2_16.json b/autobahn/client/tungstenite_case_12_2_16.json new file mode 100644 index 0000000..abdd780 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_16.json @@ -0,0 +1,1559 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 335, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 12449, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=335&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dWTmpZY4wMy3W2wwqBWqWg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: GlZPyz80q1gTBlc5pq6msBvmQPc=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.2.16", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "42541": 1, + "42557": 1, + "42563": 1, + "42582": 1, + "42585": 1, + "42588": 1, + "42597": 2, + "42600": 1, + "42602": 2, + "42604": 1, + "42627": 1, + "42628": 1, + "42635": 1, + "42638": 1, + "42640": 1, + "42641": 2, + "42645": 1, + "42656": 1, + "42658": 1, + "42661": 1, + "42662": 1, + "42671": 1, + "42672": 1, + "42673": 1, + "42675": 1, + "42677": 2, + "42684": 1, + "42685": 1, + "42689": 1, + "42690": 1, + "42692": 1, + "42695": 1, + "42696": 1, + "42698": 2, + "42699": 1, + "42704": 1, + "42706": 1, + "42714": 1, + "42719": 1, + "42724": 1, + "42727": 1, + "42730": 1, + "42734": 1, + "42740": 1, + "42741": 1, + "42746": 1, + "42747": 2, + "42749": 1, + "42755": 2, + "42773": 1, + "42774": 1, + "42778": 1, + "42781": 1, + "42783": 1, + "42785": 1, + "42787": 1, + "42789": 2, + "42792": 1, + "42793": 1, + "42794": 2, + "42799": 1, + "42800": 1, + "42806": 1, + "42810": 1, + "42821": 2, + "42822": 1, + "42824": 2, + "42826": 1, + "42830": 2, + "42833": 1, + "42834": 2, + "42836": 1, + "42838": 1, + "42839": 2, + "42843": 1, + "42847": 3, + "42851": 2, + "42862": 2, + "42863": 1, + "42869": 1, + "42870": 1, + "42873": 2, + "42875": 1, + "42876": 2, + "42877": 1, + "42882": 2, + "42883": 1, + "42885": 1, + "42887": 1, + "42888": 1, + "42892": 2, + "42893": 1, + "42897": 1, + "42898": 3, + "42906": 2, + "42907": 1, + "42908": 1, + "42911": 1, + "42912": 2, + "42915": 1, + "42920": 2, + "42926": 1, + "42927": 1, + "42928": 1, + "42929": 1, + "42932": 1, + "42934": 2, + "42935": 1, + "42936": 2, + "42937": 1, + "42943": 1, + "42944": 1, + "42945": 1, + "42948": 2, + "42951": 1, + "42955": 2, + "42956": 1, + "42957": 1, + "42961": 1, + "42964": 1, + "42965": 1, + "42976": 1, + "42977": 1, + "42979": 3, + "42980": 1, + "42983": 1, + "42984": 1, + "42986": 1, + "42988": 1, + "42991": 2, + "42993": 1, + "42998": 1, + "43004": 1, + "43012": 1, + "43017": 1, + "43019": 1, + "43051": 2, + "43058": 1, + "43063": 1, + "43073": 1, + "43085": 1, + "43087": 1, + "43089": 1, + "43090": 1, + "43094": 1, + "43099": 2, + "43100": 1, + "43103": 1, + "43115": 1, + "43119": 1, + "43121": 1, + "43127": 2, + "43147": 1, + "43149": 1, + "43150": 1, + "43154": 1, + "43157": 1, + "43174": 1, + "43177": 1, + "43183": 1, + "43190": 2, + "43192": 2, + "43197": 1, + "43211": 1, + "43215": 2, + "43219": 1, + "43225": 1, + "43232": 2, + "43237": 1, + "43240": 1, + "43246": 1, + "43248": 1, + "43254": 1, + "43255": 1, + "43259": 1, + "43260": 1, + "43268": 1, + "43275": 1, + "43283": 2, + "43284": 1, + "43285": 1, + "43287": 1, + "43291": 1, + "43295": 1, + "43301": 1, + "43306": 1, + "43308": 1, + "43312": 1, + "43314": 1, + "43317": 1, + "43319": 1, + "43320": 3, + "43325": 1, + "43326": 2, + "43328": 1, + "43333": 1, + "43336": 1, + "43338": 1, + "43340": 1, + "43341": 1, + "43346": 1, + "43350": 1, + "43351": 2, + "43355": 1, + "43356": 2, + "43361": 1, + "43367": 1, + "43369": 2, + "43370": 1, + "43374": 1, + "43375": 1, + "43376": 1, + "43378": 1, + "43381": 1, + "43386": 1, + "43388": 2, + "43389": 1, + "43396": 1, + "43397": 1, + "43400": 1, + "43405": 1, + "43411": 1, + "43413": 1, + "43414": 2, + "43417": 1, + "43419": 1, + "43420": 1, + "43421": 1, + "43423": 1, + "43424": 2, + "43426": 2, + "43429": 1, + "43431": 1, + "43432": 1, + "43433": 1, + "43434": 2, + "43435": 1, + "43438": 1, + "43439": 1, + "43440": 2, + "43442": 1, + "43445": 1, + "43447": 1, + "43448": 1, + "43449": 1, + "43450": 2, + "43452": 1, + "43454": 1, + "43455": 1, + "43459": 3, + "43461": 1, + "43463": 1, + "43469": 1, + "43474": 1, + "43477": 2, + "43479": 1, + "43482": 1, + "43483": 1, + "43488": 1, + "43489": 1, + "43490": 3, + "43492": 1, + "43493": 1, + "43494": 2, + "43495": 2, + "43497": 2, + "43501": 2, + "43503": 2, + "43504": 2, + "43505": 2, + "43508": 2, + "43511": 1, + "43512": 1, + "43517": 1, + "43528": 1, + "43534": 1, + "43536": 1, + "43548": 1, + "43563": 1, + "43567": 1, + "43570": 1, + "43572": 1, + "43585": 2, + "43597": 2, + "43598": 1, + "43600": 1, + "43601": 1, + "43605": 2, + "43606": 1, + "43610": 1, + "43613": 1, + "43615": 1, + "43616": 1, + "43622": 1, + "43625": 1, + "43632": 1, + "43633": 1, + "43635": 1, + "43636": 1, + "43640": 1, + "43644": 1, + "43650": 1, + "43654": 1, + "43658": 1, + "43661": 1, + "43672": 1, + "43674": 1, + "43675": 1, + "43677": 1, + "43682": 1, + "43687": 1, + "43690": 1, + "43691": 1, + "43694": 1, + "43695": 1, + "43703": 1, + "43704": 2, + "43705": 1, + "43710": 1, + "43712": 1, + "43713": 3, + "43716": 1, + "43720": 1, + "43726": 1, + "43738": 1, + "43785": 1, + "43820": 1, + "43822": 1, + "43891": 1, + "43905": 1, + "43952": 1, + "43964": 1, + "43986": 1, + "44047": 1, + "44052": 1, + "44122": 1, + "44145": 1, + "44192": 1, + "44224": 1, + "44279": 1, + "44297": 1, + "44310": 1, + "44370": 1, + "44382": 1, + "44439": 1, + "44453": 1, + "44473": 1, + "44496": 1, + "44533": 1, + "44555": 1, + "44558": 1, + "44599": 1, + "44614": 1, + "44627": 1, + "44637": 1, + "44638": 1, + "44663": 1, + "44725": 1, + "44727": 1, + "44736": 1, + "44776": 1, + "44798": 1, + "44821": 1, + "44847": 1, + "44864": 1, + "44895": 1, + "44908": 1, + "44944": 1, + "44947": 1, + "44954": 1, + "44972": 1, + "45008": 1, + "45068": 1, + "45072": 1, + "45088": 1, + "45089": 1, + "45134": 1, + "45150": 1, + "45170": 1, + "45201": 1, + "45231": 1, + "45236": 1, + "45250": 1, + "45291": 2, + "45303": 1, + "45331": 1, + "45371": 1, + "45394": 1, + "45413": 1, + "45414": 1, + "45433": 1, + "45471": 1, + "45475": 1, + "45487": 1, + "45513": 1, + "45565": 1, + "45573": 1, + "45578": 1, + "45601": 1, + "45646": 1, + "45670": 1, + "45678": 1, + "45679": 1, + "45708": 1, + "45754": 1, + "45757": 1, + "45768": 1, + "45774": 1, + "45818": 1, + "45829": 1, + "45850": 1, + "45856": 1, + "45892": 1, + "45906": 1, + "45920": 1, + "45929": 1, + "45950": 1, + "45953": 1, + "45996": 2, + "46011": 1, + "46015": 1, + "46051": 1, + "46061": 1, + "46084": 1, + "46093": 1, + "46108": 1, + "46130": 1, + "46136": 1, + "46144": 1, + "46163": 1, + "46188": 1, + "46208": 1, + "46216": 1, + "46235": 1, + "46261": 1, + "46266": 1, + "46294": 1, + "46309": 1, + "46322": 1, + "46326": 1, + "46372": 1, + "46374": 1, + "46375": 1, + "46409": 1, + "46430": 1, + "46431": 1, + "46447": 1, + "46480": 1, + "46510": 1, + "46511": 1, + "46532": 1, + "46550": 1, + "46573": 1, + "46574": 1, + "46580": 1, + "46627": 1, + "46651": 1, + "46659": 1, + "46666": 1, + "46685": 1, + "46712": 1, + "46737": 1, + "46739": 1, + "46744": 1, + "46775": 1, + "46796": 1, + "46817": 1, + "46827": 1, + "46847": 1, + "46850": 1, + "46864": 1, + "46886": 1, + "46897": 1, + "46916": 1, + "46926": 1, + "46943": 1, + "46954": 1, + "46964": 1, + "47000": 1, + "47008": 1, + "47009": 1, + "47046": 1, + "47047": 1, + "47058": 1, + "47061": 1, + "47082": 1, + "47093": 1, + "47102": 1, + "47111": 1, + "47149": 1, + "47163": 1, + "47200": 1, + "47220": 1, + "47223": 1, + "47262": 1, + "47320": 1, + "47351": 1, + "47366": 1, + "47387": 1, + "47427": 1, + "47467": 1, + "47497": 1, + "47528": 1, + "47558": 1, + "47600": 1, + "47629": 1, + "47635": 1, + "47678": 1, + "47703": 1, + "47762": 1, + "47771": 1, + "47785": 1, + "47830": 1, + "47865": 1, + "47921": 1, + "47937": 1, + "47986": 2, + "47994": 1, + "48055": 1, + "48059": 1, + "48082": 1, + "48095": 1, + "48133": 1, + "48141": 1, + "48147": 1, + "48178": 1, + "48182": 1, + "48188": 1, + "48189": 1, + "48190": 1, + "48191": 1, + "48193": 1, + "48194": 3, + "48196": 3, + "48197": 2, + "48198": 2, + "48199": 2, + "48201": 1, + "48202": 3, + "48204": 1, + "48206": 1, + "48207": 1, + "48215": 1, + "48216": 1, + "48217": 1, + "48220": 1, + "48221": 1, + "48228": 1, + "48229": 1, + "48231": 1, + "48233": 1, + "48235": 2, + "48241": 1, + "48244": 1, + "48248": 1, + "48253": 1, + "48257": 1, + "48260": 1, + "48264": 1, + "48273": 1, + "48274": 1, + "48278": 1, + "48279": 1, + "48290": 1, + "48291": 2, + "48294": 1, + "48301": 1, + "48307": 1, + "48310": 1, + "48317": 1, + "48319": 1, + "48324": 1, + "48329": 1, + "48333": 2, + "48334": 1, + "48342": 1, + "48345": 1, + "48359": 1, + "48363": 1, + "48366": 2, + "48370": 1, + "48372": 1, + "48378": 1, + "48379": 1, + "48385": 1, + "48389": 1, + "48394": 1, + "48396": 1, + "48400": 2, + "48401": 1, + "48404": 1, + "48410": 1, + "48411": 1, + "48412": 1, + "48415": 1, + "48421": 1, + "48423": 1, + "48424": 1, + "48427": 1, + "48428": 1, + "48434": 1, + "48435": 1, + "48442": 1, + "48444": 1, + "48451": 2, + "48462": 1, + "48469": 1, + "48473": 1, + "48474": 1, + "48475": 2, + "48477": 1, + "48478": 1, + "48480": 1, + "48481": 1, + "48492": 1, + "48500": 1, + "48502": 1, + "48507": 1, + "48509": 1, + "48511": 1, + "48513": 1, + "48514": 1, + "48516": 2, + "48518": 2, + "48519": 2, + "48520": 1, + "48521": 1, + "48523": 1, + "48528": 1, + "48531": 2, + "48532": 2, + "48535": 1, + "48537": 1, + "48538": 1, + "48542": 1, + "48546": 2, + "48552": 1, + "48555": 2, + "48556": 1, + "48558": 1, + "48559": 1, + "48562": 1, + "48564": 1, + "48565": 2, + "48566": 1, + "48570": 1, + "48571": 3, + "48572": 1, + "48573": 3, + "48575": 2, + "48577": 1, + "48579": 2, + "48580": 3, + "48581": 1, + "48582": 1, + "48584": 1, + "48588": 4, + "48591": 1, + "48592": 2, + "48593": 4, + "48595": 1, + "48597": 1, + "48603": 1, + "48608": 1, + "48611": 1, + "48612": 2, + "48613": 2, + "48614": 1, + "48616": 1, + "48620": 3, + "48624": 1, + "48625": 1, + "48626": 1, + "48627": 2, + "48629": 1, + "48631": 1, + "48632": 1, + "48634": 2, + "48635": 1, + "48636": 1, + "48638": 2, + "48640": 1, + "48643": 2, + "48644": 1, + "48647": 2, + "48648": 1, + "48652": 2, + "48653": 1, + "48655": 1, + "48662": 1, + "48664": 2, + "48668": 1, + "48674": 1, + "48679": 1, + "48702": 1, + "48713": 1, + "48727": 1, + "48729": 1, + "48757": 1, + "48760": 1, + "48769": 1, + "48776": 1, + "48778": 1, + "48782": 1, + "48798": 1, + "48811": 2, + "48815": 1, + "48822": 1, + "48828": 1, + "48832": 1, + "48855": 1, + "48865": 1, + "48869": 1, + "48889": 1, + "48890": 1, + "48895": 1, + "48898": 1, + "48925": 1, + "48928": 1, + "48941": 1, + "48945": 1, + "48949": 1, + "48950": 1, + "48965": 1, + "48966": 1, + "48974": 1, + "48976": 1, + "48979": 1, + "48981": 1, + "48984": 2, + "48989": 1, + "48990": 2, + "48991": 1, + "48994": 2, + "48996": 2, + "48997": 1, + "48999": 4, + "49002": 2, + "49004": 1, + "49006": 1, + "49008": 1, + "49009": 1, + "49010": 1, + "49011": 2, + "49012": 3, + "49013": 4, + "49014": 2, + "49015": 1, + "49016": 1, + "49017": 2, + "49018": 4, + "49019": 1, + "49020": 2, + "49021": 5, + "49022": 1, + "49025": 3, + "49026": 3, + "49027": 2, + "49029": 2, + "49030": 2, + "49031": 3, + "49033": 2, + "49034": 1, + "49035": 2, + "49036": 1, + "49037": 4, + "49038": 2, + "49039": 2, + "49041": 2, + "49043": 3, + "49044": 1, + "49045": 1, + "49047": 1, + "49048": 2, + "49049": 1, + "49050": 1, + "49051": 1, + "49052": 1, + "49053": 1, + "49054": 1, + "49056": 1, + "49061": 1, + "49064": 2, + "49065": 1, + "49066": 1, + "49067": 1, + "49069": 2, + "49070": 1, + "49071": 1, + "49072": 2, + "49075": 1, + "49076": 1, + "49078": 2, + "49079": 2, + "49080": 1, + "49081": 1, + "49083": 2, + "49084": 1, + "49089": 2, + "49090": 2, + "49092": 2, + "49093": 2, + "49096": 2, + "49098": 1, + "49099": 2, + "49100": 1, + "49101": 2, + "49104": 1, + "49108": 1, + "49111": 1, + "49114": 1, + "49117": 2, + "49120": 1, + "49230": 1, + "65536": 1000 + }, + "started": "2020-09-07T18:45:59.723Z", + "trafficStats": { + "incomingCompressionRatio": 0.8504757537841797, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 111473558, + "incomingOctetsWireLevel": 111487558, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.00012559032160792787, + "outgoingCompressionRatio": 0.8504757919311523, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 111473563, + "outgoingOctetsWireLevel": 111910625, + "outgoingWebSocketFrames": 109310, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.003920768191467963, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 108310, + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "3": 1, + "4": 2, + "7": 1, + "8": 1, + "16": 1, + "20": 1, + "21": 1, + "31": 2, + "33": 1, + "38": 3, + "42": 1, + "43": 1, + "44": 1, + "47": 1, + "48": 1, + "49": 1, + "50": 1, + "51": 1, + "52": 1, + "53": 2, + "54": 3, + "56": 3, + "57": 2, + "58": 2, + "59": 2, + "61": 1, + "62": 3, + "64": 1, + "65": 1, + "66": 3, + "67": 2, + "69": 1, + "70": 1, + "71": 1, + "74": 1, + "75": 1, + "76": 1, + "77": 1, + "78": 1, + "79": 2, + "80": 2, + "81": 1, + "82": 1, + "83": 1, + "84": 1, + "88": 1, + "89": 1, + "91": 1, + "93": 1, + "95": 3, + "96": 1, + "99": 1, + "101": 3, + "102": 1, + "104": 2, + "107": 3, + "108": 1, + "113": 1, + "116": 1, + "117": 1, + "120": 1, + "124": 2, + "127": 1, + "131": 1, + "132": 1, + "135": 2, + "136": 2, + "139": 1, + "140": 1, + "141": 1, + "145": 1, + "148": 1, + "150": 1, + "152": 1, + "153": 2, + "156": 2, + "159": 1, + "163": 1, + "165": 2, + "169": 1, + "170": 1, + "171": 1, + "172": 3, + "174": 2, + "176": 1, + "179": 2, + "181": 1, + "182": 1, + "184": 1, + "186": 1, + "191": 1, + "193": 1, + "195": 2, + "196": 1, + "197": 2, + "201": 1, + "204": 2, + "206": 1, + "207": 2, + "214": 2, + "219": 2, + "221": 1, + "222": 1, + "225": 3, + "228": 3, + "230": 1, + "232": 2, + "234": 1, + "236": 2, + "237": 4, + "240": 1, + "241": 2, + "242": 1, + "247": 1, + "250": 1, + "251": 1, + "252": 2, + "255": 1, + "256": 1, + "257": 1, + "258": 1, + "262": 2, + "263": 1, + "265": 3, + "266": 2, + "267": 1, + "268": 1, + "269": 1, + "272": 1, + "273": 3, + "274": 1, + "277": 2, + "282": 1, + "283": 2, + "284": 1, + "285": 2, + "286": 1, + "288": 1, + "289": 1, + "290": 2, + "294": 1, + "296": 2, + "297": 1, + "299": 1, + "301": 1, + "302": 3, + "304": 1, + "305": 1, + "306": 1, + "307": 1, + "308": 2, + "310": 1, + "313": 3, + "315": 1, + "318": 1, + "319": 1, + "320": 1, + "322": 1, + "323": 1, + "324": 1, + "328": 3, + "331": 1, + "332": 1, + "333": 2, + "335": 1, + "336": 1, + "337": 3, + "338": 2, + "339": 1, + "340": 3, + "341": 1, + "342": 1, + "343": 2, + "347": 1, + "348": 1, + "349": 1, + "351": 2, + "352": 1, + "353": 1, + "354": 1, + "356": 1, + "357": 2, + "358": 1, + "360": 1, + "362": 1, + "363": 1, + "364": 1, + "367": 1, + "368": 1, + "369": 1, + "370": 2, + "371": 2, + "373": 1, + "375": 1, + "376": 1, + "378": 3, + "379": 1, + "380": 2, + "381": 2, + "382": 2, + "383": 2, + "385": 1, + "387": 1, + "390": 2, + "393": 3, + "394": 2, + "395": 1, + "396": 2, + "397": 2, + "399": 2, + "400": 1, + "401": 1, + "402": 1, + "403": 1, + "404": 1, + "405": 2, + "406": 2, + "408": 4, + "409": 1, + "411": 2, + "413": 1, + "414": 3, + "415": 1, + "416": 2, + "417": 3, + "418": 1, + "420": 3, + "421": 4, + "422": 2, + "424": 2, + "426": 1, + "427": 3, + "428": 1, + "429": 1, + "430": 1, + "431": 2, + "432": 2, + "433": 3, + "434": 2, + "435": 3, + "436": 1, + "437": 4, + "439": 1, + "441": 5, + "442": 4, + "443": 2, + "444": 2, + "445": 1, + "446": 1, + "447": 1, + "450": 4, + "451": 1, + "453": 1, + "454": 3, + "455": 4, + "456": 1, + "457": 1, + "459": 3, + "460": 1, + "461": 1, + "464": 1, + "465": 2, + "470": 2, + "471": 1, + "472": 3, + "473": 1, + "474": 3, + "475": 3, + "476": 3, + "477": 2, + "478": 1, + "479": 2, + "482": 3, + "483": 3, + "484": 1, + "485": 2, + "486": 4, + "487": 3, + "488": 1, + "489": 2, + "490": 3, + "491": 2, + "493": 2, + "494": 2, + "496": 2, + "497": 1, + "498": 1, + "499": 2, + "500": 2, + "502": 1, + "505": 2, + "506": 1, + "507": 1, + "509": 2, + "510": 2, + "512": 1, + "513": 1, + "514": 2, + "515": 2, + "516": 2, + "517": 1, + "518": 1, + "521": 1, + "524": 1, + "526": 2, + "530": 2, + "535": 1, + "536": 1, + "537": 1, + "541": 1, + "545": 1, + "547": 1, + "549": 1, + "552": 1, + "554": 1, + "557": 1, + "561": 1, + "563": 1, + "564": 2, + "567": 2, + "569": 2, + "572": 1, + "575": 1, + "576": 1, + "579": 2, + "580": 2, + "582": 1, + "583": 1, + "585": 1, + "587": 2, + "588": 2, + "589": 2, + "591": 2, + "592": 1, + "594": 1, + "595": 3, + "596": 1, + "597": 1, + "598": 1, + "603": 2, + "604": 2, + "606": 1, + "607": 1, + "608": 2, + "610": 1, + "612": 1, + "613": 1, + "614": 1, + "615": 1, + "617": 1, + "618": 1, + "619": 1, + "621": 1, + "622": 3, + "626": 1, + "631": 1, + "632": 1, + "633": 1, + "634": 1, + "636": 1, + "638": 1, + "640": 2, + "641": 1, + "642": 1, + "643": 1, + "644": 2, + "646": 1, + "647": 3, + "648": 1, + "649": 1, + "651": 1, + "654": 2, + "656": 1, + "657": 2, + "659": 1, + "660": 1, + "662": 1, + "664": 2, + "667": 1, + "668": 1, + "669": 1, + "671": 1, + "672": 1, + "673": 3, + "676": 1, + "677": 3, + "678": 1, + "679": 1, + "681": 1, + "683": 3, + "684": 1, + "685": 3, + "686": 2, + "687": 1, + "688": 1, + "690": 2, + "691": 2, + "692": 1, + "694": 3, + "695": 4, + "696": 1, + "698": 2, + "701": 1, + "702": 3, + "704": 2, + "705": 1, + "706": 1, + "708": 2, + "710": 1, + "712": 1, + "716": 1, + "717": 1, + "720": 2, + "725": 1, + "727": 2, + "730": 1, + "731": 1, + "733": 1, + "734": 1, + "736": 1, + "737": 1, + "740": 1, + "746": 1, + "747": 1, + "751": 2, + "752": 3, + "753": 2, + "755": 1, + "756": 1, + "757": 2, + "760": 2, + "761": 2, + "763": 1, + "767": 1, + "774": 1, + "779": 2, + "780": 1, + "784": 2, + "787": 2, + "789": 1, + "790": 2, + "791": 1, + "793": 1, + "795": 2, + "796": 1, + "798": 1, + "799": 1, + "800": 2, + "802": 1, + "803": 1, + "804": 1, + "805": 2, + "806": 1, + "807": 3, + "811": 1, + "812": 2, + "816": 1, + "822": 1, + "823": 1, + "826": 2, + "827": 3, + "828": 2, + "830": 2, + "832": 1, + "836": 4, + "838": 1, + "839": 1, + "840": 3, + "841": 1, + "842": 1, + "843": 1, + "844": 1, + "845": 2, + "846": 2, + "849": 1, + "851": 1, + "852": 2, + "853": 6, + "854": 1, + "856": 2, + "857": 2, + "858": 2, + "859": 1, + "861": 4, + "863": 1, + "864": 3, + "866": 2, + "868": 3, + "869": 1, + "870": 1, + "871": 1, + "872": 3, + "873": 3, + "874": 4, + "875": 5, + "876": 3, + "877": 1, + "878": 1, + "879": 4, + "880": 5, + "881": 2, + "882": 4, + "883": 6, + "884": 2, + "887": 5, + "888": 5, + "889": 3, + "891": 3, + "892": 2, + "893": 4, + "894": 1, + "895": 2, + "896": 1, + "897": 2, + "898": 3, + "899": 5, + "900": 2, + "901": 2, + "902": 1, + "903": 3, + "904": 3, + "905": 4, + "906": 1, + "907": 1, + "909": 1, + "910": 3, + "911": 1, + "912": 4, + "913": 2, + "914": 2, + "915": 1, + "916": 1, + "917": 1, + "918": 4, + "919": 1, + "921": 1, + "923": 1, + "926": 4, + "927": 1, + "928": 1, + "929": 1, + "930": 3, + "931": 2, + "932": 2, + "933": 2, + "934": 4, + "935": 1, + "937": 1, + "938": 2, + "940": 4, + "941": 4, + "942": 3, + "943": 2, + "945": 4, + "946": 2, + "949": 2, + "950": 1, + "951": 3, + "952": 2, + "954": 4, + "955": 2, + "956": 1, + "957": 2, + "958": 2, + "960": 1, + "961": 4, + "962": 2, + "963": 3, + "966": 2, + "967": 1, + "968": 3, + "970": 2, + "971": 2, + "973": 1, + "976": 1, + "979": 2, + "981": 1, + "982": 2, + "983": 1, + "985": 4, + "986": 1, + "989": 1, + "990": 1, + "992": 2, + "994": 1, + "995": 1, + "997": 2, + "999": 1, + "1003": 1, + "1004": 1, + "1010": 1, + "1012": 1, + "1018": 2, + "1019": 1, + "1021": 1, + "1023": 1, + "1025": 1, + "1026": 1, + "1027": 2, + "1028": 108310 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333335266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88828d7cc3448e94" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "8d7cc344" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_2_17.html b/autobahn/client/tungstenite_case_12_2_17.html new file mode 100644 index 0000000..2e28a97 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_17.html @@ -0,0 +1,1901 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.2.17 : Pass - 12002 ms @ 2020-09-07T18:46:12.173Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=336&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: zRLE3ORFP6mWsBFWj9cKMA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: OlSYLAK3vMMhqxWRYsX8V6g6SAU=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
42541142541
42557142557
42563142563
42582142582
42585142585
42588142588
42597285194
42600142600
42602285204
42604142604
42627142627
42628142628
42635142635
42638142638
42640142640
42641285282
42645142645
42656142656
42658142658
42661142661
42662142662
42671142671
42672142672
42673142673
42675142675
42677285354
42684142684
42685142685
42689142689
42690142690
42692142692
42695142695
42696142696
42698285396
42699142699
42704142704
42706142706
42714142714
42719142719
42724142724
42727142727
42730142730
42734142734
42740142740
42741142741
42746142746
42747285494
42749142749
42755285510
42773142773
42774142774
42778142778
42781142781
42783142783
42785142785
42787142787
42789285578
42792142792
42793142793
42794285588
42799142799
42800142800
42806142806
42810142810
42821285642
42822142822
42824285648
42826142826
42830285660
42833142833
42834285668
42836142836
42838142838
42839285678
42843142843
428473128541
42851285702
42862285724
42863142863
42869142869
42870142870
42873285746
42875142875
42876285752
42877142877
42882285764
42883142883
42885142885
42887142887
42888142888
42892285784
42893142893
42897142897
428983128694
42906285812
42907142907
42908142908
42911142911
42912285824
42915142915
42920285840
42926142926
42927142927
42928142928
42929142929
42932142932
42934285868
42935142935
42936285872
42937142937
42943142943
42944142944
42945142945
42948285896
42951142951
42955285910
42956142956
42957142957
42961142961
42964142964
42965142965
42976142976
42977142977
429793128937
42980142980
42983142983
42984142984
42986142986
42988142988
42991285982
42993142993
42998142998
43004143004
43012143012
43017143017
43019143019
43051286102
43058143058
43063143063
43073143073
43085143085
43087143087
43089143089
43090143090
43094143094
43099286198
43100143100
43103143103
43115143115
43119143119
43121143121
43127286254
43147143147
43149143149
43150143150
43154143154
43157143157
43174143174
43177143177
43183143183
43190286380
43192286384
43197143197
43211143211
43215286430
43219143219
43225143225
43232286464
43237143237
43240143240
43246143246
43248143248
43254143254
43255143255
43259143259
43260143260
43268143268
43275143275
43283286566
43284143284
43285143285
43287143287
43291143291
43295143295
43301143301
43306143306
43308143308
43312143312
43314143314
43317143317
43319143319
433203129960
43325143325
43326286652
43328143328
43333143333
43336143336
43338143338
43340143340
43341143341
43346143346
43350143350
43351286702
43355143355
43356286712
43361143361
43367143367
43369286738
43370143370
43374143374
43375143375
43376143376
43378143378
43381143381
43386143386
43388286776
43389143389
43396143396
43397143397
43400143400
43405143405
43411143411
43413143413
43414286828
43417143417
43419143419
43420143420
43421143421
43423143423
43424286848
43426286852
43429143429
43431143431
43432143432
43433143433
43434286868
43435143435
43438143438
43439143439
43440286880
43442143442
43445143445
43447143447
43448143448
43449143449
43450286900
43452143452
43454143454
43455143455
434593130377
43461143461
43463143463
43469143469
43474143474
43477286954
43479143479
43482143482
43483143483
43488143488
43489143489
434903130470
43492143492
43493143493
43494286988
43495286990
43497286994
43501287002
43503287006
43504287008
43505287010
43508287016
43511143511
43512143512
43517143517
43528143528
43534143534
43536143536
43548143548
43563143563
43567143567
43570143570
43572143572
43585287170
43597287194
43598143598
43600143600
43601143601
43605287210
43606143606
43610143610
43613143613
43615143615
43616143616
43622143622
43625143625
43632143632
43633143633
43635143635
43636143636
43640143640
43644143644
43650143650
43654143654
43658143658
43661143661
43672143672
43674143674
43675143675
43677143677
43682143682
43687143687
43690143690
43691143691
43694143694
43695143695
43703143703
43704287408
43705143705
43710143710
43712143712
437133131139
43716143716
43720143720
43726143726
43738143738
43785143785
43820143820
43822143822
43891143891
43905143905
43952143952
43964143964
43986143986
44047144047
44052144052
44122144122
44145144145
44192144192
44224144224
44279144279
44297144297
44310144310
44370144370
44382144382
44439144439
44453144453
44473144473
44496144496
44533144533
44555144555
44558144558
44599144599
44614144614
44627144627
44637144637
44638144638
44663144663
44725144725
44727144727
44736144736
44776144776
44798144798
44821144821
44847144847
44864144864
44895144895
44908144908
44944144944
44947144947
44954144954
44972144972
45008145008
45068145068
45072145072
45088145088
45089145089
45134145134
45150145150
45170145170
45201145201
45231145231
45236145236
45250145250
45291290582
45303145303
45331145331
45371145371
45394145394
45413145413
45414145414
45433145433
45471145471
45475145475
45487145487
45513145513
45565145565
45573145573
45578145578
45601145601
45646145646
45670145670
45678145678
45679145679
45708145708
45754145754
45757145757
45768145768
45774145774
45818145818
45829145829
45850145850
45856145856
45892145892
45906145906
45920145920
45929145929
45950145950
45953145953
45996291992
46011146011
46015146015
46051146051
46061146061
46084146084
46093146093
46108146108
46130146130
46136146136
46144146144
46163146163
46188146188
46208146208
46216146216
46235146235
46261146261
46266146266
46294146294
46309146309
46322146322
46326146326
46372146372
46374146374
46375146375
46409146409
46430146430
46431146431
46447146447
46480146480
46510146510
46511146511
46532146532
46550146550
46573146573
46574146574
46580146580
46627146627
46651146651
46659146659
46666146666
46685146685
46712146712
46737146737
46739146739
46744146744
46775146775
46796146796
46817146817
46827146827
46847146847
46850146850
46864146864
46886146886
46897146897
46916146916
46926146926
46943146943
46954146954
46964146964
47000147000
47008147008
47009147009
47046147046
47047147047
47058147058
47061147061
47082147082
47093147093
47102147102
47111147111
47149147149
47163147163
47200147200
47220147220
47223147223
47262147262
47320147320
47351147351
47366147366
47387147387
47427147427
47467147467
47497147497
47528147528
47558147558
47600147600
47629147629
47635147635
47678147678
47703147703
47762147762
47771147771
47785147785
47830147830
47865147865
47921147921
47937147937
47986295972
47994147994
48055148055
48059148059
48082148082
48095148095
48133148133
48141148141
48147148147
48178148178
48182148182
48188148188
48189148189
48190148190
48191148191
48193148193
481943144582
481963144588
48197296394
48198296396
48199296398
48201148201
482023144606
48204148204
48206148206
48207148207
48215148215
48216148216
48217148217
48220148220
48221148221
48228148228
48229148229
48231148231
48233148233
48235296470
48241148241
48244148244
48248148248
48253148253
48257148257
48260148260
48264148264
48273148273
48274148274
48278148278
48279148279
48290148290
48291296582
48294148294
48301148301
48307148307
48310148310
48317148317
48319148319
48324148324
48329148329
48333296666
48334148334
48342148342
48345148345
48359148359
48363148363
48366296732
48370148370
48372148372
48378148378
48379148379
48385148385
48389148389
48394148394
48396148396
48400296800
48401148401
48404148404
48410148410
48411148411
48412148412
48415148415
48421148421
48423148423
48424148424
48427148427
48428148428
48434148434
48435148435
48442148442
48444148444
48451296902
48462148462
48469148469
48473148473
48474148474
48475296950
48477148477
48478148478
48480148480
48481148481
48492148492
48500148500
48502148502
48507148507
48509148509
48511148511
48513148513
48514148514
48516297032
48518297036
48519297038
48520148520
48521148521
48523148523
48528148528
48531297062
48532297064
48535148535
48537148537
48538148538
48542148542
48546297092
48552148552
48555297110
48556148556
48558148558
48559148559
48562148562
48564148564
48565297130
48566148566
48570148570
485713145713
48572148572
485733145719
48575297150
48577148577
48579297158
485803145740
48581148581
48582148582
48584148584
485884194352
48591148591
48592297184
485934194372
48595148595
48597148597
48603148603
48608148608
48611148611
48612297224
48613297226
48614148614
48616148616
486203145860
48624148624
48625148625
48626148626
48627297254
48629148629
48631148631
48632148632
48634297268
48635148635
48636148636
48638297276
48640148640
48643297286
48644148644
48647297294
48648148648
48652297304
48653148653
48655148655
48662148662
48664297328
48668148668
48674148674
48679148679
48702148702
48713148713
48727148727
48729148729
48757148757
48760148760
48769148769
48776148776
48778148778
48782148782
48798148798
48811297622
48815148815
48822148822
48828148828
48832148832
48855148855
48865148865
48869148869
48889148889
48890148890
48895148895
48898148898
48925148925
48928148928
48941148941
48945148945
48949148949
48950148950
48965148965
48966148966
48974148974
48976148976
48979148979
48981148981
48984297968
48989148989
48990297980
48991148991
48994297988
48996297992
48997148997
489994195996
49002298004
49004149004
49006149006
49008149008
49009149009
49010149010
49011298022
490123147036
490134196052
49014298028
49015149015
49016149016
49017298034
490184196072
49019149019
49020298040
490215245105
49022149022
490253147075
490263147078
49027298054
49029298058
49030298060
490313147093
49033298066
49034149034
49035298070
49036149036
490374196148
49038298076
49039298078
49041298082
490433147129
49044149044
49045149045
49047149047
49048298096
49049149049
49050149050
49051149051
49052149052
49053149053
49054149054
49056149056
49061149061
49064298128
49065149065
49066149066
49067149067
49069298138
49070149070
49071149071
49072298144
49075149075
49076149076
49078298156
49079298158
49080149080
49081149081
49083298166
49084149084
49089298178
49090298180
49092298184
49093298186
49096298192
49098149098
49099298198
49100149100
49101298202
49104149104
49108149108
49111149111
49114149114
49117298234
49120149120
49230149230
65536100065536000
Total2002111487823
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
428
20120
21121
662132
82182
1021102
1351135
1651165
1701170
1841184
2252450
2371237
2521252
2651265
3051305
3281328
3471347
3481348
3671367
4051405
4091409
4211421
4471447
4991499
5071507
5121512
5351535
5801580
6041604
6121612
6131613
6421642
6881688
6911691
7021702
7081708
7521752
7631763
7841784
7901790
8261826
8401840
8541854
8631863
8841884
8871887
93021860
9451945
9491949
9851985
9951995
101811018
102711027
104211042
106411064
107011070
107811078
109711097
112211122
114211142
115011150
116911169
119511195
120011200
122811228
124311243
125611256
126011260
130611306
130811308
130911309
134311343
136411364
136511365
138111381
141411414
144411444
144511445
146611466
148411484
150711507
150811508
151411514
156111561
157111571
158511585
158711587
159323186
160011600
161211612
161511615
161811618
161911619
162723254
163011630
163223264
163411634
164611646
165711657
165811658
166511665
166811668
167011670
167135013
167311673
167511675
167811678
168611686
168811688
169111691
169211692
170111701
170211702
170311703
170511705
170723414
170911709
171411714
171511715
171911719
172011720
172211722
172511725
172611726
172823456
172911729
173011730
173411734
173611736
174411744
174911749
175111751
175411754
175711757
176011760
176111761
176411764
177011770
177111771
177611776
177723554
177911779
178111781
178411784
178523570
179811798
180311803
180411804
180811808
181111811
181311813
181511815
181711817
181923638
182011820
182211822
182311823
182423648
182911829
183011830
183111831
183611836
184011840
185011850
185123702
185211852
185423708
185611856
186035580
186311863
186423728
186611866
186811868
186923738
187311873
187747508
188123762
188811888
189223784
189311893
189811898
189911899
190011900
190323806
190511905
190623812
190711907
191223824
191311913
191511915
191711917
191811918
192223844
192311923
192711927
192835784
193411934
193623872
193711937
193811938
194111941
194235826
194311943
194511945
195023900
195611956
195711957
195811958
195911959
196211962
196423928
196511965
196623932
196711967
197311973
197411974
197511975
197823956
198011980
198123962
198523970
198611986
198711987
199111991
199211992
199411994
199523990
200612006
200712007
200936027
201012010
201312013
201412014
201624032
201812018
202124042
202312023
202712027
202812028
203412034
203612036
204212042
204512045
204712047
204912049
208124162
208312083
208812088
209312093
209712097
210312103
211512115
211712117
211912119
212012120
212412124
212924258
213012130
213312133
213412134
214512145
214912149
215112151
215412154
215736471
217712177
217912179
218012180
218412184
218712187
219612196
220412204
220712207
221312213
222024440
222224444
222712227
224112241
224524490
224912249
225412254
225512255
226224524
226712267
227012270
227612276
227812278
228412284
228524570
228912289
229012290
229812298
230012300
230512305
231324626
231412314
231512315
231712317
232124642
232512325
233112331
233612336
233812338
234212342
234412344
234712347
234912349
235037050
235512355
235624712
235812358
236112361
236312363
236612366
236812368
237012370
237112371
237612376
238012380
238124762
238512385
238624772
239112391
239712397
239924798
240012400
240112401
240412404
240512405
240612406
240812408
241112411
241612416
241824836
241912419
242612426
242712427
243012430
243112431
243512435
244112441
244312443
244424888
244712447
244912449
245012450
245112451
245312453
245424908
245624912
245912459
246112461
246224924
246312463
246424928
246512465
246812468
246912469
247024940
247212472
247512475
247712477
247812478
247912479
248012480
248212482
248412484
248524970
248937467
249112491
249212492
249312493
249912499
250412504
250725014
250912509
251212512
251312513
251812518
251912519
252037560
252212522
252312523
252425048
252525050
252725054
253125062
253325066
253437602
253525070
253825076
254112541
254212542
254712547
255812558
256312563
256412564
256612566
256912569
257812578
259312593
259712597
260012600
260212602
261212612
261525230
262725254
262812628
263012630
263112631
263525270
263612636
263712637
264012640
264312643
264512645
264612646
265212652
265512655
266212662
266312663
266512665
266612666
267012670
267412674
268012680
268412684
268812688
269112691
269612696
270212702
270412704
270525410
270712707
271212712
271712717
271912719
272012720
272112721
272412724
272512725
273312733
273425468
273512735
274012740
274212742
274338229
274612746
275012750
275612756
276412764
276812768
279912799
281512815
285012850
285212852
285512855
287112871
292025840
292112921
292812928
293512935
298212982
298912989
299312993
299412994
301626032
302913029
306713067
307513075
307713077
308113081
308213082
311213112
311613116
312213122
312313123
312413124
312513125
312713127
312839384
313039390
313126262
313226264
313326266
313513135
313639408
313813138
314013140
314113141
314913149
315013150
315113151
315213152
315413154
315513155
316213162
316313163
316513165
316713167
316926338
317526350
317813178
318213182
318713187
319113191
319413194
319813198
320713207
320813208
321213212
321313213
322213222
322413224
322526450
322813228
323513235
324113241
324413244
325113251
325313253
325413254
325813258
326313263
326726534
326813268
327613276
327913279
329313293
329713297
330026600
330413304
330613306
330913309
331213312
331313313
331913319
332313323
332713327
332813328
333013330
333426668
333513335
333813338
334013340
334413344
334513345
334613346
334913349
335513355
335713357
335813358
336113361
336213362
336813368
336913369
337613376
337813378
338526770
339613396
340013400
340313403
340713407
340813408
340926818
341113411
341226824
341413414
341513415
342613426
343413434
343613436
344113441
344313443
344513445
344713447
344813448
345026900
345226904
345326906
345413454
345513455
345713457
346213462
346526930
346626932
346926938
347113471
347213472
347613476
348026960
348313483
348613486
348926978
349013490
349213492
349313493
349613496
349813498
349926998
350013500
350313503
350413504
3505310515
350613506
3507310521
350927018
351113511
351327026
3514310542
351513515
351613516
351813518
3522414088
352513525
3526310578
3527414108
352913529
353113531
353713537
354213542
354513545
354627092
354727094
354813548
355013550
3554310662
355813558
355913559
356013560
356127122
356327126
356513565
356613566
356827136
356913569
357013570
357227144
357413574
357727154
357813578
358127162
358213582
358513585
358627172
358713587
358813588
358913589
359613596
359827196
360213602
360813608
361313613
362913629
363613636
364413644
364713647
365713657
366113661
366313663
366713667
366813668
369113691
369313693
369413694
370313703
371013710
371213712
371613716
373213732
374527490
374913749
375513755
375613756
375713757
376213762
376627532
378913789
379913799
380313803
380613806
382313823
382413824
382813828
382913829
383213832
385113851
385913859
386213862
387513875
387713877
387913879
388313883
388413884
389413894
389913899
390013900
390813908
391013910
391313913
391513915
391827836
392313923
392427848
392527850
392827856
393027860
393113931
3933415732
393627872
393827876
394013940
394213942
394313943
394413944
394527890
3946311838
3947415788
394827896
394913949
395013950
395127902
3952415808
395313953
395427908
3955519775
395613956
3959311877
3960311880
396127922
396327926
396427928
3965311895
396727934
396813968
396927938
397013970
3971415884
397227944
397327946
397413974
397527950
3977415908
397813978
397913979
398113981
398227964
398313983
398427968
398513985
398613986
398713987
398813988
399013990
399513995
399827996
399913999
400014000
400114001
400214002
400328006
400414004
400514005
400628012
400914009
401014010
401228024
401328026
401414014
401514015
401728034
401814018
402328046
402428048
402628052
402728054
403028060
403214032
403328066
403414034
403528070
403828076
404214042
404514045
404814048
405128102
405414054
409814098
410026554108871400
Total27556111584021
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
026554
21000
81
Total27555
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333336266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888278c849957b20
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3738633834393935
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_2_17.json b/autobahn/client/tungstenite_case_12_2_17.json new file mode 100644 index 0000000..cc495aa --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_17.json @@ -0,0 +1,1748 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 336, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 12002, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=336&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: zRLE3ORFP6mWsBFWj9cKMA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: OlSYLAK3vMMhqxWRYsX8V6g6SAU=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.2.17", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "42541": 1, + "42557": 1, + "42563": 1, + "42582": 1, + "42585": 1, + "42588": 1, + "42597": 2, + "42600": 1, + "42602": 2, + "42604": 1, + "42627": 1, + "42628": 1, + "42635": 1, + "42638": 1, + "42640": 1, + "42641": 2, + "42645": 1, + "42656": 1, + "42658": 1, + "42661": 1, + "42662": 1, + "42671": 1, + "42672": 1, + "42673": 1, + "42675": 1, + "42677": 2, + "42684": 1, + "42685": 1, + "42689": 1, + "42690": 1, + "42692": 1, + "42695": 1, + "42696": 1, + "42698": 2, + "42699": 1, + "42704": 1, + "42706": 1, + "42714": 1, + "42719": 1, + "42724": 1, + "42727": 1, + "42730": 1, + "42734": 1, + "42740": 1, + "42741": 1, + "42746": 1, + "42747": 2, + "42749": 1, + "42755": 2, + "42773": 1, + "42774": 1, + "42778": 1, + "42781": 1, + "42783": 1, + "42785": 1, + "42787": 1, + "42789": 2, + "42792": 1, + "42793": 1, + "42794": 2, + "42799": 1, + "42800": 1, + "42806": 1, + "42810": 1, + "42821": 2, + "42822": 1, + "42824": 2, + "42826": 1, + "42830": 2, + "42833": 1, + "42834": 2, + "42836": 1, + "42838": 1, + "42839": 2, + "42843": 1, + "42847": 3, + "42851": 2, + "42862": 2, + "42863": 1, + "42869": 1, + "42870": 1, + "42873": 2, + "42875": 1, + "42876": 2, + "42877": 1, + "42882": 2, + "42883": 1, + "42885": 1, + "42887": 1, + "42888": 1, + "42892": 2, + "42893": 1, + "42897": 1, + "42898": 3, + "42906": 2, + "42907": 1, + "42908": 1, + "42911": 1, + "42912": 2, + "42915": 1, + "42920": 2, + "42926": 1, + "42927": 1, + "42928": 1, + "42929": 1, + "42932": 1, + "42934": 2, + "42935": 1, + "42936": 2, + "42937": 1, + "42943": 1, + "42944": 1, + "42945": 1, + "42948": 2, + "42951": 1, + "42955": 2, + "42956": 1, + "42957": 1, + "42961": 1, + "42964": 1, + "42965": 1, + "42976": 1, + "42977": 1, + "42979": 3, + "42980": 1, + "42983": 1, + "42984": 1, + "42986": 1, + "42988": 1, + "42991": 2, + "42993": 1, + "42998": 1, + "43004": 1, + "43012": 1, + "43017": 1, + "43019": 1, + "43051": 2, + "43058": 1, + "43063": 1, + "43073": 1, + "43085": 1, + "43087": 1, + "43089": 1, + "43090": 1, + "43094": 1, + "43099": 2, + "43100": 1, + "43103": 1, + "43115": 1, + "43119": 1, + "43121": 1, + "43127": 2, + "43147": 1, + "43149": 1, + "43150": 1, + "43154": 1, + "43157": 1, + "43174": 1, + "43177": 1, + "43183": 1, + "43190": 2, + "43192": 2, + "43197": 1, + "43211": 1, + "43215": 2, + "43219": 1, + "43225": 1, + "43232": 2, + "43237": 1, + "43240": 1, + "43246": 1, + "43248": 1, + "43254": 1, + "43255": 1, + "43259": 1, + "43260": 1, + "43268": 1, + "43275": 1, + "43283": 2, + "43284": 1, + "43285": 1, + "43287": 1, + "43291": 1, + "43295": 1, + "43301": 1, + "43306": 1, + "43308": 1, + "43312": 1, + "43314": 1, + "43317": 1, + "43319": 1, + "43320": 3, + "43325": 1, + "43326": 2, + "43328": 1, + "43333": 1, + "43336": 1, + "43338": 1, + "43340": 1, + "43341": 1, + "43346": 1, + "43350": 1, + "43351": 2, + "43355": 1, + "43356": 2, + "43361": 1, + "43367": 1, + "43369": 2, + "43370": 1, + "43374": 1, + "43375": 1, + "43376": 1, + "43378": 1, + "43381": 1, + "43386": 1, + "43388": 2, + "43389": 1, + "43396": 1, + "43397": 1, + "43400": 1, + "43405": 1, + "43411": 1, + "43413": 1, + "43414": 2, + "43417": 1, + "43419": 1, + "43420": 1, + "43421": 1, + "43423": 1, + "43424": 2, + "43426": 2, + "43429": 1, + "43431": 1, + "43432": 1, + "43433": 1, + "43434": 2, + "43435": 1, + "43438": 1, + "43439": 1, + "43440": 2, + "43442": 1, + "43445": 1, + "43447": 1, + "43448": 1, + "43449": 1, + "43450": 2, + "43452": 1, + "43454": 1, + "43455": 1, + "43459": 3, + "43461": 1, + "43463": 1, + "43469": 1, + "43474": 1, + "43477": 2, + "43479": 1, + "43482": 1, + "43483": 1, + "43488": 1, + "43489": 1, + "43490": 3, + "43492": 1, + "43493": 1, + "43494": 2, + "43495": 2, + "43497": 2, + "43501": 2, + "43503": 2, + "43504": 2, + "43505": 2, + "43508": 2, + "43511": 1, + "43512": 1, + "43517": 1, + "43528": 1, + "43534": 1, + "43536": 1, + "43548": 1, + "43563": 1, + "43567": 1, + "43570": 1, + "43572": 1, + "43585": 2, + "43597": 2, + "43598": 1, + "43600": 1, + "43601": 1, + "43605": 2, + "43606": 1, + "43610": 1, + "43613": 1, + "43615": 1, + "43616": 1, + "43622": 1, + "43625": 1, + "43632": 1, + "43633": 1, + "43635": 1, + "43636": 1, + "43640": 1, + "43644": 1, + "43650": 1, + "43654": 1, + "43658": 1, + "43661": 1, + "43672": 1, + "43674": 1, + "43675": 1, + "43677": 1, + "43682": 1, + "43687": 1, + "43690": 1, + "43691": 1, + "43694": 1, + "43695": 1, + "43703": 1, + "43704": 2, + "43705": 1, + "43710": 1, + "43712": 1, + "43713": 3, + "43716": 1, + "43720": 1, + "43726": 1, + "43738": 1, + "43785": 1, + "43820": 1, + "43822": 1, + "43891": 1, + "43905": 1, + "43952": 1, + "43964": 1, + "43986": 1, + "44047": 1, + "44052": 1, + "44122": 1, + "44145": 1, + "44192": 1, + "44224": 1, + "44279": 1, + "44297": 1, + "44310": 1, + "44370": 1, + "44382": 1, + "44439": 1, + "44453": 1, + "44473": 1, + "44496": 1, + "44533": 1, + "44555": 1, + "44558": 1, + "44599": 1, + "44614": 1, + "44627": 1, + "44637": 1, + "44638": 1, + "44663": 1, + "44725": 1, + "44727": 1, + "44736": 1, + "44776": 1, + "44798": 1, + "44821": 1, + "44847": 1, + "44864": 1, + "44895": 1, + "44908": 1, + "44944": 1, + "44947": 1, + "44954": 1, + "44972": 1, + "45008": 1, + "45068": 1, + "45072": 1, + "45088": 1, + "45089": 1, + "45134": 1, + "45150": 1, + "45170": 1, + "45201": 1, + "45231": 1, + "45236": 1, + "45250": 1, + "45291": 2, + "45303": 1, + "45331": 1, + "45371": 1, + "45394": 1, + "45413": 1, + "45414": 1, + "45433": 1, + "45471": 1, + "45475": 1, + "45487": 1, + "45513": 1, + "45565": 1, + "45573": 1, + "45578": 1, + "45601": 1, + "45646": 1, + "45670": 1, + "45678": 1, + "45679": 1, + "45708": 1, + "45754": 1, + "45757": 1, + "45768": 1, + "45774": 1, + "45818": 1, + "45829": 1, + "45850": 1, + "45856": 1, + "45892": 1, + "45906": 1, + "45920": 1, + "45929": 1, + "45950": 1, + "45953": 1, + "45996": 2, + "46011": 1, + "46015": 1, + "46051": 1, + "46061": 1, + "46084": 1, + "46093": 1, + "46108": 1, + "46130": 1, + "46136": 1, + "46144": 1, + "46163": 1, + "46188": 1, + "46208": 1, + "46216": 1, + "46235": 1, + "46261": 1, + "46266": 1, + "46294": 1, + "46309": 1, + "46322": 1, + "46326": 1, + "46372": 1, + "46374": 1, + "46375": 1, + "46409": 1, + "46430": 1, + "46431": 1, + "46447": 1, + "46480": 1, + "46510": 1, + "46511": 1, + "46532": 1, + "46550": 1, + "46573": 1, + "46574": 1, + "46580": 1, + "46627": 1, + "46651": 1, + "46659": 1, + "46666": 1, + "46685": 1, + "46712": 1, + "46737": 1, + "46739": 1, + "46744": 1, + "46775": 1, + "46796": 1, + "46817": 1, + "46827": 1, + "46847": 1, + "46850": 1, + "46864": 1, + "46886": 1, + "46897": 1, + "46916": 1, + "46926": 1, + "46943": 1, + "46954": 1, + "46964": 1, + "47000": 1, + "47008": 1, + "47009": 1, + "47046": 1, + "47047": 1, + "47058": 1, + "47061": 1, + "47082": 1, + "47093": 1, + "47102": 1, + "47111": 1, + "47149": 1, + "47163": 1, + "47200": 1, + "47220": 1, + "47223": 1, + "47262": 1, + "47320": 1, + "47351": 1, + "47366": 1, + "47387": 1, + "47427": 1, + "47467": 1, + "47497": 1, + "47528": 1, + "47558": 1, + "47600": 1, + "47629": 1, + "47635": 1, + "47678": 1, + "47703": 1, + "47762": 1, + "47771": 1, + "47785": 1, + "47830": 1, + "47865": 1, + "47921": 1, + "47937": 1, + "47986": 2, + "47994": 1, + "48055": 1, + "48059": 1, + "48082": 1, + "48095": 1, + "48133": 1, + "48141": 1, + "48147": 1, + "48178": 1, + "48182": 1, + "48188": 1, + "48189": 1, + "48190": 1, + "48191": 1, + "48193": 1, + "48194": 3, + "48196": 3, + "48197": 2, + "48198": 2, + "48199": 2, + "48201": 1, + "48202": 3, + "48204": 1, + "48206": 1, + "48207": 1, + "48215": 1, + "48216": 1, + "48217": 1, + "48220": 1, + "48221": 1, + "48228": 1, + "48229": 1, + "48231": 1, + "48233": 1, + "48235": 2, + "48241": 1, + "48244": 1, + "48248": 1, + "48253": 1, + "48257": 1, + "48260": 1, + "48264": 1, + "48273": 1, + "48274": 1, + "48278": 1, + "48279": 1, + "48290": 1, + "48291": 2, + "48294": 1, + "48301": 1, + "48307": 1, + "48310": 1, + "48317": 1, + "48319": 1, + "48324": 1, + "48329": 1, + "48333": 2, + "48334": 1, + "48342": 1, + "48345": 1, + "48359": 1, + "48363": 1, + "48366": 2, + "48370": 1, + "48372": 1, + "48378": 1, + "48379": 1, + "48385": 1, + "48389": 1, + "48394": 1, + "48396": 1, + "48400": 2, + "48401": 1, + "48404": 1, + "48410": 1, + "48411": 1, + "48412": 1, + "48415": 1, + "48421": 1, + "48423": 1, + "48424": 1, + "48427": 1, + "48428": 1, + "48434": 1, + "48435": 1, + "48442": 1, + "48444": 1, + "48451": 2, + "48462": 1, + "48469": 1, + "48473": 1, + "48474": 1, + "48475": 2, + "48477": 1, + "48478": 1, + "48480": 1, + "48481": 1, + "48492": 1, + "48500": 1, + "48502": 1, + "48507": 1, + "48509": 1, + "48511": 1, + "48513": 1, + "48514": 1, + "48516": 2, + "48518": 2, + "48519": 2, + "48520": 1, + "48521": 1, + "48523": 1, + "48528": 1, + "48531": 2, + "48532": 2, + "48535": 1, + "48537": 1, + "48538": 1, + "48542": 1, + "48546": 2, + "48552": 1, + "48555": 2, + "48556": 1, + "48558": 1, + "48559": 1, + "48562": 1, + "48564": 1, + "48565": 2, + "48566": 1, + "48570": 1, + "48571": 3, + "48572": 1, + "48573": 3, + "48575": 2, + "48577": 1, + "48579": 2, + "48580": 3, + "48581": 1, + "48582": 1, + "48584": 1, + "48588": 4, + "48591": 1, + "48592": 2, + "48593": 4, + "48595": 1, + "48597": 1, + "48603": 1, + "48608": 1, + "48611": 1, + "48612": 2, + "48613": 2, + "48614": 1, + "48616": 1, + "48620": 3, + "48624": 1, + "48625": 1, + "48626": 1, + "48627": 2, + "48629": 1, + "48631": 1, + "48632": 1, + "48634": 2, + "48635": 1, + "48636": 1, + "48638": 2, + "48640": 1, + "48643": 2, + "48644": 1, + "48647": 2, + "48648": 1, + "48652": 2, + "48653": 1, + "48655": 1, + "48662": 1, + "48664": 2, + "48668": 1, + "48674": 1, + "48679": 1, + "48702": 1, + "48713": 1, + "48727": 1, + "48729": 1, + "48757": 1, + "48760": 1, + "48769": 1, + "48776": 1, + "48778": 1, + "48782": 1, + "48798": 1, + "48811": 2, + "48815": 1, + "48822": 1, + "48828": 1, + "48832": 1, + "48855": 1, + "48865": 1, + "48869": 1, + "48889": 1, + "48890": 1, + "48895": 1, + "48898": 1, + "48925": 1, + "48928": 1, + "48941": 1, + "48945": 1, + "48949": 1, + "48950": 1, + "48965": 1, + "48966": 1, + "48974": 1, + "48976": 1, + "48979": 1, + "48981": 1, + "48984": 2, + "48989": 1, + "48990": 2, + "48991": 1, + "48994": 2, + "48996": 2, + "48997": 1, + "48999": 4, + "49002": 2, + "49004": 1, + "49006": 1, + "49008": 1, + "49009": 1, + "49010": 1, + "49011": 2, + "49012": 3, + "49013": 4, + "49014": 2, + "49015": 1, + "49016": 1, + "49017": 2, + "49018": 4, + "49019": 1, + "49020": 2, + "49021": 5, + "49022": 1, + "49025": 3, + "49026": 3, + "49027": 2, + "49029": 2, + "49030": 2, + "49031": 3, + "49033": 2, + "49034": 1, + "49035": 2, + "49036": 1, + "49037": 4, + "49038": 2, + "49039": 2, + "49041": 2, + "49043": 3, + "49044": 1, + "49045": 1, + "49047": 1, + "49048": 2, + "49049": 1, + "49050": 1, + "49051": 1, + "49052": 1, + "49053": 1, + "49054": 1, + "49056": 1, + "49061": 1, + "49064": 2, + "49065": 1, + "49066": 1, + "49067": 1, + "49069": 2, + "49070": 1, + "49071": 1, + "49072": 2, + "49075": 1, + "49076": 1, + "49078": 2, + "49079": 2, + "49080": 1, + "49081": 1, + "49083": 2, + "49084": 1, + "49089": 2, + "49090": 2, + "49092": 2, + "49093": 2, + "49096": 2, + "49098": 1, + "49099": 2, + "49100": 1, + "49101": 2, + "49104": 1, + "49108": 1, + "49111": 1, + "49114": 1, + "49117": 2, + "49120": 1, + "49230": 1, + "65536": 1000 + }, + "started": "2020-09-07T18:46:12.173Z", + "trafficStats": { + "incomingCompressionRatio": 0.8504757537841797, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 111473558, + "incomingOctetsWireLevel": 111487558, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.00012559032160792787, + "outgoingCompressionRatio": 0.8504757919311523, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 111473563, + "outgoingOctetsWireLevel": 111583765, + "outgoingWebSocketFrames": 27554, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0009885931429320152, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 26554, + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 2, + "20": 1, + "21": 1, + "66": 2, + "82": 1, + "102": 1, + "135": 1, + "165": 1, + "170": 1, + "184": 1, + "225": 2, + "237": 1, + "252": 1, + "265": 1, + "305": 1, + "328": 1, + "347": 1, + "348": 1, + "367": 1, + "405": 1, + "409": 1, + "421": 1, + "447": 1, + "499": 1, + "507": 1, + "512": 1, + "535": 1, + "580": 1, + "604": 1, + "612": 1, + "613": 1, + "642": 1, + "688": 1, + "691": 1, + "702": 1, + "708": 1, + "752": 1, + "763": 1, + "784": 1, + "790": 1, + "826": 1, + "840": 1, + "854": 1, + "863": 1, + "884": 1, + "887": 1, + "930": 2, + "945": 1, + "949": 1, + "985": 1, + "995": 1, + "1018": 1, + "1027": 1, + "1042": 1, + "1064": 1, + "1070": 1, + "1078": 1, + "1097": 1, + "1122": 1, + "1142": 1, + "1150": 1, + "1169": 1, + "1195": 1, + "1200": 1, + "1228": 1, + "1243": 1, + "1256": 1, + "1260": 1, + "1306": 1, + "1308": 1, + "1309": 1, + "1343": 1, + "1364": 1, + "1365": 1, + "1381": 1, + "1414": 1, + "1444": 1, + "1445": 1, + "1466": 1, + "1484": 1, + "1507": 1, + "1508": 1, + "1514": 1, + "1561": 1, + "1571": 1, + "1585": 1, + "1587": 1, + "1593": 2, + "1600": 1, + "1612": 1, + "1615": 1, + "1618": 1, + "1619": 1, + "1627": 2, + "1630": 1, + "1632": 2, + "1634": 1, + "1646": 1, + "1657": 1, + "1658": 1, + "1665": 1, + "1668": 1, + "1670": 1, + "1671": 3, + "1673": 1, + "1675": 1, + "1678": 1, + "1686": 1, + "1688": 1, + "1691": 1, + "1692": 1, + "1701": 1, + "1702": 1, + "1703": 1, + "1705": 1, + "1707": 2, + "1709": 1, + "1714": 1, + "1715": 1, + "1719": 1, + "1720": 1, + "1722": 1, + "1725": 1, + "1726": 1, + "1728": 2, + "1729": 1, + "1730": 1, + "1734": 1, + "1736": 1, + "1744": 1, + "1749": 1, + "1751": 1, + "1754": 1, + "1757": 1, + "1760": 1, + "1761": 1, + "1764": 1, + "1770": 1, + "1771": 1, + "1776": 1, + "1777": 2, + "1779": 1, + "1781": 1, + "1784": 1, + "1785": 2, + "1798": 1, + "1803": 1, + "1804": 1, + "1808": 1, + "1811": 1, + "1813": 1, + "1815": 1, + "1817": 1, + "1819": 2, + "1820": 1, + "1822": 1, + "1823": 1, + "1824": 2, + "1829": 1, + "1830": 1, + "1831": 1, + "1836": 1, + "1840": 1, + "1850": 1, + "1851": 2, + "1852": 1, + "1854": 2, + "1856": 1, + "1860": 3, + "1863": 1, + "1864": 2, + "1866": 1, + "1868": 1, + "1869": 2, + "1873": 1, + "1877": 4, + "1881": 2, + "1888": 1, + "1892": 2, + "1893": 1, + "1898": 1, + "1899": 1, + "1900": 1, + "1903": 2, + "1905": 1, + "1906": 2, + "1907": 1, + "1912": 2, + "1913": 1, + "1915": 1, + "1917": 1, + "1918": 1, + "1922": 2, + "1923": 1, + "1927": 1, + "1928": 3, + "1934": 1, + "1936": 2, + "1937": 1, + "1938": 1, + "1941": 1, + "1942": 3, + "1943": 1, + "1945": 1, + "1950": 2, + "1956": 1, + "1957": 1, + "1958": 1, + "1959": 1, + "1962": 1, + "1964": 2, + "1965": 1, + "1966": 2, + "1967": 1, + "1973": 1, + "1974": 1, + "1975": 1, + "1978": 2, + "1980": 1, + "1981": 2, + "1985": 2, + "1986": 1, + "1987": 1, + "1991": 1, + "1992": 1, + "1994": 1, + "1995": 2, + "2006": 1, + "2007": 1, + "2009": 3, + "2010": 1, + "2013": 1, + "2014": 1, + "2016": 2, + "2018": 1, + "2021": 2, + "2023": 1, + "2027": 1, + "2028": 1, + "2034": 1, + "2036": 1, + "2042": 1, + "2045": 1, + "2047": 1, + "2049": 1, + "2081": 2, + "2083": 1, + "2088": 1, + "2093": 1, + "2097": 1, + "2103": 1, + "2115": 1, + "2117": 1, + "2119": 1, + "2120": 1, + "2124": 1, + "2129": 2, + "2130": 1, + "2133": 1, + "2134": 1, + "2145": 1, + "2149": 1, + "2151": 1, + "2154": 1, + "2157": 3, + "2177": 1, + "2179": 1, + "2180": 1, + "2184": 1, + "2187": 1, + "2196": 1, + "2204": 1, + "2207": 1, + "2213": 1, + "2220": 2, + "2222": 2, + "2227": 1, + "2241": 1, + "2245": 2, + "2249": 1, + "2254": 1, + "2255": 1, + "2262": 2, + "2267": 1, + "2270": 1, + "2276": 1, + "2278": 1, + "2284": 1, + "2285": 2, + "2289": 1, + "2290": 1, + "2298": 1, + "2300": 1, + "2305": 1, + "2313": 2, + "2314": 1, + "2315": 1, + "2317": 1, + "2321": 2, + "2325": 1, + "2331": 1, + "2336": 1, + "2338": 1, + "2342": 1, + "2344": 1, + "2347": 1, + "2349": 1, + "2350": 3, + "2355": 1, + "2356": 2, + "2358": 1, + "2361": 1, + "2363": 1, + "2366": 1, + "2368": 1, + "2370": 1, + "2371": 1, + "2376": 1, + "2380": 1, + "2381": 2, + "2385": 1, + "2386": 2, + "2391": 1, + "2397": 1, + "2399": 2, + "2400": 1, + "2401": 1, + "2404": 1, + "2405": 1, + "2406": 1, + "2408": 1, + "2411": 1, + "2416": 1, + "2418": 2, + "2419": 1, + "2426": 1, + "2427": 1, + "2430": 1, + "2431": 1, + "2435": 1, + "2441": 1, + "2443": 1, + "2444": 2, + "2447": 1, + "2449": 1, + "2450": 1, + "2451": 1, + "2453": 1, + "2454": 2, + "2456": 2, + "2459": 1, + "2461": 1, + "2462": 2, + "2463": 1, + "2464": 2, + "2465": 1, + "2468": 1, + "2469": 1, + "2470": 2, + "2472": 1, + "2475": 1, + "2477": 1, + "2478": 1, + "2479": 1, + "2480": 1, + "2482": 1, + "2484": 1, + "2485": 2, + "2489": 3, + "2491": 1, + "2492": 1, + "2493": 1, + "2499": 1, + "2504": 1, + "2507": 2, + "2509": 1, + "2512": 1, + "2513": 1, + "2518": 1, + "2519": 1, + "2520": 3, + "2522": 1, + "2523": 1, + "2524": 2, + "2525": 2, + "2527": 2, + "2531": 2, + "2533": 2, + "2534": 3, + "2535": 2, + "2538": 2, + "2541": 1, + "2542": 1, + "2547": 1, + "2558": 1, + "2563": 1, + "2564": 1, + "2566": 1, + "2569": 1, + "2578": 1, + "2593": 1, + "2597": 1, + "2600": 1, + "2602": 1, + "2612": 1, + "2615": 2, + "2627": 2, + "2628": 1, + "2630": 1, + "2631": 1, + "2635": 2, + "2636": 1, + "2637": 1, + "2640": 1, + "2643": 1, + "2645": 1, + "2646": 1, + "2652": 1, + "2655": 1, + "2662": 1, + "2663": 1, + "2665": 1, + "2666": 1, + "2670": 1, + "2674": 1, + "2680": 1, + "2684": 1, + "2688": 1, + "2691": 1, + "2696": 1, + "2702": 1, + "2704": 1, + "2705": 2, + "2707": 1, + "2712": 1, + "2717": 1, + "2719": 1, + "2720": 1, + "2721": 1, + "2724": 1, + "2725": 1, + "2733": 1, + "2734": 2, + "2735": 1, + "2740": 1, + "2742": 1, + "2743": 3, + "2746": 1, + "2750": 1, + "2756": 1, + "2764": 1, + "2768": 1, + "2799": 1, + "2815": 1, + "2850": 1, + "2852": 1, + "2855": 1, + "2871": 1, + "2920": 2, + "2921": 1, + "2928": 1, + "2935": 1, + "2982": 1, + "2989": 1, + "2993": 1, + "2994": 1, + "3016": 2, + "3029": 1, + "3067": 1, + "3075": 1, + "3077": 1, + "3081": 1, + "3082": 1, + "3112": 1, + "3116": 1, + "3122": 1, + "3123": 1, + "3124": 1, + "3125": 1, + "3127": 1, + "3128": 3, + "3130": 3, + "3131": 2, + "3132": 2, + "3133": 2, + "3135": 1, + "3136": 3, + "3138": 1, + "3140": 1, + "3141": 1, + "3149": 1, + "3150": 1, + "3151": 1, + "3152": 1, + "3154": 1, + "3155": 1, + "3162": 1, + "3163": 1, + "3165": 1, + "3167": 1, + "3169": 2, + "3175": 2, + "3178": 1, + "3182": 1, + "3187": 1, + "3191": 1, + "3194": 1, + "3198": 1, + "3207": 1, + "3208": 1, + "3212": 1, + "3213": 1, + "3222": 1, + "3224": 1, + "3225": 2, + "3228": 1, + "3235": 1, + "3241": 1, + "3244": 1, + "3251": 1, + "3253": 1, + "3254": 1, + "3258": 1, + "3263": 1, + "3267": 2, + "3268": 1, + "3276": 1, + "3279": 1, + "3293": 1, + "3297": 1, + "3300": 2, + "3304": 1, + "3306": 1, + "3309": 1, + "3312": 1, + "3313": 1, + "3319": 1, + "3323": 1, + "3327": 1, + "3328": 1, + "3330": 1, + "3334": 2, + "3335": 1, + "3338": 1, + "3340": 1, + "3344": 1, + "3345": 1, + "3346": 1, + "3349": 1, + "3355": 1, + "3357": 1, + "3358": 1, + "3361": 1, + "3362": 1, + "3368": 1, + "3369": 1, + "3376": 1, + "3378": 1, + "3385": 2, + "3396": 1, + "3400": 1, + "3403": 1, + "3407": 1, + "3408": 1, + "3409": 2, + "3411": 1, + "3412": 2, + "3414": 1, + "3415": 1, + "3426": 1, + "3434": 1, + "3436": 1, + "3441": 1, + "3443": 1, + "3445": 1, + "3447": 1, + "3448": 1, + "3450": 2, + "3452": 2, + "3453": 2, + "3454": 1, + "3455": 1, + "3457": 1, + "3462": 1, + "3465": 2, + "3466": 2, + "3469": 2, + "3471": 1, + "3472": 1, + "3476": 1, + "3480": 2, + "3483": 1, + "3486": 1, + "3489": 2, + "3490": 1, + "3492": 1, + "3493": 1, + "3496": 1, + "3498": 1, + "3499": 2, + "3500": 1, + "3503": 1, + "3504": 1, + "3505": 3, + "3506": 1, + "3507": 3, + "3509": 2, + "3511": 1, + "3513": 2, + "3514": 3, + "3515": 1, + "3516": 1, + "3518": 1, + "3522": 4, + "3525": 1, + "3526": 3, + "3527": 4, + "3529": 1, + "3531": 1, + "3537": 1, + "3542": 1, + "3545": 1, + "3546": 2, + "3547": 2, + "3548": 1, + "3550": 1, + "3554": 3, + "3558": 1, + "3559": 1, + "3560": 1, + "3561": 2, + "3563": 2, + "3565": 1, + "3566": 1, + "3568": 2, + "3569": 1, + "3570": 1, + "3572": 2, + "3574": 1, + "3577": 2, + "3578": 1, + "3581": 2, + "3582": 1, + "3585": 1, + "3586": 2, + "3587": 1, + "3588": 1, + "3589": 1, + "3596": 1, + "3598": 2, + "3602": 1, + "3608": 1, + "3613": 1, + "3629": 1, + "3636": 1, + "3644": 1, + "3647": 1, + "3657": 1, + "3661": 1, + "3663": 1, + "3667": 1, + "3668": 1, + "3691": 1, + "3693": 1, + "3694": 1, + "3703": 1, + "3710": 1, + "3712": 1, + "3716": 1, + "3732": 1, + "3745": 2, + "3749": 1, + "3755": 1, + "3756": 1, + "3757": 1, + "3762": 1, + "3766": 2, + "3789": 1, + "3799": 1, + "3803": 1, + "3806": 1, + "3823": 1, + "3824": 1, + "3828": 1, + "3829": 1, + "3832": 1, + "3851": 1, + "3859": 1, + "3862": 1, + "3875": 1, + "3877": 1, + "3879": 1, + "3883": 1, + "3884": 1, + "3894": 1, + "3899": 1, + "3900": 1, + "3908": 1, + "3910": 1, + "3913": 1, + "3915": 1, + "3918": 2, + "3923": 1, + "3924": 2, + "3925": 2, + "3928": 2, + "3930": 2, + "3931": 1, + "3933": 4, + "3936": 2, + "3938": 2, + "3940": 1, + "3942": 1, + "3943": 1, + "3944": 1, + "3945": 2, + "3946": 3, + "3947": 4, + "3948": 2, + "3949": 1, + "3950": 1, + "3951": 2, + "3952": 4, + "3953": 1, + "3954": 2, + "3955": 5, + "3956": 1, + "3959": 3, + "3960": 3, + "3961": 2, + "3963": 2, + "3964": 2, + "3965": 3, + "3967": 2, + "3968": 1, + "3969": 2, + "3970": 1, + "3971": 4, + "3972": 2, + "3973": 2, + "3974": 1, + "3975": 2, + "3977": 4, + "3978": 1, + "3979": 1, + "3981": 1, + "3982": 2, + "3983": 1, + "3984": 2, + "3985": 1, + "3986": 1, + "3987": 1, + "3988": 1, + "3990": 1, + "3995": 1, + "3998": 2, + "3999": 1, + "4000": 1, + "4001": 1, + "4002": 1, + "4003": 2, + "4004": 1, + "4005": 1, + "4006": 2, + "4009": 1, + "4010": 1, + "4012": 2, + "4013": 2, + "4014": 1, + "4015": 1, + "4017": 2, + "4018": 1, + "4023": 2, + "4024": 2, + "4026": 2, + "4027": 2, + "4030": 2, + "4032": 1, + "4033": 2, + "4034": 1, + "4035": 2, + "4038": 2, + "4042": 1, + "4045": 1, + "4048": 1, + "4051": 2, + "4054": 1, + "4098": 1, + "4100": 26554 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333336266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888278c849957b20" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "78c84995" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_2_18.html b/autobahn/client/tungstenite_case_12_2_18.html new file mode 100644 index 0000000..befb2a4 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_18.html @@ -0,0 +1,1929 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.2.18 : Pass - 11767 ms @ 2020-09-07T18:46:24.176Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=337&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: gcgz3bykvRsReRDrDBPRwg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: R+kZ9azWjFWVuC6d4IaA5vhvF2I=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
42541142541
42557142557
42563142563
42582142582
42585142585
42588142588
42597285194
42600142600
42602285204
42604142604
42627142627
42628142628
42635142635
42638142638
42640142640
42641285282
42645142645
42656142656
42658142658
42661142661
42662142662
42671142671
42672142672
42673142673
42675142675
42677285354
42684142684
42685142685
42689142689
42690142690
42692142692
42695142695
42696142696
42698285396
42699142699
42704142704
42706142706
42714142714
42719142719
42724142724
42727142727
42730142730
42734142734
42740142740
42741142741
42746142746
42747285494
42749142749
42755285510
42773142773
42774142774
42778142778
42781142781
42783142783
42785142785
42787142787
42789285578
42792142792
42793142793
42794285588
42799142799
42800142800
42806142806
42810142810
42821285642
42822142822
42824285648
42826142826
42830285660
42833142833
42834285668
42836142836
42838142838
42839285678
42843142843
428473128541
42851285702
42862285724
42863142863
42869142869
42870142870
42873285746
42875142875
42876285752
42877142877
42882285764
42883142883
42885142885
42887142887
42888142888
42892285784
42893142893
42897142897
428983128694
42906285812
42907142907
42908142908
42911142911
42912285824
42915142915
42920285840
42926142926
42927142927
42928142928
42929142929
42932142932
42934285868
42935142935
42936285872
42937142937
42943142943
42944142944
42945142945
42948285896
42951142951
42955285910
42956142956
42957142957
42961142961
42964142964
42965142965
42976142976
42977142977
429793128937
42980142980
42983142983
42984142984
42986142986
42988142988
42991285982
42993142993
42998142998
43004143004
43012143012
43017143017
43019143019
43051286102
43058143058
43063143063
43073143073
43085143085
43087143087
43089143089
43090143090
43094143094
43099286198
43100143100
43103143103
43115143115
43119143119
43121143121
43127286254
43147143147
43149143149
43150143150
43154143154
43157143157
43174143174
43177143177
43183143183
43190286380
43192286384
43197143197
43211143211
43215286430
43219143219
43225143225
43232286464
43237143237
43240143240
43246143246
43248143248
43254143254
43255143255
43259143259
43260143260
43268143268
43275143275
43283286566
43284143284
43285143285
43287143287
43291143291
43295143295
43301143301
43306143306
43308143308
43312143312
43314143314
43317143317
43319143319
433203129960
43325143325
43326286652
43328143328
43333143333
43336143336
43338143338
43340143340
43341143341
43346143346
43350143350
43351286702
43355143355
43356286712
43361143361
43367143367
43369286738
43370143370
43374143374
43375143375
43376143376
43378143378
43381143381
43386143386
43388286776
43389143389
43396143396
43397143397
43400143400
43405143405
43411143411
43413143413
43414286828
43417143417
43419143419
43420143420
43421143421
43423143423
43424286848
43426286852
43429143429
43431143431
43432143432
43433143433
43434286868
43435143435
43438143438
43439143439
43440286880
43442143442
43445143445
43447143447
43448143448
43449143449
43450286900
43452143452
43454143454
43455143455
434593130377
43461143461
43463143463
43469143469
43474143474
43477286954
43479143479
43482143482
43483143483
43488143488
43489143489
434903130470
43492143492
43493143493
43494286988
43495286990
43497286994
43501287002
43503287006
43504287008
43505287010
43508287016
43511143511
43512143512
43517143517
43528143528
43534143534
43536143536
43548143548
43563143563
43567143567
43570143570
43572143572
43585287170
43597287194
43598143598
43600143600
43601143601
43605287210
43606143606
43610143610
43613143613
43615143615
43616143616
43622143622
43625143625
43632143632
43633143633
43635143635
43636143636
43640143640
43644143644
43650143650
43654143654
43658143658
43661143661
43672143672
43674143674
43675143675
43677143677
43682143682
43687143687
43690143690
43691143691
43694143694
43695143695
43703143703
43704287408
43705143705
43710143710
43712143712
437133131139
43716143716
43720143720
43726143726
43738143738
43785143785
43820143820
43822143822
43891143891
43905143905
43952143952
43964143964
43986143986
44047144047
44052144052
44122144122
44145144145
44192144192
44224144224
44279144279
44297144297
44310144310
44370144370
44382144382
44439144439
44453144453
44473144473
44496144496
44533144533
44555144555
44558144558
44599144599
44614144614
44627144627
44637144637
44638144638
44663144663
44725144725
44727144727
44736144736
44776144776
44798144798
44821144821
44847144847
44864144864
44895144895
44908144908
44944144944
44947144947
44954144954
44972144972
45008145008
45068145068
45072145072
45088145088
45089145089
45134145134
45150145150
45170145170
45201145201
45231145231
45236145236
45250145250
45291290582
45303145303
45331145331
45371145371
45394145394
45413145413
45414145414
45433145433
45471145471
45475145475
45487145487
45513145513
45565145565
45573145573
45578145578
45601145601
45646145646
45670145670
45678145678
45679145679
45708145708
45754145754
45757145757
45768145768
45774145774
45818145818
45829145829
45850145850
45856145856
45892145892
45906145906
45920145920
45929145929
45950145950
45953145953
45996291992
46011146011
46015146015
46051146051
46061146061
46084146084
46093146093
46108146108
46130146130
46136146136
46144146144
46163146163
46188146188
46208146208
46216146216
46235146235
46261146261
46266146266
46294146294
46309146309
46322146322
46326146326
46372146372
46374146374
46375146375
46409146409
46430146430
46431146431
46447146447
46480146480
46510146510
46511146511
46532146532
46550146550
46573146573
46574146574
46580146580
46627146627
46651146651
46659146659
46666146666
46685146685
46712146712
46737146737
46739146739
46744146744
46775146775
46796146796
46817146817
46827146827
46847146847
46850146850
46864146864
46886146886
46897146897
46916146916
46926146926
46943146943
46954146954
46964146964
47000147000
47008147008
47009147009
47046147046
47047147047
47058147058
47061147061
47082147082
47093147093
47102147102
47111147111
47149147149
47163147163
47200147200
47220147220
47223147223
47262147262
47320147320
47351147351
47366147366
47387147387
47427147427
47467147467
47497147497
47528147528
47558147558
47600147600
47629147629
47635147635
47678147678
47703147703
47762147762
47771147771
47785147785
47830147830
47865147865
47921147921
47937147937
47986295972
47994147994
48055148055
48059148059
48082148082
48095148095
48133148133
48141148141
48147148147
48178148178
48182148182
48188148188
48189148189
48190148190
48191148191
48193148193
481943144582
481963144588
48197296394
48198296396
48199296398
48201148201
482023144606
48204148204
48206148206
48207148207
48215148215
48216148216
48217148217
48220148220
48221148221
48228148228
48229148229
48231148231
48233148233
48235296470
48241148241
48244148244
48248148248
48253148253
48257148257
48260148260
48264148264
48273148273
48274148274
48278148278
48279148279
48290148290
48291296582
48294148294
48301148301
48307148307
48310148310
48317148317
48319148319
48324148324
48329148329
48333296666
48334148334
48342148342
48345148345
48359148359
48363148363
48366296732
48370148370
48372148372
48378148378
48379148379
48385148385
48389148389
48394148394
48396148396
48400296800
48401148401
48404148404
48410148410
48411148411
48412148412
48415148415
48421148421
48423148423
48424148424
48427148427
48428148428
48434148434
48435148435
48442148442
48444148444
48451296902
48462148462
48469148469
48473148473
48474148474
48475296950
48477148477
48478148478
48480148480
48481148481
48492148492
48500148500
48502148502
48507148507
48509148509
48511148511
48513148513
48514148514
48516297032
48518297036
48519297038
48520148520
48521148521
48523148523
48528148528
48531297062
48532297064
48535148535
48537148537
48538148538
48542148542
48546297092
48552148552
48555297110
48556148556
48558148558
48559148559
48562148562
48564148564
48565297130
48566148566
48570148570
485713145713
48572148572
485733145719
48575297150
48577148577
48579297158
485803145740
48581148581
48582148582
48584148584
485884194352
48591148591
48592297184
485934194372
48595148595
48597148597
48603148603
48608148608
48611148611
48612297224
48613297226
48614148614
48616148616
486203145860
48624148624
48625148625
48626148626
48627297254
48629148629
48631148631
48632148632
48634297268
48635148635
48636148636
48638297276
48640148640
48643297286
48644148644
48647297294
48648148648
48652297304
48653148653
48655148655
48662148662
48664297328
48668148668
48674148674
48679148679
48702148702
48713148713
48727148727
48729148729
48757148757
48760148760
48769148769
48776148776
48778148778
48782148782
48798148798
48811297622
48815148815
48822148822
48828148828
48832148832
48855148855
48865148865
48869148869
48889148889
48890148890
48895148895
48898148898
48925148925
48928148928
48941148941
48945148945
48949148949
48950148950
48965148965
48966148966
48974148974
48976148976
48979148979
48981148981
48984297968
48989148989
48990297980
48991148991
48994297988
48996297992
48997148997
489994195996
49002298004
49004149004
49006149006
49008149008
49009149009
49010149010
49011298022
490123147036
490134196052
49014298028
49015149015
49016149016
49017298034
490184196072
49019149019
49020298040
490215245105
49022149022
490253147075
490263147078
49027298054
49029298058
49030298060
490313147093
49033298066
49034149034
49035298070
49036149036
490374196148
49038298076
49039298078
49041298082
490433147129
49044149044
49045149045
49047149047
49048298096
49049149049
49050149050
49051149051
49052149052
49053149053
49054149054
49056149056
49061149061
49064298128
49065149065
49066149066
49067149067
49069298138
49070149070
49071149071
49072298144
49075149075
49076149076
49078298156
49079298158
49080149080
49081149081
49083298166
49084149084
49089298178
49090298180
49092298184
49093298186
49096298192
49098149098
49099298198
49100149100
49101298202
49104149104
49108149108
49111149111
49114149114
49117298234
49120149120
49230149230
65536100065536000
Total2002111487823
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
976319763
977919779
978519785
980419804
980719807
981019810
9819219638
982219822
9824219648
982619826
984919849
985019850
985719857
986019860
986219862
9863219726
986719867
987819878
988019880
988319883
988419884
989319893
989419894
989519895
989719897
9899219798
990619906
990719907
991119911
991219912
991419914
991719917
991819918
9920219840
992119921
992619926
992819928
993619936
994119941
994619946
994919949
995219952
995619956
996219962
996319963
996819968
9969219938
997119971
9977219954
999519995
999619996
10000110000
10003110003
10005110005
10007110007
10009110009
10011220022
10014110014
10015110015
10016220032
10021110021
10022110022
10028110028
10032110032
10043220086
10044110044
10046220092
10048110048
10052220104
10055110055
10056220112
10058110058
10060110060
10061220122
10065110065
10069330207
10073220146
10084220168
10085110085
10091110091
10092110092
10095220190
10097110097
10098220196
10099110099
10104220208
10105110105
10107110107
10109110109
10110110110
10114220228
10115110115
10119110119
10120330360
10128220256
10129110129
10130110130
10133110133
10134220268
10137110137
10142220284
10148110148
10149110149
10150110150
10151110151
10154110154
10156220312
10157110157
10158220316
10159110159
10165110165
10166110166
10167110167
10170220340
10173110173
10177220354
10178110178
10179110179
10183110183
10186110186
10187110187
10198110198
10199110199
10201330603
10202110202
10205110205
10206110206
10208110208
10210110210
10213220426
10215110215
10220110220
10226110226
10234110234
10239110239
10241110241
10273220546
10280110280
10285110285
10295110295
10307110307
10309110309
10311110311
10312110312
10316110316
10321220642
10322110322
10325110325
10337110337
10341110341
10343110343
10349220698
10369110369
10371110371
10372110372
10376110376
10379110379
10396110396
10399110399
10405110405
10412220824
10414220828
10419110419
10433110433
10437220874
10441110441
10447110447
10454220908
10459110459
10462110462
10468110468
10470110470
10476110476
10477110477
10481110481
10482110482
10490110490
10497110497
10505221010
10506110506
10507110507
10509110509
10513110513
10517110517
10523110523
10528110528
10530110530
10534110534
10536110536
10539110539
10541110541
10542331626
10547110547
10548221096
10550110550
10555110555
10558110558
10560110560
10562110562
10563110563
10568110568
10572110572
10573221146
10577110577
10578221156
10583110583
10589110589
10591221182
10592110592
10596110596
10597110597
10598110598
10600110600
10603110603
10608110608
10610221220
10611110611
10618110618
10619110619
10622110622
10627110627
10633110633
10635110635
10636221272
10639110639
10641110641
10642110642
10643110643
10645110645
10646221292
10648221296
10651110651
10653110653
10654110654
10655110655
10656221312
10657110657
10660110660
10661110661
10662221324
10664110664
10667110667
10669110669
10670110670
10671110671
10672110672
10674110674
10676110676
10677221354
10681332043
10683110683
10685110685
10691110691
10696110696
10699221398
10701110701
10704110704
10705110705
10710110710
10711110711
10712332136
10714110714
10715110715
10716221432
10717221434
10719221438
10723221446
10725221450
10726221452
10727221454
10730221460
10733110733
10734110734
10739110739
10750110750
10756110756
10758110758
10770110770
10785110785
10789110789
10792110792
10794110794
10807221614
10819221638
10820110820
10822110822
10823110823
10827221654
10828110828
10832110832
10835110835
10837110837
10838110838
10844110844
10847110847
10854110854
10855110855
10857110857
10858110858
10862110862
10866110866
10872110872
10876110876
10880110880
10883110883
10894110894
10896110896
10897110897
10899110899
10904110904
10909110909
10912110912
10913110913
10916110916
10917110917
10925110925
10926221852
10927110927
10932110932
10934110934
10935332805
10938110938
10942110942
10948110948
10960110960
11007111007
11042111042
11044111044
11113111113
11127111127
11174111174
11186111186
11208111208
11269111269
11274111274
11344111344
11367111367
11414111414
11446111446
11501111501
11519111519
11532111532
11592111592
11604111604
11661111661
11675111675
11695111695
11718111718
11755111755
11777111777
11780111780
11821111821
11836111836
11849111849
11859111859
11860111860
11885111885
11947111947
11949111949
11958111958
11998111998
12020112020
12043112043
12069112069
12086112086
12117112117
12130112130
12166112166
12169112169
12176112176
12194112194
12230112230
12290112290
12294112294
12310112310
12311112311
12356112356
12372112372
12392112392
12423112423
12453112453
12458112458
12472112472
12513225026
12525112525
12553112553
12593112593
12616112616
12635112635
12636112636
12655112655
12693112693
12697112697
12709112709
12735112735
12787112787
12795112795
12800112800
12823112823
12868112868
12892112892
12900112900
12901112901
12930112930
12976112976
12979112979
12990112990
12996112996
13040113040
13051113051
13072113072
13078113078
13114113114
13128113128
13142113142
13151113151
13172113172
13175113175
13218226436
13233113233
13237113237
13273113273
13283113283
13306113306
13315113315
13330113330
13352113352
13358113358
13366113366
13385113385
13410113410
13430113430
13438113438
13457113457
13483113483
13488113488
13516113516
13531113531
13544113544
13548113548
13594113594
13596113596
13597113597
13631113631
13652113652
13653113653
13669113669
13702113702
13732113732
13733113733
13754113754
13772113772
13795113795
13796113796
13802113802
13849113849
13873113873
13881113881
13888113888
13907113907
13934113934
13959113959
13961113961
13966113966
13997113997
14018114018
14039114039
14049114049
14069114069
14072114072
14086114086
14108114108
14119114119
14138114138
14148114148
14165114165
14176114176
14186114186
14222114222
14230114230
14231114231
14268114268
14269114269
14280114280
14283114283
14304114304
14315114315
14324114324
14333114333
14371114371
14385114385
14422114422
14442114442
14445114445
14484114484
14542114542
14573114573
14588114588
14609114609
14649114649
14689114689
14719114719
14750114750
14780114780
14822114822
14851114851
14857114857
14900114900
14925114925
14984114984
14993114993
15007115007
15052115052
15087115087
15143115143
15159115159
15208230416
15216115216
15277115277
15281115281
15304115304
15317115317
15355115355
15363115363
15369115369
15400115400
15404115404
15410115410
15411115411
15412115412
15413115413
15415115415
15416346248
15418346254
15419230838
15420230840
15421230842
15423115423
15424346272
15426115426
15428115428
15429115429
15437115437
15438115438
15439115439
15442115442
15443115443
15450115450
15451115451
15453115453
15455115455
15457230914
15463115463
15466115466
15470115470
15475115475
15479115479
15482115482
15486115486
15495115495
15496115496
15500115500
15501115501
15512115512
15513231026
15516115516
15523115523
15529115529
15532115532
15539115539
15541115541
15546115546
15551115551
15555231110
15556115556
15564115564
15567115567
15581115581
15585115585
15588231176
15592115592
15594115594
15600115600
15601115601
15607115607
15611115611
15616115616
15618115618
15622231244
15623115623
15626115626
15632115632
15633115633
15634115634
15637115637
15643115643
15645115645
15646115646
15649115649
15650115650
15656115656
15657115657
15664115664
15666115666
15673231346
15684115684
15691115691
15695115695
15696115696
15697231394
15699115699
15700115700
15702115702
15703115703
15714115714
15722115722
15724115724
15729115729
15731115731
15733115733
15735115735
15736115736
15738231476
15740231480
15741231482
15742115742
15743115743
15745115745
15750115750
15753231506
15754231508
15757115757
15759115759
15760115760
15764115764
15768231536
15774115774
15777231554
15778115778
15780115780
15781115781
15784115784
15786115786
15787231574
15788115788
15792115792
15793347379
15794115794
15795347385
15797231594
15799115799
15801231602
15802347406
15803115803
15804115804
15806115806
15810463240
15813115813
15814231628
15815463260
15817115817
15819115819
15825115825
15830115830
15833115833
15834231668
15835231670
15836115836
15838115838
15842347526
15846115846
15847115847
15848115848
15849231698
15851115851
15853115853
15854115854
15856231712
15857115857
15858115858
15860231720
15862115862
15865231730
15866115866
15869231738
15870115870
15874231748
15875115875
15877115877
15884115884
15886231772
15890115890
15896115896
15901115901
15924115924
15935115935
15949115949
15951115951
15979115979
15982115982
15991115991
15998115998
16000116000
16004116004
16020116020
16033232066
16037116037
16044116044
16050116050
16054116054
16077116077
16087116087
16091116091
16111116111
16112116112
16117116117
16120116120
16147116147
16150116150
16163116163
16167116167
16171116171
16172116172
16187116187
16188116188
16196116196
16198116198
16201116201
16203116203
16206232412
16211116211
16212232424
16213116213
16216232432
16218232436
16219116219
16221464884
16224232448
16226116226
16228116228
16230116230
16231116231
16232116232
16233232466
16234348702
16235464940
16236232472
16237116237
16238116238
16239232478
16240464960
16241116241
16242232484
16243581215
16244116244
16247348741
16248348744
16249232498
16251232502
16252232504
16253348759
16255232510
16256116256
16257232514
16258116258
16259465036
16260232520
16261232522
16263232526
16265348795
16266116266
16267116267
16269116269
16270232540
16271116271
16272116272
16273116273
16274116274
16275116275
16276116276
16278116278
16283116283
16286232572
16287116287
16288116288
16289116289
16291232582
16292116292
16293116293
16294232588
16297116297
16298116298
16300232600
16301232602
16302116302
16303116303
16305232610
16306116306
16311232622
16312232624
16314232628
16315232630
16318232636
16320116320
16321232642
16322116322
16323232646
16326116326
16330116330
16333116333
16336116336
16339232678
16342116342
16452116452
32772300098316000
Total4002111489819
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
03000
21000
81
Total4001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333337266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88821d3c7b2f1ed4
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3164336337623266
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_2_18.json b/autobahn/client/tungstenite_case_12_2_18.json new file mode 100644 index 0000000..22a9eb0 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_18.json @@ -0,0 +1,1776 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 337, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 11767, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=337&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: gcgz3bykvRsReRDrDBPRwg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: R+kZ9azWjFWVuC6d4IaA5vhvF2I=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.2.18", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "42541": 1, + "42557": 1, + "42563": 1, + "42582": 1, + "42585": 1, + "42588": 1, + "42597": 2, + "42600": 1, + "42602": 2, + "42604": 1, + "42627": 1, + "42628": 1, + "42635": 1, + "42638": 1, + "42640": 1, + "42641": 2, + "42645": 1, + "42656": 1, + "42658": 1, + "42661": 1, + "42662": 1, + "42671": 1, + "42672": 1, + "42673": 1, + "42675": 1, + "42677": 2, + "42684": 1, + "42685": 1, + "42689": 1, + "42690": 1, + "42692": 1, + "42695": 1, + "42696": 1, + "42698": 2, + "42699": 1, + "42704": 1, + "42706": 1, + "42714": 1, + "42719": 1, + "42724": 1, + "42727": 1, + "42730": 1, + "42734": 1, + "42740": 1, + "42741": 1, + "42746": 1, + "42747": 2, + "42749": 1, + "42755": 2, + "42773": 1, + "42774": 1, + "42778": 1, + "42781": 1, + "42783": 1, + "42785": 1, + "42787": 1, + "42789": 2, + "42792": 1, + "42793": 1, + "42794": 2, + "42799": 1, + "42800": 1, + "42806": 1, + "42810": 1, + "42821": 2, + "42822": 1, + "42824": 2, + "42826": 1, + "42830": 2, + "42833": 1, + "42834": 2, + "42836": 1, + "42838": 1, + "42839": 2, + "42843": 1, + "42847": 3, + "42851": 2, + "42862": 2, + "42863": 1, + "42869": 1, + "42870": 1, + "42873": 2, + "42875": 1, + "42876": 2, + "42877": 1, + "42882": 2, + "42883": 1, + "42885": 1, + "42887": 1, + "42888": 1, + "42892": 2, + "42893": 1, + "42897": 1, + "42898": 3, + "42906": 2, + "42907": 1, + "42908": 1, + "42911": 1, + "42912": 2, + "42915": 1, + "42920": 2, + "42926": 1, + "42927": 1, + "42928": 1, + "42929": 1, + "42932": 1, + "42934": 2, + "42935": 1, + "42936": 2, + "42937": 1, + "42943": 1, + "42944": 1, + "42945": 1, + "42948": 2, + "42951": 1, + "42955": 2, + "42956": 1, + "42957": 1, + "42961": 1, + "42964": 1, + "42965": 1, + "42976": 1, + "42977": 1, + "42979": 3, + "42980": 1, + "42983": 1, + "42984": 1, + "42986": 1, + "42988": 1, + "42991": 2, + "42993": 1, + "42998": 1, + "43004": 1, + "43012": 1, + "43017": 1, + "43019": 1, + "43051": 2, + "43058": 1, + "43063": 1, + "43073": 1, + "43085": 1, + "43087": 1, + "43089": 1, + "43090": 1, + "43094": 1, + "43099": 2, + "43100": 1, + "43103": 1, + "43115": 1, + "43119": 1, + "43121": 1, + "43127": 2, + "43147": 1, + "43149": 1, + "43150": 1, + "43154": 1, + "43157": 1, + "43174": 1, + "43177": 1, + "43183": 1, + "43190": 2, + "43192": 2, + "43197": 1, + "43211": 1, + "43215": 2, + "43219": 1, + "43225": 1, + "43232": 2, + "43237": 1, + "43240": 1, + "43246": 1, + "43248": 1, + "43254": 1, + "43255": 1, + "43259": 1, + "43260": 1, + "43268": 1, + "43275": 1, + "43283": 2, + "43284": 1, + "43285": 1, + "43287": 1, + "43291": 1, + "43295": 1, + "43301": 1, + "43306": 1, + "43308": 1, + "43312": 1, + "43314": 1, + "43317": 1, + "43319": 1, + "43320": 3, + "43325": 1, + "43326": 2, + "43328": 1, + "43333": 1, + "43336": 1, + "43338": 1, + "43340": 1, + "43341": 1, + "43346": 1, + "43350": 1, + "43351": 2, + "43355": 1, + "43356": 2, + "43361": 1, + "43367": 1, + "43369": 2, + "43370": 1, + "43374": 1, + "43375": 1, + "43376": 1, + "43378": 1, + "43381": 1, + "43386": 1, + "43388": 2, + "43389": 1, + "43396": 1, + "43397": 1, + "43400": 1, + "43405": 1, + "43411": 1, + "43413": 1, + "43414": 2, + "43417": 1, + "43419": 1, + "43420": 1, + "43421": 1, + "43423": 1, + "43424": 2, + "43426": 2, + "43429": 1, + "43431": 1, + "43432": 1, + "43433": 1, + "43434": 2, + "43435": 1, + "43438": 1, + "43439": 1, + "43440": 2, + "43442": 1, + "43445": 1, + "43447": 1, + "43448": 1, + "43449": 1, + "43450": 2, + "43452": 1, + "43454": 1, + "43455": 1, + "43459": 3, + "43461": 1, + "43463": 1, + "43469": 1, + "43474": 1, + "43477": 2, + "43479": 1, + "43482": 1, + "43483": 1, + "43488": 1, + "43489": 1, + "43490": 3, + "43492": 1, + "43493": 1, + "43494": 2, + "43495": 2, + "43497": 2, + "43501": 2, + "43503": 2, + "43504": 2, + "43505": 2, + "43508": 2, + "43511": 1, + "43512": 1, + "43517": 1, + "43528": 1, + "43534": 1, + "43536": 1, + "43548": 1, + "43563": 1, + "43567": 1, + "43570": 1, + "43572": 1, + "43585": 2, + "43597": 2, + "43598": 1, + "43600": 1, + "43601": 1, + "43605": 2, + "43606": 1, + "43610": 1, + "43613": 1, + "43615": 1, + "43616": 1, + "43622": 1, + "43625": 1, + "43632": 1, + "43633": 1, + "43635": 1, + "43636": 1, + "43640": 1, + "43644": 1, + "43650": 1, + "43654": 1, + "43658": 1, + "43661": 1, + "43672": 1, + "43674": 1, + "43675": 1, + "43677": 1, + "43682": 1, + "43687": 1, + "43690": 1, + "43691": 1, + "43694": 1, + "43695": 1, + "43703": 1, + "43704": 2, + "43705": 1, + "43710": 1, + "43712": 1, + "43713": 3, + "43716": 1, + "43720": 1, + "43726": 1, + "43738": 1, + "43785": 1, + "43820": 1, + "43822": 1, + "43891": 1, + "43905": 1, + "43952": 1, + "43964": 1, + "43986": 1, + "44047": 1, + "44052": 1, + "44122": 1, + "44145": 1, + "44192": 1, + "44224": 1, + "44279": 1, + "44297": 1, + "44310": 1, + "44370": 1, + "44382": 1, + "44439": 1, + "44453": 1, + "44473": 1, + "44496": 1, + "44533": 1, + "44555": 1, + "44558": 1, + "44599": 1, + "44614": 1, + "44627": 1, + "44637": 1, + "44638": 1, + "44663": 1, + "44725": 1, + "44727": 1, + "44736": 1, + "44776": 1, + "44798": 1, + "44821": 1, + "44847": 1, + "44864": 1, + "44895": 1, + "44908": 1, + "44944": 1, + "44947": 1, + "44954": 1, + "44972": 1, + "45008": 1, + "45068": 1, + "45072": 1, + "45088": 1, + "45089": 1, + "45134": 1, + "45150": 1, + "45170": 1, + "45201": 1, + "45231": 1, + "45236": 1, + "45250": 1, + "45291": 2, + "45303": 1, + "45331": 1, + "45371": 1, + "45394": 1, + "45413": 1, + "45414": 1, + "45433": 1, + "45471": 1, + "45475": 1, + "45487": 1, + "45513": 1, + "45565": 1, + "45573": 1, + "45578": 1, + "45601": 1, + "45646": 1, + "45670": 1, + "45678": 1, + "45679": 1, + "45708": 1, + "45754": 1, + "45757": 1, + "45768": 1, + "45774": 1, + "45818": 1, + "45829": 1, + "45850": 1, + "45856": 1, + "45892": 1, + "45906": 1, + "45920": 1, + "45929": 1, + "45950": 1, + "45953": 1, + "45996": 2, + "46011": 1, + "46015": 1, + "46051": 1, + "46061": 1, + "46084": 1, + "46093": 1, + "46108": 1, + "46130": 1, + "46136": 1, + "46144": 1, + "46163": 1, + "46188": 1, + "46208": 1, + "46216": 1, + "46235": 1, + "46261": 1, + "46266": 1, + "46294": 1, + "46309": 1, + "46322": 1, + "46326": 1, + "46372": 1, + "46374": 1, + "46375": 1, + "46409": 1, + "46430": 1, + "46431": 1, + "46447": 1, + "46480": 1, + "46510": 1, + "46511": 1, + "46532": 1, + "46550": 1, + "46573": 1, + "46574": 1, + "46580": 1, + "46627": 1, + "46651": 1, + "46659": 1, + "46666": 1, + "46685": 1, + "46712": 1, + "46737": 1, + "46739": 1, + "46744": 1, + "46775": 1, + "46796": 1, + "46817": 1, + "46827": 1, + "46847": 1, + "46850": 1, + "46864": 1, + "46886": 1, + "46897": 1, + "46916": 1, + "46926": 1, + "46943": 1, + "46954": 1, + "46964": 1, + "47000": 1, + "47008": 1, + "47009": 1, + "47046": 1, + "47047": 1, + "47058": 1, + "47061": 1, + "47082": 1, + "47093": 1, + "47102": 1, + "47111": 1, + "47149": 1, + "47163": 1, + "47200": 1, + "47220": 1, + "47223": 1, + "47262": 1, + "47320": 1, + "47351": 1, + "47366": 1, + "47387": 1, + "47427": 1, + "47467": 1, + "47497": 1, + "47528": 1, + "47558": 1, + "47600": 1, + "47629": 1, + "47635": 1, + "47678": 1, + "47703": 1, + "47762": 1, + "47771": 1, + "47785": 1, + "47830": 1, + "47865": 1, + "47921": 1, + "47937": 1, + "47986": 2, + "47994": 1, + "48055": 1, + "48059": 1, + "48082": 1, + "48095": 1, + "48133": 1, + "48141": 1, + "48147": 1, + "48178": 1, + "48182": 1, + "48188": 1, + "48189": 1, + "48190": 1, + "48191": 1, + "48193": 1, + "48194": 3, + "48196": 3, + "48197": 2, + "48198": 2, + "48199": 2, + "48201": 1, + "48202": 3, + "48204": 1, + "48206": 1, + "48207": 1, + "48215": 1, + "48216": 1, + "48217": 1, + "48220": 1, + "48221": 1, + "48228": 1, + "48229": 1, + "48231": 1, + "48233": 1, + "48235": 2, + "48241": 1, + "48244": 1, + "48248": 1, + "48253": 1, + "48257": 1, + "48260": 1, + "48264": 1, + "48273": 1, + "48274": 1, + "48278": 1, + "48279": 1, + "48290": 1, + "48291": 2, + "48294": 1, + "48301": 1, + "48307": 1, + "48310": 1, + "48317": 1, + "48319": 1, + "48324": 1, + "48329": 1, + "48333": 2, + "48334": 1, + "48342": 1, + "48345": 1, + "48359": 1, + "48363": 1, + "48366": 2, + "48370": 1, + "48372": 1, + "48378": 1, + "48379": 1, + "48385": 1, + "48389": 1, + "48394": 1, + "48396": 1, + "48400": 2, + "48401": 1, + "48404": 1, + "48410": 1, + "48411": 1, + "48412": 1, + "48415": 1, + "48421": 1, + "48423": 1, + "48424": 1, + "48427": 1, + "48428": 1, + "48434": 1, + "48435": 1, + "48442": 1, + "48444": 1, + "48451": 2, + "48462": 1, + "48469": 1, + "48473": 1, + "48474": 1, + "48475": 2, + "48477": 1, + "48478": 1, + "48480": 1, + "48481": 1, + "48492": 1, + "48500": 1, + "48502": 1, + "48507": 1, + "48509": 1, + "48511": 1, + "48513": 1, + "48514": 1, + "48516": 2, + "48518": 2, + "48519": 2, + "48520": 1, + "48521": 1, + "48523": 1, + "48528": 1, + "48531": 2, + "48532": 2, + "48535": 1, + "48537": 1, + "48538": 1, + "48542": 1, + "48546": 2, + "48552": 1, + "48555": 2, + "48556": 1, + "48558": 1, + "48559": 1, + "48562": 1, + "48564": 1, + "48565": 2, + "48566": 1, + "48570": 1, + "48571": 3, + "48572": 1, + "48573": 3, + "48575": 2, + "48577": 1, + "48579": 2, + "48580": 3, + "48581": 1, + "48582": 1, + "48584": 1, + "48588": 4, + "48591": 1, + "48592": 2, + "48593": 4, + "48595": 1, + "48597": 1, + "48603": 1, + "48608": 1, + "48611": 1, + "48612": 2, + "48613": 2, + "48614": 1, + "48616": 1, + "48620": 3, + "48624": 1, + "48625": 1, + "48626": 1, + "48627": 2, + "48629": 1, + "48631": 1, + "48632": 1, + "48634": 2, + "48635": 1, + "48636": 1, + "48638": 2, + "48640": 1, + "48643": 2, + "48644": 1, + "48647": 2, + "48648": 1, + "48652": 2, + "48653": 1, + "48655": 1, + "48662": 1, + "48664": 2, + "48668": 1, + "48674": 1, + "48679": 1, + "48702": 1, + "48713": 1, + "48727": 1, + "48729": 1, + "48757": 1, + "48760": 1, + "48769": 1, + "48776": 1, + "48778": 1, + "48782": 1, + "48798": 1, + "48811": 2, + "48815": 1, + "48822": 1, + "48828": 1, + "48832": 1, + "48855": 1, + "48865": 1, + "48869": 1, + "48889": 1, + "48890": 1, + "48895": 1, + "48898": 1, + "48925": 1, + "48928": 1, + "48941": 1, + "48945": 1, + "48949": 1, + "48950": 1, + "48965": 1, + "48966": 1, + "48974": 1, + "48976": 1, + "48979": 1, + "48981": 1, + "48984": 2, + "48989": 1, + "48990": 2, + "48991": 1, + "48994": 2, + "48996": 2, + "48997": 1, + "48999": 4, + "49002": 2, + "49004": 1, + "49006": 1, + "49008": 1, + "49009": 1, + "49010": 1, + "49011": 2, + "49012": 3, + "49013": 4, + "49014": 2, + "49015": 1, + "49016": 1, + "49017": 2, + "49018": 4, + "49019": 1, + "49020": 2, + "49021": 5, + "49022": 1, + "49025": 3, + "49026": 3, + "49027": 2, + "49029": 2, + "49030": 2, + "49031": 3, + "49033": 2, + "49034": 1, + "49035": 2, + "49036": 1, + "49037": 4, + "49038": 2, + "49039": 2, + "49041": 2, + "49043": 3, + "49044": 1, + "49045": 1, + "49047": 1, + "49048": 2, + "49049": 1, + "49050": 1, + "49051": 1, + "49052": 1, + "49053": 1, + "49054": 1, + "49056": 1, + "49061": 1, + "49064": 2, + "49065": 1, + "49066": 1, + "49067": 1, + "49069": 2, + "49070": 1, + "49071": 1, + "49072": 2, + "49075": 1, + "49076": 1, + "49078": 2, + "49079": 2, + "49080": 1, + "49081": 1, + "49083": 2, + "49084": 1, + "49089": 2, + "49090": 2, + "49092": 2, + "49093": 2, + "49096": 2, + "49098": 1, + "49099": 2, + "49100": 1, + "49101": 2, + "49104": 1, + "49108": 1, + "49111": 1, + "49114": 1, + "49117": 2, + "49120": 1, + "49230": 1, + "65536": 1000 + }, + "started": "2020-09-07T18:46:24.176Z", + "trafficStats": { + "incomingCompressionRatio": 0.8504757537841797, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 111473558, + "incomingOctetsWireLevel": 111487558, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.00012559032160792787, + "outgoingCompressionRatio": 0.8504757919311523, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 111473563, + "outgoingOctetsWireLevel": 111489563, + "outgoingWebSocketFrames": 4000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.00014353178968541625, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 3000, + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "9763": 1, + "9779": 1, + "9785": 1, + "9804": 1, + "9807": 1, + "9810": 1, + "9819": 2, + "9822": 1, + "9824": 2, + "9826": 1, + "9849": 1, + "9850": 1, + "9857": 1, + "9860": 1, + "9862": 1, + "9863": 2, + "9867": 1, + "9878": 1, + "9880": 1, + "9883": 1, + "9884": 1, + "9893": 1, + "9894": 1, + "9895": 1, + "9897": 1, + "9899": 2, + "9906": 1, + "9907": 1, + "9911": 1, + "9912": 1, + "9914": 1, + "9917": 1, + "9918": 1, + "9920": 2, + "9921": 1, + "9926": 1, + "9928": 1, + "9936": 1, + "9941": 1, + "9946": 1, + "9949": 1, + "9952": 1, + "9956": 1, + "9962": 1, + "9963": 1, + "9968": 1, + "9969": 2, + "9971": 1, + "9977": 2, + "9995": 1, + "9996": 1, + "10000": 1, + "10003": 1, + "10005": 1, + "10007": 1, + "10009": 1, + "10011": 2, + "10014": 1, + "10015": 1, + "10016": 2, + "10021": 1, + "10022": 1, + "10028": 1, + "10032": 1, + "10043": 2, + "10044": 1, + "10046": 2, + "10048": 1, + "10052": 2, + "10055": 1, + "10056": 2, + "10058": 1, + "10060": 1, + "10061": 2, + "10065": 1, + "10069": 3, + "10073": 2, + "10084": 2, + "10085": 1, + "10091": 1, + "10092": 1, + "10095": 2, + "10097": 1, + "10098": 2, + "10099": 1, + "10104": 2, + "10105": 1, + "10107": 1, + "10109": 1, + "10110": 1, + "10114": 2, + "10115": 1, + "10119": 1, + "10120": 3, + "10128": 2, + "10129": 1, + "10130": 1, + "10133": 1, + "10134": 2, + "10137": 1, + "10142": 2, + "10148": 1, + "10149": 1, + "10150": 1, + "10151": 1, + "10154": 1, + "10156": 2, + "10157": 1, + "10158": 2, + "10159": 1, + "10165": 1, + "10166": 1, + "10167": 1, + "10170": 2, + "10173": 1, + "10177": 2, + "10178": 1, + "10179": 1, + "10183": 1, + "10186": 1, + "10187": 1, + "10198": 1, + "10199": 1, + "10201": 3, + "10202": 1, + "10205": 1, + "10206": 1, + "10208": 1, + "10210": 1, + "10213": 2, + "10215": 1, + "10220": 1, + "10226": 1, + "10234": 1, + "10239": 1, + "10241": 1, + "10273": 2, + "10280": 1, + "10285": 1, + "10295": 1, + "10307": 1, + "10309": 1, + "10311": 1, + "10312": 1, + "10316": 1, + "10321": 2, + "10322": 1, + "10325": 1, + "10337": 1, + "10341": 1, + "10343": 1, + "10349": 2, + "10369": 1, + "10371": 1, + "10372": 1, + "10376": 1, + "10379": 1, + "10396": 1, + "10399": 1, + "10405": 1, + "10412": 2, + "10414": 2, + "10419": 1, + "10433": 1, + "10437": 2, + "10441": 1, + "10447": 1, + "10454": 2, + "10459": 1, + "10462": 1, + "10468": 1, + "10470": 1, + "10476": 1, + "10477": 1, + "10481": 1, + "10482": 1, + "10490": 1, + "10497": 1, + "10505": 2, + "10506": 1, + "10507": 1, + "10509": 1, + "10513": 1, + "10517": 1, + "10523": 1, + "10528": 1, + "10530": 1, + "10534": 1, + "10536": 1, + "10539": 1, + "10541": 1, + "10542": 3, + "10547": 1, + "10548": 2, + "10550": 1, + "10555": 1, + "10558": 1, + "10560": 1, + "10562": 1, + "10563": 1, + "10568": 1, + "10572": 1, + "10573": 2, + "10577": 1, + "10578": 2, + "10583": 1, + "10589": 1, + "10591": 2, + "10592": 1, + "10596": 1, + "10597": 1, + "10598": 1, + "10600": 1, + "10603": 1, + "10608": 1, + "10610": 2, + "10611": 1, + "10618": 1, + "10619": 1, + "10622": 1, + "10627": 1, + "10633": 1, + "10635": 1, + "10636": 2, + "10639": 1, + "10641": 1, + "10642": 1, + "10643": 1, + "10645": 1, + "10646": 2, + "10648": 2, + "10651": 1, + "10653": 1, + "10654": 1, + "10655": 1, + "10656": 2, + "10657": 1, + "10660": 1, + "10661": 1, + "10662": 2, + "10664": 1, + "10667": 1, + "10669": 1, + "10670": 1, + "10671": 1, + "10672": 1, + "10674": 1, + "10676": 1, + "10677": 2, + "10681": 3, + "10683": 1, + "10685": 1, + "10691": 1, + "10696": 1, + "10699": 2, + "10701": 1, + "10704": 1, + "10705": 1, + "10710": 1, + "10711": 1, + "10712": 3, + "10714": 1, + "10715": 1, + "10716": 2, + "10717": 2, + "10719": 2, + "10723": 2, + "10725": 2, + "10726": 2, + "10727": 2, + "10730": 2, + "10733": 1, + "10734": 1, + "10739": 1, + "10750": 1, + "10756": 1, + "10758": 1, + "10770": 1, + "10785": 1, + "10789": 1, + "10792": 1, + "10794": 1, + "10807": 2, + "10819": 2, + "10820": 1, + "10822": 1, + "10823": 1, + "10827": 2, + "10828": 1, + "10832": 1, + "10835": 1, + "10837": 1, + "10838": 1, + "10844": 1, + "10847": 1, + "10854": 1, + "10855": 1, + "10857": 1, + "10858": 1, + "10862": 1, + "10866": 1, + "10872": 1, + "10876": 1, + "10880": 1, + "10883": 1, + "10894": 1, + "10896": 1, + "10897": 1, + "10899": 1, + "10904": 1, + "10909": 1, + "10912": 1, + "10913": 1, + "10916": 1, + "10917": 1, + "10925": 1, + "10926": 2, + "10927": 1, + "10932": 1, + "10934": 1, + "10935": 3, + "10938": 1, + "10942": 1, + "10948": 1, + "10960": 1, + "11007": 1, + "11042": 1, + "11044": 1, + "11113": 1, + "11127": 1, + "11174": 1, + "11186": 1, + "11208": 1, + "11269": 1, + "11274": 1, + "11344": 1, + "11367": 1, + "11414": 1, + "11446": 1, + "11501": 1, + "11519": 1, + "11532": 1, + "11592": 1, + "11604": 1, + "11661": 1, + "11675": 1, + "11695": 1, + "11718": 1, + "11755": 1, + "11777": 1, + "11780": 1, + "11821": 1, + "11836": 1, + "11849": 1, + "11859": 1, + "11860": 1, + "11885": 1, + "11947": 1, + "11949": 1, + "11958": 1, + "11998": 1, + "12020": 1, + "12043": 1, + "12069": 1, + "12086": 1, + "12117": 1, + "12130": 1, + "12166": 1, + "12169": 1, + "12176": 1, + "12194": 1, + "12230": 1, + "12290": 1, + "12294": 1, + "12310": 1, + "12311": 1, + "12356": 1, + "12372": 1, + "12392": 1, + "12423": 1, + "12453": 1, + "12458": 1, + "12472": 1, + "12513": 2, + "12525": 1, + "12553": 1, + "12593": 1, + "12616": 1, + "12635": 1, + "12636": 1, + "12655": 1, + "12693": 1, + "12697": 1, + "12709": 1, + "12735": 1, + "12787": 1, + "12795": 1, + "12800": 1, + "12823": 1, + "12868": 1, + "12892": 1, + "12900": 1, + "12901": 1, + "12930": 1, + "12976": 1, + "12979": 1, + "12990": 1, + "12996": 1, + "13040": 1, + "13051": 1, + "13072": 1, + "13078": 1, + "13114": 1, + "13128": 1, + "13142": 1, + "13151": 1, + "13172": 1, + "13175": 1, + "13218": 2, + "13233": 1, + "13237": 1, + "13273": 1, + "13283": 1, + "13306": 1, + "13315": 1, + "13330": 1, + "13352": 1, + "13358": 1, + "13366": 1, + "13385": 1, + "13410": 1, + "13430": 1, + "13438": 1, + "13457": 1, + "13483": 1, + "13488": 1, + "13516": 1, + "13531": 1, + "13544": 1, + "13548": 1, + "13594": 1, + "13596": 1, + "13597": 1, + "13631": 1, + "13652": 1, + "13653": 1, + "13669": 1, + "13702": 1, + "13732": 1, + "13733": 1, + "13754": 1, + "13772": 1, + "13795": 1, + "13796": 1, + "13802": 1, + "13849": 1, + "13873": 1, + "13881": 1, + "13888": 1, + "13907": 1, + "13934": 1, + "13959": 1, + "13961": 1, + "13966": 1, + "13997": 1, + "14018": 1, + "14039": 1, + "14049": 1, + "14069": 1, + "14072": 1, + "14086": 1, + "14108": 1, + "14119": 1, + "14138": 1, + "14148": 1, + "14165": 1, + "14176": 1, + "14186": 1, + "14222": 1, + "14230": 1, + "14231": 1, + "14268": 1, + "14269": 1, + "14280": 1, + "14283": 1, + "14304": 1, + "14315": 1, + "14324": 1, + "14333": 1, + "14371": 1, + "14385": 1, + "14422": 1, + "14442": 1, + "14445": 1, + "14484": 1, + "14542": 1, + "14573": 1, + "14588": 1, + "14609": 1, + "14649": 1, + "14689": 1, + "14719": 1, + "14750": 1, + "14780": 1, + "14822": 1, + "14851": 1, + "14857": 1, + "14900": 1, + "14925": 1, + "14984": 1, + "14993": 1, + "15007": 1, + "15052": 1, + "15087": 1, + "15143": 1, + "15159": 1, + "15208": 2, + "15216": 1, + "15277": 1, + "15281": 1, + "15304": 1, + "15317": 1, + "15355": 1, + "15363": 1, + "15369": 1, + "15400": 1, + "15404": 1, + "15410": 1, + "15411": 1, + "15412": 1, + "15413": 1, + "15415": 1, + "15416": 3, + "15418": 3, + "15419": 2, + "15420": 2, + "15421": 2, + "15423": 1, + "15424": 3, + "15426": 1, + "15428": 1, + "15429": 1, + "15437": 1, + "15438": 1, + "15439": 1, + "15442": 1, + "15443": 1, + "15450": 1, + "15451": 1, + "15453": 1, + "15455": 1, + "15457": 2, + "15463": 1, + "15466": 1, + "15470": 1, + "15475": 1, + "15479": 1, + "15482": 1, + "15486": 1, + "15495": 1, + "15496": 1, + "15500": 1, + "15501": 1, + "15512": 1, + "15513": 2, + "15516": 1, + "15523": 1, + "15529": 1, + "15532": 1, + "15539": 1, + "15541": 1, + "15546": 1, + "15551": 1, + "15555": 2, + "15556": 1, + "15564": 1, + "15567": 1, + "15581": 1, + "15585": 1, + "15588": 2, + "15592": 1, + "15594": 1, + "15600": 1, + "15601": 1, + "15607": 1, + "15611": 1, + "15616": 1, + "15618": 1, + "15622": 2, + "15623": 1, + "15626": 1, + "15632": 1, + "15633": 1, + "15634": 1, + "15637": 1, + "15643": 1, + "15645": 1, + "15646": 1, + "15649": 1, + "15650": 1, + "15656": 1, + "15657": 1, + "15664": 1, + "15666": 1, + "15673": 2, + "15684": 1, + "15691": 1, + "15695": 1, + "15696": 1, + "15697": 2, + "15699": 1, + "15700": 1, + "15702": 1, + "15703": 1, + "15714": 1, + "15722": 1, + "15724": 1, + "15729": 1, + "15731": 1, + "15733": 1, + "15735": 1, + "15736": 1, + "15738": 2, + "15740": 2, + "15741": 2, + "15742": 1, + "15743": 1, + "15745": 1, + "15750": 1, + "15753": 2, + "15754": 2, + "15757": 1, + "15759": 1, + "15760": 1, + "15764": 1, + "15768": 2, + "15774": 1, + "15777": 2, + "15778": 1, + "15780": 1, + "15781": 1, + "15784": 1, + "15786": 1, + "15787": 2, + "15788": 1, + "15792": 1, + "15793": 3, + "15794": 1, + "15795": 3, + "15797": 2, + "15799": 1, + "15801": 2, + "15802": 3, + "15803": 1, + "15804": 1, + "15806": 1, + "15810": 4, + "15813": 1, + "15814": 2, + "15815": 4, + "15817": 1, + "15819": 1, + "15825": 1, + "15830": 1, + "15833": 1, + "15834": 2, + "15835": 2, + "15836": 1, + "15838": 1, + "15842": 3, + "15846": 1, + "15847": 1, + "15848": 1, + "15849": 2, + "15851": 1, + "15853": 1, + "15854": 1, + "15856": 2, + "15857": 1, + "15858": 1, + "15860": 2, + "15862": 1, + "15865": 2, + "15866": 1, + "15869": 2, + "15870": 1, + "15874": 2, + "15875": 1, + "15877": 1, + "15884": 1, + "15886": 2, + "15890": 1, + "15896": 1, + "15901": 1, + "15924": 1, + "15935": 1, + "15949": 1, + "15951": 1, + "15979": 1, + "15982": 1, + "15991": 1, + "15998": 1, + "16000": 1, + "16004": 1, + "16020": 1, + "16033": 2, + "16037": 1, + "16044": 1, + "16050": 1, + "16054": 1, + "16077": 1, + "16087": 1, + "16091": 1, + "16111": 1, + "16112": 1, + "16117": 1, + "16120": 1, + "16147": 1, + "16150": 1, + "16163": 1, + "16167": 1, + "16171": 1, + "16172": 1, + "16187": 1, + "16188": 1, + "16196": 1, + "16198": 1, + "16201": 1, + "16203": 1, + "16206": 2, + "16211": 1, + "16212": 2, + "16213": 1, + "16216": 2, + "16218": 2, + "16219": 1, + "16221": 4, + "16224": 2, + "16226": 1, + "16228": 1, + "16230": 1, + "16231": 1, + "16232": 1, + "16233": 2, + "16234": 3, + "16235": 4, + "16236": 2, + "16237": 1, + "16238": 1, + "16239": 2, + "16240": 4, + "16241": 1, + "16242": 2, + "16243": 5, + "16244": 1, + "16247": 3, + "16248": 3, + "16249": 2, + "16251": 2, + "16252": 2, + "16253": 3, + "16255": 2, + "16256": 1, + "16257": 2, + "16258": 1, + "16259": 4, + "16260": 2, + "16261": 2, + "16263": 2, + "16265": 3, + "16266": 1, + "16267": 1, + "16269": 1, + "16270": 2, + "16271": 1, + "16272": 1, + "16273": 1, + "16274": 1, + "16275": 1, + "16276": 1, + "16278": 1, + "16283": 1, + "16286": 2, + "16287": 1, + "16288": 1, + "16289": 1, + "16291": 2, + "16292": 1, + "16293": 1, + "16294": 2, + "16297": 1, + "16298": 1, + "16300": 2, + "16301": 2, + "16302": 1, + "16303": 1, + "16305": 2, + "16306": 1, + "16311": 2, + "16312": 2, + "16314": 2, + "16315": 2, + "16318": 2, + "16320": 1, + "16321": 2, + "16322": 1, + "16323": 2, + "16326": 1, + "16330": 1, + "16333": 1, + "16336": 1, + "16339": 2, + "16342": 1, + "16452": 1, + "32772": 3000 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333337266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88821d3c7b2f1ed4" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "1d3c7b2f" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_2_2.html b/autobahn/client/tungstenite_case_12_2_2.html new file mode 100644 index 0000000..2127eca --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_2.html @@ -0,0 +1,344 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.2.2 : Pass - 135 ms @ 2020-09-07T18:45:06.468Z

+

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=321&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: nozyd3W/B4/yDVTFh6gqYQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: MSLxQjIGDn7YbdknAks3X70/V5A=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
11666
13113
20120
40140
562112
5812696
59159
60160
61161
624248
635315
6410640
65211365
66342244
67392613
68865848
691268694
701299030
7117012070
7219213824
73765548
74191406
76634788
2571257
Total100270025
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
7642
919
16116
36136
522104
5412648
55155
56156
57157
584232
595295
6010600
61211281
62342108
63392457
64865504
651268190
661298514
6717011390
6819213056
69765244
70191330
72634536
2521252
Total100266016
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333231266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882cc9807ddcf70
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6363393830376464
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_2_2.json b/autobahn/client/tungstenite_case_12_2_2.json new file mode 100644 index 0000000..194eaaf --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_2.json @@ -0,0 +1,191 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 321, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 135, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=321&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: nozyd3W/B4/yDVTFh6gqYQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: MSLxQjIGDn7YbdknAks3X70/V5A=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.2.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "11": 6, + "13": 1, + "20": 1, + "40": 1, + "56": 2, + "58": 12, + "59": 1, + "60": 1, + "61": 1, + "62": 4, + "63": 5, + "64": 10, + "65": 21, + "66": 34, + "67": 39, + "68": 86, + "69": 126, + "70": 129, + "71": 170, + "72": 192, + "73": 76, + "74": 19, + "76": 63, + "257": 1 + }, + "started": "2020-09-07T18:45:06.468Z", + "trafficStats": { + "incomingCompressionRatio": 0.99625, + "incomingOctetsAppLevel": 64000, + "incomingOctetsWebSocketLevel": 63760, + "incomingOctetsWireLevel": 69760, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.09410288582183186, + "outgoingCompressionRatio": 0.99625, + "outgoingOctetsAppLevel": 64000, + "outgoingOctetsWebSocketLevel": 63760, + "outgoingOctetsWireLevel": 65760, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.03136762860727729, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "7": 6, + "9": 1, + "16": 1, + "36": 1, + "52": 2, + "54": 12, + "55": 1, + "56": 1, + "57": 1, + "58": 4, + "59": 5, + "60": 10, + "61": 21, + "62": 34, + "63": 39, + "64": 86, + "65": 126, + "66": 129, + "67": 170, + "68": 192, + "69": 76, + "70": 19, + "72": 63, + "252": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333231266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882cc9807ddcf70" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "cc9807dd" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_2_3.html b/autobahn/client/tungstenite_case_12_2_3.html new file mode 100644 index 0000000..efe0a5c --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_3.html @@ -0,0 +1,306 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.2.3 : Fail - 1 ms @ 2020-09-07T18:45:06.603Z

+

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+ +

+ Case Outcome

Echo'ed message length differs from what I sent (got length 247, expected length 256).

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=322&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: oA5CFUfFjB9NOm6x7W6v3g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: /owdR6q4xXavxl7/QITCw82FN84=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + +
Chop SizeCountOctets
818
1901190
2091209
2112422
2571257
2601260
Total71346
+

Octets Transmitted by Chop Size

+ + + + + + + + + +
Chop SizeCountOctets
414
1861186
2051205
2072414
2521252
2661266
Total71327
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
25
81
Total6
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
25
81
Total6
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333232266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 120.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888218826b9b1b6a
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3138383236623962
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_2_3.json b/autobahn/client/tungstenite_case_12_2_3.json new file mode 100644 index 0000000..110c6eb --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_3.json @@ -0,0 +1,136 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "OK", + "case": 322, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=322&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: oA5CFUfFjB9NOm6x7W6v3g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: /owdR6q4xXavxl7/QITCw82FN84=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.2.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Echo'ed message length differs from what I sent (got length 247, expected length 256).", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 5, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "190": 1, + "209": 1, + "211": 2, + "257": 1, + "260": 1 + }, + "started": "2020-09-07T18:45:06.603Z", + "trafficStats": null, + "txFrameStats": { + "2": 5, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "186": 1, + "205": 1, + "207": 2, + "252": 1, + "266": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333232266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 120 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888218826b9b1b6a" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "18826b9b" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_2_4.html b/autobahn/client/tungstenite_case_12_2_4.html new file mode 100644 index 0000000..263bfea --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_4.html @@ -0,0 +1,596 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.2.4 : Pass - 366 ms @ 2020-09-07T18:45:06.605Z

+

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=323&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 81ijMEe7WIqOsoOPLwtj5w==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: JP11t1K/CxQIDdiIP25G8IrL2Qo=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
19357
64164
1101110
1561156
2571257
6061606
6321632
6851685
7301730
7311731
7751775
7781778
78121562
7821782
78321566
78432352
7851785
78621572
7871787
78821576
79053950
79121582
79232376
7951795
7971797
79932397
8001800
80221604
80321606
8041804
80521610
8061806
8081808
8121812
8141814
81554075
8161816
8171817
81821636
8191819
82321646
82521650
82832484
8321832
8331833
8341834
8351835
8361836
8401840
8591859
8621862
8641864
8671867
8681868
8691869
8721872
8731873
8741874
8781878
8811881
8841884
8851885
8891889
8981898
9011901
9021902
90321806
90521810
9061906
91121822
9131913
9141914
91543660
9171917
91821836
91921838
92032760
92232766
92321846
92454620
9251925
92687408
92765562
92821856
92965574
9301930
93154655
93276524
93354665
934109340
9351110285
93632808
93787496
93876566
93998451
94032820
94198469
9421413188
94398487
9441312272
9451312285
946109460
94798523
9481312324
9491312337
9502119950
951109510
9522422848
9532220966
9542321942
9551918145
9562019120
9573634452
9583129698
9593533565
9603432640
9612927869
9623432708
9631413482
9643533740
9652019300
9662524150
9673129977
9682423232
9692322287
9702019400
9711716507
9721211664
9732524325
9741312662
975109750
97687808
9771211724
97843912
979109790
98087840
98143924
98221964
98332949
98432952
98643944
98721974
98832964
9891989
9901990
9931993
99421988
99521990
9971997
99821996
Total1002939212
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
15345
60160
1061106
1521152
2521252
6021602
6281628
6811681
7261726
7271727
7711771
7741774
77721554
7781778
77921558
78032340
7811781
78221564
7831783
78421568
78653930
78721574
78832364
7911791
7931793
79532385
7961796
79821596
79921598
8001800
80121602
8021802
8041804
8081808
8101810
81154055
8121812
8131813
81421628
8151815
81921638
82121642
82432472
8281828
8291829
8301830
8311831
8321832
8361836
8551855
8581858
8601860
8631863
8641864
8651865
8681868
8691869
8701870
8741874
8771877
8801880
8811881
8851885
8941894
8971897
8981898
89921798
90121802
9021902
90721814
9091909
9101910
91143644
9131913
91421828
91521830
91632748
91832754
91921838
92054600
9211921
92287376
92365538
92421848
92565550
9261926
92754635
92876496
92954645
930109300
9311110241
93232796
93387464
93476538
93598415
93632808
93798433
9381413132
93998451
9401312220
9411312233
942109420
94398487
9441312272
9451312285
9462119866
947109470
9482422752
9492220878
9502321850
9511918069
9522019040
9533634308
9543129574
9553533425
9563432504
9572927753
9583432572
9591413426
9603533600
9612019220
9622524050
9633129853
9642423136
9652322195
9662019320
9671716439
9681211616
9692524225
9701312610
971109710
97287776
9731211676
97443896
975109750
97687808
97743908
97821956
97932937
98032940
98243928
98321966
98432952
9851985
9861986
9891989
99021980
99121982
9931993
99421988
Total1002935203
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333233266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 240.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882e8fdd388eb15
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6538666464333838
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_2_4.json b/autobahn/client/tungstenite_case_12_2_4.json new file mode 100644 index 0000000..403c0f6 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_4.json @@ -0,0 +1,443 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 323, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 366, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=323&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 81ijMEe7WIqOsoOPLwtj5w==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: JP11t1K/CxQIDdiIP25G8IrL2Qo=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.2.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "19": 3, + "64": 1, + "110": 1, + "156": 1, + "257": 1, + "606": 1, + "632": 1, + "685": 1, + "730": 1, + "731": 1, + "775": 1, + "778": 1, + "781": 2, + "782": 1, + "783": 2, + "784": 3, + "785": 1, + "786": 2, + "787": 1, + "788": 2, + "790": 5, + "791": 2, + "792": 3, + "795": 1, + "797": 1, + "799": 3, + "800": 1, + "802": 2, + "803": 2, + "804": 1, + "805": 2, + "806": 1, + "808": 1, + "812": 1, + "814": 1, + "815": 5, + "816": 1, + "817": 1, + "818": 2, + "819": 1, + "823": 2, + "825": 2, + "828": 3, + "832": 1, + "833": 1, + "834": 1, + "835": 1, + "836": 1, + "840": 1, + "859": 1, + "862": 1, + "864": 1, + "867": 1, + "868": 1, + "869": 1, + "872": 1, + "873": 1, + "874": 1, + "878": 1, + "881": 1, + "884": 1, + "885": 1, + "889": 1, + "898": 1, + "901": 1, + "902": 1, + "903": 2, + "905": 2, + "906": 1, + "911": 2, + "913": 1, + "914": 1, + "915": 4, + "917": 1, + "918": 2, + "919": 2, + "920": 3, + "922": 3, + "923": 2, + "924": 5, + "925": 1, + "926": 8, + "927": 6, + "928": 2, + "929": 6, + "930": 1, + "931": 5, + "932": 7, + "933": 5, + "934": 10, + "935": 11, + "936": 3, + "937": 8, + "938": 7, + "939": 9, + "940": 3, + "941": 9, + "942": 14, + "943": 9, + "944": 13, + "945": 13, + "946": 10, + "947": 9, + "948": 13, + "949": 13, + "950": 21, + "951": 10, + "952": 24, + "953": 22, + "954": 23, + "955": 19, + "956": 20, + "957": 36, + "958": 31, + "959": 35, + "960": 34, + "961": 29, + "962": 34, + "963": 14, + "964": 35, + "965": 20, + "966": 25, + "967": 31, + "968": 24, + "969": 23, + "970": 20, + "971": 17, + "972": 12, + "973": 25, + "974": 13, + "975": 10, + "976": 8, + "977": 12, + "978": 4, + "979": 10, + "980": 8, + "981": 4, + "982": 2, + "983": 3, + "984": 3, + "986": 4, + "987": 2, + "988": 3, + "989": 1, + "990": 1, + "993": 1, + "994": 2, + "995": 2, + "997": 1, + "998": 2 + }, + "started": "2020-09-07T18:45:06.605Z", + "trafficStats": { + "incomingCompressionRatio": 0.9091376953125, + "incomingOctetsAppLevel": 1024000, + "incomingOctetsWebSocketLevel": 930957, + "incomingOctetsWireLevel": 938947, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.008582566112076069, + "outgoingCompressionRatio": 0.9091376953125, + "outgoingOctetsAppLevel": 1024000, + "outgoingOctetsWebSocketLevel": 930957, + "outgoingOctetsWireLevel": 934947, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0042859122386963095, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "15": 3, + "60": 1, + "106": 1, + "152": 1, + "252": 1, + "602": 1, + "628": 1, + "681": 1, + "726": 1, + "727": 1, + "771": 1, + "774": 1, + "777": 2, + "778": 1, + "779": 2, + "780": 3, + "781": 1, + "782": 2, + "783": 1, + "784": 2, + "786": 5, + "787": 2, + "788": 3, + "791": 1, + "793": 1, + "795": 3, + "796": 1, + "798": 2, + "799": 2, + "800": 1, + "801": 2, + "802": 1, + "804": 1, + "808": 1, + "810": 1, + "811": 5, + "812": 1, + "813": 1, + "814": 2, + "815": 1, + "819": 2, + "821": 2, + "824": 3, + "828": 1, + "829": 1, + "830": 1, + "831": 1, + "832": 1, + "836": 1, + "855": 1, + "858": 1, + "860": 1, + "863": 1, + "864": 1, + "865": 1, + "868": 1, + "869": 1, + "870": 1, + "874": 1, + "877": 1, + "880": 1, + "881": 1, + "885": 1, + "894": 1, + "897": 1, + "898": 1, + "899": 2, + "901": 2, + "902": 1, + "907": 2, + "909": 1, + "910": 1, + "911": 4, + "913": 1, + "914": 2, + "915": 2, + "916": 3, + "918": 3, + "919": 2, + "920": 5, + "921": 1, + "922": 8, + "923": 6, + "924": 2, + "925": 6, + "926": 1, + "927": 5, + "928": 7, + "929": 5, + "930": 10, + "931": 11, + "932": 3, + "933": 8, + "934": 7, + "935": 9, + "936": 3, + "937": 9, + "938": 14, + "939": 9, + "940": 13, + "941": 13, + "942": 10, + "943": 9, + "944": 13, + "945": 13, + "946": 21, + "947": 10, + "948": 24, + "949": 22, + "950": 23, + "951": 19, + "952": 20, + "953": 36, + "954": 31, + "955": 35, + "956": 34, + "957": 29, + "958": 34, + "959": 14, + "960": 35, + "961": 20, + "962": 25, + "963": 31, + "964": 24, + "965": 23, + "966": 20, + "967": 17, + "968": 12, + "969": 25, + "970": 13, + "971": 10, + "972": 8, + "973": 12, + "974": 4, + "975": 10, + "976": 8, + "977": 4, + "978": 2, + "979": 3, + "980": 3, + "982": 4, + "983": 2, + "984": 3, + "985": 1, + "986": 1, + "989": 1, + "990": 2, + "991": 2, + "993": 1, + "994": 2 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333233266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 240 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882e8fdd388eb15" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "e8fdd388" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_2_5.html b/autobahn/client/tungstenite_case_12_2_5.html new file mode 100644 index 0000000..7e90faa --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_5.html @@ -0,0 +1,970 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.2.5 : Pass - 664 ms @ 2020-09-07T18:45:06.972Z

+

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=324&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: D3/74KWie/8a8BIZQ1QkiA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 8gqfb+Nbxs/aA84T7wdfRwSyFN0=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
158011580
159611596
165311653
165911659
168411684
170211702
173711737
174611746
180911809
182111821
182811828
194011940
198211982
214912149
227912279
235112351
242512425
257812578
272112721
273312733
291912919
294612946
294812948
294912949
295225904
295312953
295412954
295512955
295625912
295712957
295812958
296012960
296112961
296512965
297912979
298212982
298412984
298612986
299512995
299612996
299912999
300013000
300239006
300326006
300426008
300513005
300613006
3007412028
300813008
301126022
301313013
301613016
302813028
303513035
303813038
304113041
304513045
304926098
305013050
306413064
306713067
307813078
308013080
308213082
308313083
308713087
309013090
309513095
309613096
310313103
310613106
310713107
311013110
311213112
311613116
311813118
313213132
313713137
315113151
316513165
318613186
318813188
320913209
321213212
321413214
322926458
323513235
325413254
327313273
327713277
327913279
328113281
328313283
328513285
329413294
329513295
330613306
331713317
332413324
332513325
333313333
334126682
334813348
335213352
335713357
336613366
339113391
339813398
340813408
341726834
343113431
343313433
343413434
343713437
345413454
345713457
346426928
346513465
346613466
346813468
347213472
347613476
3477310431
347813478
347913479
348213482
348426968
348513485
348613486
348726974
348813488
349013490
349213492
349313493
349413494
349613496
349713497
3498413992
349913499
350027000
350113501
3503310509
350427008
3505310515
350613506
350727014
350827016
351113511
351227024
351613516
351713517
351813518
351927038
352013520
3521310563
352213522
3523310569
352427048
3525310575
352727054
352827056
3529310587
353027060
353113531
3532414128
3533414132
353427068
3535310605
353613536
3537724759
3538414152
353913539
354027080
354113541
354213542
354313543
3544414176
354613546
3547414188
354813548
3549310647
355013550
355113551
3552310656
355313553
355513555
355613556
355827116
356227124
3563310689
3564414256
3565621390
3566517830
356713567
356813568
3569310707
3570517850
3571414284
3572517860
3573310719
357427148
3575517875
3576310728
3577414308
3578517890
3579310737
3580414320
3581932229
3582414328
3583828664
3584310752
3585725095
3586621516
3587414348
3588725116
3589621534
3590517950
3591828728
3592517960
3593414372
35941657504
3595828760
3596828768
3597725179
3598725186
3599414396
3600518000
3601621606
3602828816
36031036030
3604828832
3605828840
3606828848
3607621642
3608725256
36091346917
3610518050
3611621666
3612518060
36131346969
3614518070
3615518075
36161036160
3617621702
3618828944
3619518095
3620310860
3621621726
3622725354
36231036230
3624518120
3625932625
3626621756
3627725389
3628932652
3629932661
3630932670
3631414524
3632932688
3633932697
3634725438
3635725445
3636932724
36371036370
3638932742
3639725473
3640621840
3641518205
3642621852
3643414572
3644829152
3645518225
3646518230
3647310941
3648621888
3649725543
36501036500
3651518255
36521036520
3653725571
36541036540
365527310
3656621936
3657725599
3658621948
3659932931
366027320
3661518305
3662621972
366327326
3664414656
366513665
366627332
366727334
3668518340
3669725683
3670518350
3671414684
3672414688
3673622038
367427348
3675829400
367627352
3677622062
3678414712
367927358
368027360
368227364
368313683
368413684
368513685
368613686
368727374
369213692
369413694
369513695
369727394
369813698
369913699
3702311106
370313703
370513705
370627412
370927418
371113711
371413714
371813718
371913719
372313723
372813728
372927458
373113731
373313733
373713737
373927478
374113741
Total10023524869
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
157611576
159211592
164911649
165511655
168011680
169811698
173311733
174211742
180511805
181711817
182411824
193611936
197811978
214512145
227512275
234712347
242112421
257412574
271712717
272912729
291512915
294212942
294412944
294512945
294825896
294912949
295012950
295112951
295225904
295312953
295412954
295612956
295712957
296112961
297512975
297812978
298012980
298212982
299112991
299212992
299512995
299612996
299838994
299925998
300026000
300113001
300213002
3003412012
300413004
300726014
300913009
301213012
302413024
303113031
303413034
303713037
304113041
304526090
304613046
306013060
306313063
307413074
307613076
307813078
307913079
308313083
308613086
309113091
309213092
309913099
310213102
310313103
310613106
310813108
311213112
311413114
312813128
313313133
314713147
316113161
318213182
318413184
320513205
320813208
321013210
322526450
323113231
325013250
326913269
327313273
327513275
327713277
327913279
328113281
329013290
329113291
330213302
331313313
332013320
332113321
332913329
333726674
334413344
334813348
335313353
336213362
338713387
339413394
340413404
341326826
342713427
342913429
343013430
343313433
345013450
345313453
346026920
346113461
346213462
346413464
346813468
347213472
3473310419
347413474
347513475
347813478
348026960
348113481
348213482
348326966
348413484
348613486
348813488
348913489
349013490
349213492
349313493
3494413976
349513495
349626992
349713497
3499310497
350027000
3501310503
350213502
350327006
350427008
350713507
350827016
351213512
351313513
351413514
351527030
351613516
3517310551
351813518
3519310557
352027040
3521310563
352327046
352427048
3525310575
352627052
352713527
3528414112
3529414116
353027060
3531310593
353213532
3533724731
3534414136
353513535
353627072
353713537
353813538
353913539
3540414160
354213542
3543414172
354413544
3545310635
354613546
354713547
3548310644
354913549
355113551
355213552
355427108
355827116
3559310677
3560414240
3561621366
3562517810
356313563
356413564
3565310695
3566517830
3567414268
3568517840
3569310707
357027140
3571517855
3572310716
3573414292
3574517870
3575310725
3576414304
3577932193
3578414312
3579828632
3580310740
3581725067
3582621492
3583414332
3584725088
3585621510
3586517930
3587828696
3588517940
3589414356
35901657440
3591828728
3592828736
3593725151
3594725158
3595414380
3596517980
3597621582
3598828784
35991035990
3600828800
3601828808
3602828816
3603621618
3604725228
36051346865
3606518030
3607621642
3608518040
36091346917
3610518050
3611518055
36121036120
3613621678
3614828912
3615518075
3616310848
3617621702
3618725326
36191036190
3620518100
3621932589
3622621732
3623725361
3624932616
3625932625
3626932634
3627414508
3628932652
3629932661
3630725410
3631725417
3632932688
36331036330
3634932706
3635725445
3636621816
3637518185
3638621828
3639414556
3640829120
3641518205
3642518210
3643310929
3644621864
3645725515
36461036460
3647518235
36481036480
3649725543
36501036500
365127302
3652621912
3653725571
3654621924
3655932895
365627312
3657518285
3658621948
365927318
3660414640
366113661
366227324
366327326
3664518320
3665725655
3666518330
3667414668
3668414672
3669622014
367027340
3671829368
367227344
3673622038
3674414696
367527350
367627352
367827356
367913679
368013680
368113681
368213682
368327366
368813688
369013690
369113691
369327386
369413694
369513695
3698311094
369913699
370113701
370227404
370527410
370713707
371013710
371413714
371513715
371913719
372413724
372527450
372713727
372913729
373313733
373527470
373713737
Total10023520860
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333234266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88822ea8cae62d40
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3265613863616536
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_2_5.json b/autobahn/client/tungstenite_case_12_2_5.json new file mode 100644 index 0000000..d7879ea --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_5.json @@ -0,0 +1,817 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 324, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 664, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=324&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: D3/74KWie/8a8BIZQ1QkiA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 8gqfb+Nbxs/aA84T7wdfRwSyFN0=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.2.5", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "1580": 1, + "1596": 1, + "1653": 1, + "1659": 1, + "1684": 1, + "1702": 1, + "1737": 1, + "1746": 1, + "1809": 1, + "1821": 1, + "1828": 1, + "1940": 1, + "1982": 1, + "2149": 1, + "2279": 1, + "2351": 1, + "2425": 1, + "2578": 1, + "2721": 1, + "2733": 1, + "2919": 1, + "2946": 1, + "2948": 1, + "2949": 1, + "2952": 2, + "2953": 1, + "2954": 1, + "2955": 1, + "2956": 2, + "2957": 1, + "2958": 1, + "2960": 1, + "2961": 1, + "2965": 1, + "2979": 1, + "2982": 1, + "2984": 1, + "2986": 1, + "2995": 1, + "2996": 1, + "2999": 1, + "3000": 1, + "3002": 3, + "3003": 2, + "3004": 2, + "3005": 1, + "3006": 1, + "3007": 4, + "3008": 1, + "3011": 2, + "3013": 1, + "3016": 1, + "3028": 1, + "3035": 1, + "3038": 1, + "3041": 1, + "3045": 1, + "3049": 2, + "3050": 1, + "3064": 1, + "3067": 1, + "3078": 1, + "3080": 1, + "3082": 1, + "3083": 1, + "3087": 1, + "3090": 1, + "3095": 1, + "3096": 1, + "3103": 1, + "3106": 1, + "3107": 1, + "3110": 1, + "3112": 1, + "3116": 1, + "3118": 1, + "3132": 1, + "3137": 1, + "3151": 1, + "3165": 1, + "3186": 1, + "3188": 1, + "3209": 1, + "3212": 1, + "3214": 1, + "3229": 2, + "3235": 1, + "3254": 1, + "3273": 1, + "3277": 1, + "3279": 1, + "3281": 1, + "3283": 1, + "3285": 1, + "3294": 1, + "3295": 1, + "3306": 1, + "3317": 1, + "3324": 1, + "3325": 1, + "3333": 1, + "3341": 2, + "3348": 1, + "3352": 1, + "3357": 1, + "3366": 1, + "3391": 1, + "3398": 1, + "3408": 1, + "3417": 2, + "3431": 1, + "3433": 1, + "3434": 1, + "3437": 1, + "3454": 1, + "3457": 1, + "3464": 2, + "3465": 1, + "3466": 1, + "3468": 1, + "3472": 1, + "3476": 1, + "3477": 3, + "3478": 1, + "3479": 1, + "3482": 1, + "3484": 2, + "3485": 1, + "3486": 1, + "3487": 2, + "3488": 1, + "3490": 1, + "3492": 1, + "3493": 1, + "3494": 1, + "3496": 1, + "3497": 1, + "3498": 4, + "3499": 1, + "3500": 2, + "3501": 1, + "3503": 3, + "3504": 2, + "3505": 3, + "3506": 1, + "3507": 2, + "3508": 2, + "3511": 1, + "3512": 2, + "3516": 1, + "3517": 1, + "3518": 1, + "3519": 2, + "3520": 1, + "3521": 3, + "3522": 1, + "3523": 3, + "3524": 2, + "3525": 3, + "3527": 2, + "3528": 2, + "3529": 3, + "3530": 2, + "3531": 1, + "3532": 4, + "3533": 4, + "3534": 2, + "3535": 3, + "3536": 1, + "3537": 7, + "3538": 4, + "3539": 1, + "3540": 2, + "3541": 1, + "3542": 1, + "3543": 1, + "3544": 4, + "3546": 1, + "3547": 4, + "3548": 1, + "3549": 3, + "3550": 1, + "3551": 1, + "3552": 3, + "3553": 1, + "3555": 1, + "3556": 1, + "3558": 2, + "3562": 2, + "3563": 3, + "3564": 4, + "3565": 6, + "3566": 5, + "3567": 1, + "3568": 1, + "3569": 3, + "3570": 5, + "3571": 4, + "3572": 5, + "3573": 3, + "3574": 2, + "3575": 5, + "3576": 3, + "3577": 4, + "3578": 5, + "3579": 3, + "3580": 4, + "3581": 9, + "3582": 4, + "3583": 8, + "3584": 3, + "3585": 7, + "3586": 6, + "3587": 4, + "3588": 7, + "3589": 6, + "3590": 5, + "3591": 8, + "3592": 5, + "3593": 4, + "3594": 16, + "3595": 8, + "3596": 8, + "3597": 7, + "3598": 7, + "3599": 4, + "3600": 5, + "3601": 6, + "3602": 8, + "3603": 10, + "3604": 8, + "3605": 8, + "3606": 8, + "3607": 6, + "3608": 7, + "3609": 13, + "3610": 5, + "3611": 6, + "3612": 5, + "3613": 13, + "3614": 5, + "3615": 5, + "3616": 10, + "3617": 6, + "3618": 8, + "3619": 5, + "3620": 3, + "3621": 6, + "3622": 7, + "3623": 10, + "3624": 5, + "3625": 9, + "3626": 6, + "3627": 7, + "3628": 9, + "3629": 9, + "3630": 9, + "3631": 4, + "3632": 9, + "3633": 9, + "3634": 7, + "3635": 7, + "3636": 9, + "3637": 10, + "3638": 9, + "3639": 7, + "3640": 6, + "3641": 5, + "3642": 6, + "3643": 4, + "3644": 8, + "3645": 5, + "3646": 5, + "3647": 3, + "3648": 6, + "3649": 7, + "3650": 10, + "3651": 5, + "3652": 10, + "3653": 7, + "3654": 10, + "3655": 2, + "3656": 6, + "3657": 7, + "3658": 6, + "3659": 9, + "3660": 2, + "3661": 5, + "3662": 6, + "3663": 2, + "3664": 4, + "3665": 1, + "3666": 2, + "3667": 2, + "3668": 5, + "3669": 7, + "3670": 5, + "3671": 4, + "3672": 4, + "3673": 6, + "3674": 2, + "3675": 8, + "3676": 2, + "3677": 6, + "3678": 4, + "3679": 2, + "3680": 2, + "3682": 2, + "3683": 1, + "3684": 1, + "3685": 1, + "3686": 1, + "3687": 2, + "3692": 1, + "3694": 1, + "3695": 1, + "3697": 2, + "3698": 1, + "3699": 1, + "3702": 3, + "3703": 1, + "3705": 1, + "3706": 2, + "3709": 2, + "3711": 1, + "3714": 1, + "3718": 1, + "3719": 1, + "3723": 1, + "3728": 1, + "3729": 2, + "3731": 1, + "3733": 1, + "3737": 1, + "3739": 2, + "3741": 1 + }, + "started": "2020-09-07T18:45:06.972Z", + "trafficStats": { + "incomingCompressionRatio": 0.8585458984375, + "incomingOctetsAppLevel": 4096000, + "incomingOctetsWebSocketLevel": 3516604, + "incomingOctetsWireLevel": 3524604, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.002274922055483074, + "outgoingCompressionRatio": 0.8585458984375, + "outgoingOctetsAppLevel": 4096000, + "outgoingOctetsWebSocketLevel": 3516604, + "outgoingOctetsWireLevel": 3520604, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.001137461027741537, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "1576": 1, + "1592": 1, + "1649": 1, + "1655": 1, + "1680": 1, + "1698": 1, + "1733": 1, + "1742": 1, + "1805": 1, + "1817": 1, + "1824": 1, + "1936": 1, + "1978": 1, + "2145": 1, + "2275": 1, + "2347": 1, + "2421": 1, + "2574": 1, + "2717": 1, + "2729": 1, + "2915": 1, + "2942": 1, + "2944": 1, + "2945": 1, + "2948": 2, + "2949": 1, + "2950": 1, + "2951": 1, + "2952": 2, + "2953": 1, + "2954": 1, + "2956": 1, + "2957": 1, + "2961": 1, + "2975": 1, + "2978": 1, + "2980": 1, + "2982": 1, + "2991": 1, + "2992": 1, + "2995": 1, + "2996": 1, + "2998": 3, + "2999": 2, + "3000": 2, + "3001": 1, + "3002": 1, + "3003": 4, + "3004": 1, + "3007": 2, + "3009": 1, + "3012": 1, + "3024": 1, + "3031": 1, + "3034": 1, + "3037": 1, + "3041": 1, + "3045": 2, + "3046": 1, + "3060": 1, + "3063": 1, + "3074": 1, + "3076": 1, + "3078": 1, + "3079": 1, + "3083": 1, + "3086": 1, + "3091": 1, + "3092": 1, + "3099": 1, + "3102": 1, + "3103": 1, + "3106": 1, + "3108": 1, + "3112": 1, + "3114": 1, + "3128": 1, + "3133": 1, + "3147": 1, + "3161": 1, + "3182": 1, + "3184": 1, + "3205": 1, + "3208": 1, + "3210": 1, + "3225": 2, + "3231": 1, + "3250": 1, + "3269": 1, + "3273": 1, + "3275": 1, + "3277": 1, + "3279": 1, + "3281": 1, + "3290": 1, + "3291": 1, + "3302": 1, + "3313": 1, + "3320": 1, + "3321": 1, + "3329": 1, + "3337": 2, + "3344": 1, + "3348": 1, + "3353": 1, + "3362": 1, + "3387": 1, + "3394": 1, + "3404": 1, + "3413": 2, + "3427": 1, + "3429": 1, + "3430": 1, + "3433": 1, + "3450": 1, + "3453": 1, + "3460": 2, + "3461": 1, + "3462": 1, + "3464": 1, + "3468": 1, + "3472": 1, + "3473": 3, + "3474": 1, + "3475": 1, + "3478": 1, + "3480": 2, + "3481": 1, + "3482": 1, + "3483": 2, + "3484": 1, + "3486": 1, + "3488": 1, + "3489": 1, + "3490": 1, + "3492": 1, + "3493": 1, + "3494": 4, + "3495": 1, + "3496": 2, + "3497": 1, + "3499": 3, + "3500": 2, + "3501": 3, + "3502": 1, + "3503": 2, + "3504": 2, + "3507": 1, + "3508": 2, + "3512": 1, + "3513": 1, + "3514": 1, + "3515": 2, + "3516": 1, + "3517": 3, + "3518": 1, + "3519": 3, + "3520": 2, + "3521": 3, + "3523": 2, + "3524": 2, + "3525": 3, + "3526": 2, + "3527": 1, + "3528": 4, + "3529": 4, + "3530": 2, + "3531": 3, + "3532": 1, + "3533": 7, + "3534": 4, + "3535": 1, + "3536": 2, + "3537": 1, + "3538": 1, + "3539": 1, + "3540": 4, + "3542": 1, + "3543": 4, + "3544": 1, + "3545": 3, + "3546": 1, + "3547": 1, + "3548": 3, + "3549": 1, + "3551": 1, + "3552": 1, + "3554": 2, + "3558": 2, + "3559": 3, + "3560": 4, + "3561": 6, + "3562": 5, + "3563": 1, + "3564": 1, + "3565": 3, + "3566": 5, + "3567": 4, + "3568": 5, + "3569": 3, + "3570": 2, + "3571": 5, + "3572": 3, + "3573": 4, + "3574": 5, + "3575": 3, + "3576": 4, + "3577": 9, + "3578": 4, + "3579": 8, + "3580": 3, + "3581": 7, + "3582": 6, + "3583": 4, + "3584": 7, + "3585": 6, + "3586": 5, + "3587": 8, + "3588": 5, + "3589": 4, + "3590": 16, + "3591": 8, + "3592": 8, + "3593": 7, + "3594": 7, + "3595": 4, + "3596": 5, + "3597": 6, + "3598": 8, + "3599": 10, + "3600": 8, + "3601": 8, + "3602": 8, + "3603": 6, + "3604": 7, + "3605": 13, + "3606": 5, + "3607": 6, + "3608": 5, + "3609": 13, + "3610": 5, + "3611": 5, + "3612": 10, + "3613": 6, + "3614": 8, + "3615": 5, + "3616": 3, + "3617": 6, + "3618": 7, + "3619": 10, + "3620": 5, + "3621": 9, + "3622": 6, + "3623": 7, + "3624": 9, + "3625": 9, + "3626": 9, + "3627": 4, + "3628": 9, + "3629": 9, + "3630": 7, + "3631": 7, + "3632": 9, + "3633": 10, + "3634": 9, + "3635": 7, + "3636": 6, + "3637": 5, + "3638": 6, + "3639": 4, + "3640": 8, + "3641": 5, + "3642": 5, + "3643": 3, + "3644": 6, + "3645": 7, + "3646": 10, + "3647": 5, + "3648": 10, + "3649": 7, + "3650": 10, + "3651": 2, + "3652": 6, + "3653": 7, + "3654": 6, + "3655": 9, + "3656": 2, + "3657": 5, + "3658": 6, + "3659": 2, + "3660": 4, + "3661": 1, + "3662": 2, + "3663": 2, + "3664": 5, + "3665": 7, + "3666": 5, + "3667": 4, + "3668": 4, + "3669": 6, + "3670": 2, + "3671": 8, + "3672": 2, + "3673": 6, + "3674": 4, + "3675": 2, + "3676": 2, + "3678": 2, + "3679": 1, + "3680": 1, + "3681": 1, + "3682": 1, + "3683": 2, + "3688": 1, + "3690": 1, + "3691": 1, + "3693": 2, + "3694": 1, + "3695": 1, + "3698": 3, + "3699": 1, + "3701": 1, + "3702": 2, + "3705": 2, + "3707": 1, + "3710": 1, + "3714": 1, + "3715": 1, + "3719": 1, + "3724": 1, + "3725": 2, + "3727": 1, + "3729": 1, + "3733": 1, + "3735": 2, + "3737": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333234266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88822ea8cae62d40" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "2ea8cae6" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_2_6.html b/autobahn/client/tungstenite_case_12_2_6.html new file mode 100644 index 0000000..7f5a396 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_6.html @@ -0,0 +1,1224 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.2.6 : Pass - 1010 ms @ 2020-09-07T18:45:07.637Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=325&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ns5/HeS9w3a5auZUa0dR1g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 5zwgIa0Jft4NV1nN6Vp13QOGZO8=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
449914499
457014570
457614576
459214592
460514605
460914609
462514625
465814658
467514675
470014700
470714707
476714767
476814768
479914799
481814818
483914839
484814848
487514875
489114891
495314953
498514985
501415014
501515015
503515035
509615096
512015120
514215142
516515165
524715247
531315313
546515465
561315613
575915759
581215812
585615856
5860211720
586515865
587515875
5876211752
587715877
5886423544
588915889
589515895
590115901
590515905
5906317718
592315923
5924211848
593915939
594115941
594615946
5950211900
596115961
5964211928
596915969
597415974
597515975
598015980
598215982
598515985
599115991
599315993
600916009
601216012
601316013
601716017
602116021
604216042
604516045
605516055
606816068
6073212146
607516075
609316093
610216102
611816118
613216132
614816148
616816168
618416184
618716187
619516195
622616226
622916229
624216242
626116261
628716287
629216292
632216322
632716327
635116351
635916359
636116361
638116381
638916389
641916419
642616426
645916459
646316463
649416494
651416514
651816518
652516525
655516555
657916579
660816608
662716627
663216632
665716657
667616676
668116681
669216692
671716717
673316733
673416734
674316743
674516745
675416754
675616756
676616766
677516775
678116781
679416794
680616806
682116821
683516835
684916849
686016860
686416864
687416874
688216882
688316883
688916889
689116891
689316893
689416894
689716897
689816898
689916899
6903213806
6904213808
690516905
690716907
690916909
691816918
692116921
6922213844
692316923
6924213848
692516925
692616926
692816928
693116931
693316933
6934213868
6935213870
693916939
6940213880
6941320823
694216942
694316943
6944213888
694616946
695216952
695616956
6959213918
696216962
696516965
696616966
6969213938
697016970
697316973
6974213948
6975213950
6976213952
697716977
697816978
6981427924
698316983
698416984
6991213982
699216992
6993320979
6994213988
699516995
699616996
699716997
6999213998
7000321000
700217002
7003214006
700517005
700817008
7010214020
7011214022
701217012
701317013
7014214028
701517015
7016535080
702117021
7023321069
7024214048
702517025
7026321078
7027321081
7028321084
703017030
7032214064
703317033
7034214068
703517035
7036214072
703817038
703917039
704117041
704217042
7044321132
704517045
704717047
7048214096
7049214098
705117051
705217052
705517055
7056214112
7057214114
706017060
706117061
706217062
706317063
706417064
7067214134
706817068
707017070
707117071
707217072
707417074
707517075
7077214154
707817078
7079321237
7081214162
7082214164
7083214166
7084321252
7085321255
7088321264
7089321267
7090428360
7091428364
709217092
709317093
7094214188
7095214190
7096428384
709717097
7098214196
7099642594
710017100
7102642612
710317103
710417104
710517105
710617106
7107214214
7108214216
710917109
7110214220
7111321333
7112214224
7113856904
7114535570
7115964035
7116642696
7117321351
7118214236
7119321357
7120321360
7121214242
7122535610
7123321369
712417124
7126535630
712717127
712817128
7129214258
713117131
7132214264
7133321399
713417134
7135214270
713617136
713717137
713817138
7139321417
7140321420
7141214282
7143321429
7144964296
7145321435
714617146
7147214294
7148321444
714917149
7150321450
7151321453
7152214304
7153535765
7154535770
7155857240
7156964404
7157642942
7158642948
7159428636
7160428640
7161535805
7163428652
7164857312
71651178815
7166535830
7167428668
7168750176
7169535845
7170321510
7171750197
7172643032
7173428692
7174857392
7175857400
71761178936
7177750239
717814100492
7179857432
718017180
7181321543
7182857456
7183535915
7184535920
7185428740
7186214372
7187535935
7188535940
7189214378
7190214380
7191428764
7192857536
7193214386
7194428776
7195643170
719617196
7197214394
7198214396
719917199
720117201
720217202
720417204
720517205
7206536030
7209536045
7210321630
721117211
7213321639
721417214
7215214430
7216214432
721717217
7218214436
7219214438
7220321660
7221428884
7222214444
7223643338
7224321672
7225643350
722617226
7227321681
722817228
7229428916
7230214460
7231428924
7233321699
7234428936
7235536175
723617236
7237536185
7238321714
7239214478
7240428960
7241643446
7242428968
7243214486
7244428976
7245536225
7246428984
72471394211
7248428992
7249321747
7250321750
725117251
7252858016
725317253
7254750778
7255321765
725617256
7257214514
7258214516
725917259
7260214520
7261429044
7263214526
7264214528
7265321795
726617266
726717267
726817268
7269321807
727117271
727217272
7275214550
7276321828
7277214554
7278429112
7279321837
7280321840
7281321843
7282321846
7283214566
7284214568
728517285
7286321858
7287214574
7289321867
729017290
7291214582
7300214600
7301214602
7303321909
7304214608
730617306
730717307
730917309
731017310
731117311
7312214624
731517315
731717317
7318321954
7320214640
732217322
732317323
732517325
7327321981
732817328
732917329
733117331
733217332
733717337
734017340
734217342
7343214686
734417344
734517345
Total10026981484
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
449514495
456614566
457214572
458814588
460114601
460514605
462114621
465414654
467114671
469614696
470314703
476314763
476414764
479514795
481414814
483514835
484414844
487114871
488714887
494914949
498114981
501015010
501115011
503115031
509215092
511615116
513815138
516115161
524315243
530915309
546115461
560915609
575515755
580815808
585215852
5856211712
586115861
587115871
5872211744
587315873
5882423528
588515885
589115891
589715897
590115901
5902317706
591915919
5920211840
593515935
593715937
594215942
5946211892
595715957
5960211920
596515965
597015970
597115971
597615976
597815978
598115981
598715987
598915989
600516005
600816008
600916009
601316013
601716017
603816038
604116041
605116051
606416064
6069212138
607116071
608916089
609816098
611416114
612816128
614416144
616416164
618016180
618316183
619116191
622216222
622516225
623816238
625716257
628316283
628816288
631816318
632316323
634716347
635516355
635716357
637716377
638516385
641516415
642216422
645516455
645916459
649016490
651016510
651416514
652116521
655116551
657516575
660416604
662316623
662816628
665316653
667216672
667716677
668816688
671316713
672916729
673016730
673916739
674116741
675016750
675216752
676216762
677116771
677716777
679016790
680216802
681716817
683116831
684516845
685616856
686016860
687016870
687816878
687916879
688516885
688716887
688916889
689016890
689316893
689416894
689516895
6899213798
6900213800
690116901
690316903
690516905
691416914
691716917
6918213836
691916919
6920213840
692116921
692216922
692416924
692716927
692916929
6930213860
6931213862
693516935
6936213872
6937320811
693816938
693916939
6940213880
694216942
694816948
695216952
6955213910
695816958
696116961
696216962
6965213930
696616966
696916969
6970213940
6971213942
6972213944
697316973
697416974
6977427908
697916979
698016980
6987213974
698816988
6989320967
6990213980
699116991
699216992
699316993
6995213990
6996320988
699816998
6999213998
700117001
700417004
7006214012
7007214014
700817008
700917009
7010214020
701117011
7012535060
701717017
7019321057
7020214040
702117021
7022321066
7023321069
7024321072
702617026
7028214056
702917029
7030214060
703117031
7032214064
703417034
703517035
703717037
703817038
7040321120
704117041
704317043
7044214088
7045214090
704717047
704817048
705117051
7052214104
7053214106
705617056
705717057
705817058
705917059
706017060
7063214126
706417064
706617066
706717067
706817068
707017070
707117071
7073214146
707417074
7075321225
7077214154
7078214156
7079214158
7080321240
7081321243
7084321252
7085321255
7086428344
7087428348
708817088
708917089
7090214180
7091214182
7092428368
709317093
7094214188
7095642570
709617096
7098642588
709917099
710017100
710117101
710217102
7103214206
7104214208
710517105
7106214212
7107321321
7108214216
7109856872
7110535550
7111963999
7112642672
7113321339
7114214228
7115321345
7116321348
7117214234
7118535590
7119321357
712017120
7122535610
712317123
712417124
7125214250
712717127
7128214256
7129321387
713017130
7131214262
713217132
713317133
713417134
7135321405
7136321408
7137214274
7139321417
7140964260
7141321423
714217142
7143214286
7144321432
714517145
7146321438
7147321441
7148214296
7149535745
7150535750
7151857208
7152964368
7153642918
7154642924
7155428620
7156428624
7157535785
7159428636
7160857280
71611178771
7162535810
7163428652
7164750148
7165535825
7166321498
7167750169
7168643008
7169428676
7170857360
7171857368
71721178892
7173750211
717414100436
7175857400
717617176
7177321531
7178857424
7179535895
7180535900
7181428724
7182214364
7183535915
7184535920
7185214370
7186214372
7187428748
7188857504
7189214378
7190428760
7191643146
719217192
7193214386
7194214388
719517195
719717197
719817198
720017200
720117201
7202536010
7205536025
7206321618
720717207
7209321627
721017210
7211214422
7212214424
721317213
7214214428
7215214430
7216321648
7217428868
7218214436
7219643314
7220321660
7221643326
722217222
7223321669
722417224
7225428900
7226214452
7227428908
7229321687
7230428920
7231536155
723217232
7233536165
7234321702
7235214470
7236428944
7237643422
7238428952
7239214478
7240428960
7241536205
7242428968
72431394159
7244428976
7245321735
7246321738
724717247
7248857984
724917249
7250750750
7251321753
725217252
7253214506
7254214508
725517255
7256214512
7257429028
7259214518
7260214520
7261321783
726217262
726317263
726417264
7265321795
726717267
726817268
7271214542
7272321816
7273214546
7274429096
7275321825
7276321828
7277321831
7278321834
7279214558
7280214560
728117281
7282321846
7283214566
7285321855
728617286
7287214574
7296214592
7297214594
7299321897
7300214600
730217302
730317303
730517305
730617306
730717307
7308214616
731117311
731317313
7314321942
7316214632
731817318
731917319
732117321
7323321969
732417324
732517325
732717327
732817328
733317333
733617336
733817338
7339214678
734017340
734117341
Total10026977475
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333235266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882e8420e91ebaa
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6538343230653931
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_2_6.json b/autobahn/client/tungstenite_case_12_2_6.json new file mode 100644 index 0000000..192d85a --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_6.json @@ -0,0 +1,1071 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 325, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 1010, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=325&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ns5/HeS9w3a5auZUa0dR1g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 5zwgIa0Jft4NV1nN6Vp13QOGZO8=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.2.6", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "4499": 1, + "4570": 1, + "4576": 1, + "4592": 1, + "4605": 1, + "4609": 1, + "4625": 1, + "4658": 1, + "4675": 1, + "4700": 1, + "4707": 1, + "4767": 1, + "4768": 1, + "4799": 1, + "4818": 1, + "4839": 1, + "4848": 1, + "4875": 1, + "4891": 1, + "4953": 1, + "4985": 1, + "5014": 1, + "5015": 1, + "5035": 1, + "5096": 1, + "5120": 1, + "5142": 1, + "5165": 1, + "5247": 1, + "5313": 1, + "5465": 1, + "5613": 1, + "5759": 1, + "5812": 1, + "5856": 1, + "5860": 2, + "5865": 1, + "5875": 1, + "5876": 2, + "5877": 1, + "5886": 4, + "5889": 1, + "5895": 1, + "5901": 1, + "5905": 1, + "5906": 3, + "5923": 1, + "5924": 2, + "5939": 1, + "5941": 1, + "5946": 1, + "5950": 2, + "5961": 1, + "5964": 2, + "5969": 1, + "5974": 1, + "5975": 1, + "5980": 1, + "5982": 1, + "5985": 1, + "5991": 1, + "5993": 1, + "6009": 1, + "6012": 1, + "6013": 1, + "6017": 1, + "6021": 1, + "6042": 1, + "6045": 1, + "6055": 1, + "6068": 1, + "6073": 2, + "6075": 1, + "6093": 1, + "6102": 1, + "6118": 1, + "6132": 1, + "6148": 1, + "6168": 1, + "6184": 1, + "6187": 1, + "6195": 1, + "6226": 1, + "6229": 1, + "6242": 1, + "6261": 1, + "6287": 1, + "6292": 1, + "6322": 1, + "6327": 1, + "6351": 1, + "6359": 1, + "6361": 1, + "6381": 1, + "6389": 1, + "6419": 1, + "6426": 1, + "6459": 1, + "6463": 1, + "6494": 1, + "6514": 1, + "6518": 1, + "6525": 1, + "6555": 1, + "6579": 1, + "6608": 1, + "6627": 1, + "6632": 1, + "6657": 1, + "6676": 1, + "6681": 1, + "6692": 1, + "6717": 1, + "6733": 1, + "6734": 1, + "6743": 1, + "6745": 1, + "6754": 1, + "6756": 1, + "6766": 1, + "6775": 1, + "6781": 1, + "6794": 1, + "6806": 1, + "6821": 1, + "6835": 1, + "6849": 1, + "6860": 1, + "6864": 1, + "6874": 1, + "6882": 1, + "6883": 1, + "6889": 1, + "6891": 1, + "6893": 1, + "6894": 1, + "6897": 1, + "6898": 1, + "6899": 1, + "6903": 2, + "6904": 2, + "6905": 1, + "6907": 1, + "6909": 1, + "6918": 1, + "6921": 1, + "6922": 2, + "6923": 1, + "6924": 2, + "6925": 1, + "6926": 1, + "6928": 1, + "6931": 1, + "6933": 1, + "6934": 2, + "6935": 2, + "6939": 1, + "6940": 2, + "6941": 3, + "6942": 1, + "6943": 1, + "6944": 2, + "6946": 1, + "6952": 1, + "6956": 1, + "6959": 2, + "6962": 1, + "6965": 1, + "6966": 1, + "6969": 2, + "6970": 1, + "6973": 1, + "6974": 2, + "6975": 2, + "6976": 2, + "6977": 1, + "6978": 1, + "6981": 4, + "6983": 1, + "6984": 1, + "6991": 2, + "6992": 1, + "6993": 3, + "6994": 2, + "6995": 1, + "6996": 1, + "6997": 1, + "6999": 2, + "7000": 3, + "7002": 1, + "7003": 2, + "7005": 1, + "7008": 1, + "7010": 2, + "7011": 2, + "7012": 1, + "7013": 1, + "7014": 2, + "7015": 1, + "7016": 5, + "7021": 1, + "7023": 3, + "7024": 2, + "7025": 1, + "7026": 3, + "7027": 3, + "7028": 3, + "7030": 1, + "7032": 2, + "7033": 1, + "7034": 2, + "7035": 1, + "7036": 2, + "7038": 1, + "7039": 1, + "7041": 1, + "7042": 1, + "7044": 3, + "7045": 1, + "7047": 1, + "7048": 2, + "7049": 2, + "7051": 1, + "7052": 1, + "7055": 1, + "7056": 2, + "7057": 2, + "7060": 1, + "7061": 1, + "7062": 1, + "7063": 1, + "7064": 1, + "7067": 2, + "7068": 1, + "7070": 1, + "7071": 1, + "7072": 1, + "7074": 1, + "7075": 1, + "7077": 2, + "7078": 1, + "7079": 3, + "7081": 2, + "7082": 2, + "7083": 2, + "7084": 3, + "7085": 3, + "7088": 3, + "7089": 3, + "7090": 4, + "7091": 4, + "7092": 1, + "7093": 1, + "7094": 2, + "7095": 2, + "7096": 4, + "7097": 1, + "7098": 2, + "7099": 6, + "7100": 1, + "7102": 6, + "7103": 1, + "7104": 1, + "7105": 1, + "7106": 1, + "7107": 2, + "7108": 2, + "7109": 1, + "7110": 2, + "7111": 3, + "7112": 2, + "7113": 8, + "7114": 5, + "7115": 9, + "7116": 6, + "7117": 3, + "7118": 2, + "7119": 3, + "7120": 3, + "7121": 2, + "7122": 5, + "7123": 3, + "7124": 1, + "7126": 5, + "7127": 1, + "7128": 1, + "7129": 2, + "7131": 1, + "7132": 2, + "7133": 3, + "7134": 1, + "7135": 2, + "7136": 1, + "7137": 1, + "7138": 1, + "7139": 3, + "7140": 3, + "7141": 2, + "7143": 3, + "7144": 9, + "7145": 3, + "7146": 1, + "7147": 2, + "7148": 3, + "7149": 1, + "7150": 3, + "7151": 3, + "7152": 2, + "7153": 5, + "7154": 5, + "7155": 8, + "7156": 9, + "7157": 6, + "7158": 6, + "7159": 4, + "7160": 4, + "7161": 5, + "7163": 4, + "7164": 8, + "7165": 11, + "7166": 5, + "7167": 4, + "7168": 7, + "7169": 5, + "7170": 3, + "7171": 7, + "7172": 6, + "7173": 4, + "7174": 8, + "7175": 8, + "7176": 11, + "7177": 7, + "7178": 14, + "7179": 8, + "7180": 1, + "7181": 3, + "7182": 8, + "7183": 5, + "7184": 5, + "7185": 4, + "7186": 2, + "7187": 5, + "7188": 5, + "7189": 2, + "7190": 2, + "7191": 4, + "7192": 8, + "7193": 2, + "7194": 4, + "7195": 6, + "7196": 1, + "7197": 2, + "7198": 2, + "7199": 1, + "7201": 1, + "7202": 1, + "7204": 1, + "7205": 1, + "7206": 5, + "7209": 5, + "7210": 3, + "7211": 1, + "7213": 3, + "7214": 1, + "7215": 2, + "7216": 2, + "7217": 1, + "7218": 2, + "7219": 2, + "7220": 3, + "7221": 4, + "7222": 2, + "7223": 6, + "7224": 3, + "7225": 6, + "7226": 1, + "7227": 3, + "7228": 1, + "7229": 4, + "7230": 2, + "7231": 4, + "7233": 3, + "7234": 4, + "7235": 5, + "7236": 1, + "7237": 5, + "7238": 3, + "7239": 2, + "7240": 4, + "7241": 6, + "7242": 4, + "7243": 2, + "7244": 4, + "7245": 5, + "7246": 4, + "7247": 13, + "7248": 4, + "7249": 3, + "7250": 3, + "7251": 1, + "7252": 8, + "7253": 1, + "7254": 7, + "7255": 3, + "7256": 1, + "7257": 2, + "7258": 2, + "7259": 1, + "7260": 2, + "7261": 4, + "7263": 2, + "7264": 2, + "7265": 3, + "7266": 1, + "7267": 1, + "7268": 1, + "7269": 3, + "7271": 1, + "7272": 1, + "7275": 2, + "7276": 3, + "7277": 2, + "7278": 4, + "7279": 3, + "7280": 3, + "7281": 3, + "7282": 3, + "7283": 2, + "7284": 2, + "7285": 1, + "7286": 3, + "7287": 2, + "7289": 3, + "7290": 1, + "7291": 2, + "7300": 2, + "7301": 2, + "7303": 3, + "7304": 2, + "7306": 1, + "7307": 1, + "7309": 1, + "7310": 1, + "7311": 1, + "7312": 2, + "7315": 1, + "7317": 1, + "7318": 3, + "7320": 2, + "7322": 1, + "7323": 1, + "7325": 1, + "7327": 3, + "7328": 1, + "7329": 1, + "7331": 1, + "7332": 1, + "7337": 1, + "7340": 1, + "7342": 1, + "7343": 2, + "7344": 1, + "7345": 1 + }, + "started": "2020-09-07T18:45:07.637Z", + "trafficStats": { + "incomingCompressionRatio": 0.8512230224609375, + "incomingOctetsAppLevel": 8192000, + "incomingOctetsWebSocketLevel": 6973219, + "incomingOctetsWireLevel": 6981219, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0011472463434749431, + "outgoingCompressionRatio": 0.8512230224609375, + "outgoingOctetsAppLevel": 8192000, + "outgoingOctetsWebSocketLevel": 6973219, + "outgoingOctetsWireLevel": 6977219, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0005736231717374716, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "4495": 1, + "4566": 1, + "4572": 1, + "4588": 1, + "4601": 1, + "4605": 1, + "4621": 1, + "4654": 1, + "4671": 1, + "4696": 1, + "4703": 1, + "4763": 1, + "4764": 1, + "4795": 1, + "4814": 1, + "4835": 1, + "4844": 1, + "4871": 1, + "4887": 1, + "4949": 1, + "4981": 1, + "5010": 1, + "5011": 1, + "5031": 1, + "5092": 1, + "5116": 1, + "5138": 1, + "5161": 1, + "5243": 1, + "5309": 1, + "5461": 1, + "5609": 1, + "5755": 1, + "5808": 1, + "5852": 1, + "5856": 2, + "5861": 1, + "5871": 1, + "5872": 2, + "5873": 1, + "5882": 4, + "5885": 1, + "5891": 1, + "5897": 1, + "5901": 1, + "5902": 3, + "5919": 1, + "5920": 2, + "5935": 1, + "5937": 1, + "5942": 1, + "5946": 2, + "5957": 1, + "5960": 2, + "5965": 1, + "5970": 1, + "5971": 1, + "5976": 1, + "5978": 1, + "5981": 1, + "5987": 1, + "5989": 1, + "6005": 1, + "6008": 1, + "6009": 1, + "6013": 1, + "6017": 1, + "6038": 1, + "6041": 1, + "6051": 1, + "6064": 1, + "6069": 2, + "6071": 1, + "6089": 1, + "6098": 1, + "6114": 1, + "6128": 1, + "6144": 1, + "6164": 1, + "6180": 1, + "6183": 1, + "6191": 1, + "6222": 1, + "6225": 1, + "6238": 1, + "6257": 1, + "6283": 1, + "6288": 1, + "6318": 1, + "6323": 1, + "6347": 1, + "6355": 1, + "6357": 1, + "6377": 1, + "6385": 1, + "6415": 1, + "6422": 1, + "6455": 1, + "6459": 1, + "6490": 1, + "6510": 1, + "6514": 1, + "6521": 1, + "6551": 1, + "6575": 1, + "6604": 1, + "6623": 1, + "6628": 1, + "6653": 1, + "6672": 1, + "6677": 1, + "6688": 1, + "6713": 1, + "6729": 1, + "6730": 1, + "6739": 1, + "6741": 1, + "6750": 1, + "6752": 1, + "6762": 1, + "6771": 1, + "6777": 1, + "6790": 1, + "6802": 1, + "6817": 1, + "6831": 1, + "6845": 1, + "6856": 1, + "6860": 1, + "6870": 1, + "6878": 1, + "6879": 1, + "6885": 1, + "6887": 1, + "6889": 1, + "6890": 1, + "6893": 1, + "6894": 1, + "6895": 1, + "6899": 2, + "6900": 2, + "6901": 1, + "6903": 1, + "6905": 1, + "6914": 1, + "6917": 1, + "6918": 2, + "6919": 1, + "6920": 2, + "6921": 1, + "6922": 1, + "6924": 1, + "6927": 1, + "6929": 1, + "6930": 2, + "6931": 2, + "6935": 1, + "6936": 2, + "6937": 3, + "6938": 1, + "6939": 1, + "6940": 2, + "6942": 1, + "6948": 1, + "6952": 1, + "6955": 2, + "6958": 1, + "6961": 1, + "6962": 1, + "6965": 2, + "6966": 1, + "6969": 1, + "6970": 2, + "6971": 2, + "6972": 2, + "6973": 1, + "6974": 1, + "6977": 4, + "6979": 1, + "6980": 1, + "6987": 2, + "6988": 1, + "6989": 3, + "6990": 2, + "6991": 1, + "6992": 1, + "6993": 1, + "6995": 2, + "6996": 3, + "6998": 1, + "6999": 2, + "7001": 1, + "7004": 1, + "7006": 2, + "7007": 2, + "7008": 1, + "7009": 1, + "7010": 2, + "7011": 1, + "7012": 5, + "7017": 1, + "7019": 3, + "7020": 2, + "7021": 1, + "7022": 3, + "7023": 3, + "7024": 3, + "7026": 1, + "7028": 2, + "7029": 1, + "7030": 2, + "7031": 1, + "7032": 2, + "7034": 1, + "7035": 1, + "7037": 1, + "7038": 1, + "7040": 3, + "7041": 1, + "7043": 1, + "7044": 2, + "7045": 2, + "7047": 1, + "7048": 1, + "7051": 1, + "7052": 2, + "7053": 2, + "7056": 1, + "7057": 1, + "7058": 1, + "7059": 1, + "7060": 1, + "7063": 2, + "7064": 1, + "7066": 1, + "7067": 1, + "7068": 1, + "7070": 1, + "7071": 1, + "7073": 2, + "7074": 1, + "7075": 3, + "7077": 2, + "7078": 2, + "7079": 2, + "7080": 3, + "7081": 3, + "7084": 3, + "7085": 3, + "7086": 4, + "7087": 4, + "7088": 1, + "7089": 1, + "7090": 2, + "7091": 2, + "7092": 4, + "7093": 1, + "7094": 2, + "7095": 6, + "7096": 1, + "7098": 6, + "7099": 1, + "7100": 1, + "7101": 1, + "7102": 1, + "7103": 2, + "7104": 2, + "7105": 1, + "7106": 2, + "7107": 3, + "7108": 2, + "7109": 8, + "7110": 5, + "7111": 9, + "7112": 6, + "7113": 3, + "7114": 2, + "7115": 3, + "7116": 3, + "7117": 2, + "7118": 5, + "7119": 3, + "7120": 1, + "7122": 5, + "7123": 1, + "7124": 1, + "7125": 2, + "7127": 1, + "7128": 2, + "7129": 3, + "7130": 1, + "7131": 2, + "7132": 1, + "7133": 1, + "7134": 1, + "7135": 3, + "7136": 3, + "7137": 2, + "7139": 3, + "7140": 9, + "7141": 3, + "7142": 1, + "7143": 2, + "7144": 3, + "7145": 1, + "7146": 3, + "7147": 3, + "7148": 2, + "7149": 5, + "7150": 5, + "7151": 8, + "7152": 9, + "7153": 6, + "7154": 6, + "7155": 4, + "7156": 4, + "7157": 5, + "7159": 4, + "7160": 8, + "7161": 11, + "7162": 5, + "7163": 4, + "7164": 7, + "7165": 5, + "7166": 3, + "7167": 7, + "7168": 6, + "7169": 4, + "7170": 8, + "7171": 8, + "7172": 11, + "7173": 7, + "7174": 14, + "7175": 8, + "7176": 1, + "7177": 3, + "7178": 8, + "7179": 5, + "7180": 5, + "7181": 4, + "7182": 2, + "7183": 5, + "7184": 5, + "7185": 2, + "7186": 2, + "7187": 4, + "7188": 8, + "7189": 2, + "7190": 4, + "7191": 6, + "7192": 1, + "7193": 2, + "7194": 2, + "7195": 1, + "7197": 1, + "7198": 1, + "7200": 1, + "7201": 1, + "7202": 5, + "7205": 5, + "7206": 3, + "7207": 1, + "7209": 3, + "7210": 1, + "7211": 2, + "7212": 2, + "7213": 1, + "7214": 2, + "7215": 2, + "7216": 3, + "7217": 4, + "7218": 2, + "7219": 6, + "7220": 3, + "7221": 6, + "7222": 1, + "7223": 3, + "7224": 1, + "7225": 4, + "7226": 2, + "7227": 4, + "7229": 3, + "7230": 4, + "7231": 5, + "7232": 1, + "7233": 5, + "7234": 3, + "7235": 2, + "7236": 4, + "7237": 6, + "7238": 4, + "7239": 2, + "7240": 4, + "7241": 5, + "7242": 4, + "7243": 13, + "7244": 4, + "7245": 3, + "7246": 3, + "7247": 1, + "7248": 8, + "7249": 1, + "7250": 7, + "7251": 3, + "7252": 1, + "7253": 2, + "7254": 2, + "7255": 1, + "7256": 2, + "7257": 4, + "7259": 2, + "7260": 2, + "7261": 3, + "7262": 1, + "7263": 1, + "7264": 1, + "7265": 3, + "7267": 1, + "7268": 1, + "7271": 2, + "7272": 3, + "7273": 2, + "7274": 4, + "7275": 3, + "7276": 3, + "7277": 3, + "7278": 3, + "7279": 2, + "7280": 2, + "7281": 1, + "7282": 3, + "7283": 2, + "7285": 3, + "7286": 1, + "7287": 2, + "7296": 2, + "7297": 2, + "7299": 3, + "7300": 2, + "7302": 1, + "7303": 1, + "7305": 1, + "7306": 1, + "7307": 1, + "7308": 2, + "7311": 1, + "7313": 1, + "7314": 3, + "7316": 2, + "7318": 1, + "7319": 1, + "7321": 1, + "7323": 3, + "7324": 1, + "7325": 1, + "7327": 1, + "7328": 1, + "7333": 1, + "7336": 1, + "7338": 1, + "7339": 2, + "7340": 1, + "7341": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333235266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882e8420e91ebaa" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "e8420e91" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_2_7.html b/autobahn/client/tungstenite_case_12_2_7.html new file mode 100644 index 0000000..80e34da --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_7.html @@ -0,0 +1,1488 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.2.7 : Pass - 1678 ms @ 2020-09-07T18:45:08.647Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=326&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: fnEl+tJvBWSpFiqI22m9og==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: +l+sVUBfwfDYgO98Yw6jjyosUiM=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
10394110394
10445110445
10487110487
10500110500
10532110532
10555110555
10572110572
10579110579
10587110587
10656110656
10674110674
10716110716
10755110755
10757110757
10770110770
10779110779
10815110815
10867110867
10888110888
10893110893
10993110993
11023111023
11059111059
11072111072
11083111083
11156111156
11202111202
11218111218
11235111235
11250111250
11311111311
11366111366
11368111368
11385111385
11428111428
11477111477
11525111525
11537111537
11540111540
11584111584
11651111651
11669111669
11689111689
11721111721
11761111761
11767111767
11769111769
11771111771
11777111777
11792111792
11813111813
11814111814
11816111816
11823111823
11829111829
11841111841
11844111844
11848111848
11863111863
11867111867
11868111868
11896111896
11901111901
11905111905
11910111910
11912111912
11929111929
11945111945
11958111958
11967111967
11973111973
11988111988
12015112015
12021112021
12023112023
12038112038
12045112045
12066112066
12111224222
12127112127
12130112130
12144112144
12160224320
12173112173
12199224398
12225112225
12228112228
12239112239
12241112241
12273112273
12278112278
12280112280
12292112292
12321112321
12326112326
12345112345
12391112391
12400112400
12434112434
12437112437
12449112449
12504112504
12528112528
12555112555
12565112565
12620112620
12636112636
12667112667
12691112691
12709112709
12750112750
12786112786
12800112800
12805112805
12834112834
12876112876
12913112913
12922112922
12955112955
12974112974
12986112986
12990112990
13017113017
13033113033
13063113063
13074113074
13141113141
13155113155
13181113181
13186113186
13187113187
13227113227
13253113253
13273113273
13293113293
13338113338
13374113374
13375113375
13388113388
13410113410
13427113427
13469113469
13483113483
13519113519
13551113551
13566113566
13579113579
13592113592
13617113617
13642113642
13662113662
13672113672
13697113697
13722113722
13745113745
13747113747
13759113759
13770113770
13809113809
13827113827
13841113841
13845113845
13848113848
13850113850
13853227706
13854227708
13856113856
13857113857
13860113860
13861113861
13863113863
13866113866
13869227738
13870113870
13871227742
13873113873
13874113874
13880113880
13881113881
13882113882
13883113883
13887227774
13889113889
13890113890
13891113891
13896113896
13897113897
13898113898
13900113900
13901113901
13903113903
13907113907
13909113909
13912113912
13913113913
13914113914
13919113919
13929113929
13930227860
13932113932
13935113935
13936113936
13937113937
13940227880
13942227884
13950113950
13953113953
13959227918
13960113960
13967113967
13970113970
13972341916
13979113979
13981227962
13982113982
13986227972
13988113988
13990113990
13997227994
14001114001
14006114006
14007114007
14012114012
14014114014
14016228032
14017114017
14019114019
14023114023
14024570120
14029228058
14030114030
14031342093
14034228068
14035456140
14041114041
14043114043
14044342132
14047114047
14048114048
14049228098
14050228100
14051114051
14053228106
14055342165
14056228112
14057228114
14058456232
14060114060
14061228122
14062114062
14063228126
14064114064
14066114066
14067228134
14068342204
14069228138
14070114070
14071342213
14072114072
14073114073
14075114075
14077114077
14082114082
14083228166
14085228170
14091114091
14092114092
14093114093
14094114094
14096228192
14097114097
14098342294
14101114101
14104114104
14108228216
14109114109
14113114113
14115114115
14116114116
14117114117
14118114118
14121114121
14123114123
14126114126
14127114127
14128114128
14129114129
14130114130
14132228264
14133114133
14135114135
14136228272
14137114137
14139114139
14140228280
14141114141
14142228284
14144114144
14145114145
14146114146
14148114148
14150114150
14151114151
14153114153
14154114154
14155114155
14156342468
14157342471
14158342474
14159228318
14160228320
14161114161
14162114162
14164114164
14166342498
14168228336
14170114170
14173228346
14177342531
14178114178
14180228360
14181342543
14182456728
14183114183
14184114184
14186114186
14187114187
14188228376
14190228380
14195114195
14197114197
14198114198
14199114199
14201114201
14203114203
14205114205
14206114206
14208114208
14209114209
14210114210
14211114211
14212114212
14213114213
14214114214
14216228432
14217228434
14218228436
14219114219
14221114221
14222228444
14223228446
14224114224
14226114226
14228114228
14230114230
14233114233
14234228468
14235114235
14236114236
14237228474
14238342714
14240114240
14242114242
14247114247
14248114248
14250228500
14251342753
14253114253
14255342765
14256114256
14257342771
14258228516
14259114259
14260228520
14261342783
14264228528
14267228534
14268342804
14269457076
14270342810
14271457084
14272228544
14273114273
14275228550
14276114276
14277571385
14278342834
14279457116
14280114280
14281342843
14282342846
14283457132
14285457140
14286342858
14287571435
14288228576
14289457156
14290114290
14291114291
14293571465
14294114294
14295342885
14296342888
142977100079
14298457192
14299571495
143009128700
14301342903
14302685812
14303571515
14304228608
1430510143050
14306114306
14307342921
14308457232
14309342927
14310571550
14311228622
14312228624
14313457252
14314114314
14315457260
14316228632
14317571585
14318457272
14320342960
14321685926
14322342966
14323571615
14324457296
14325228650
14326228652
14327342981
14328457312
14329114329
14330114330
14331228662
14332342996
14333457332
14334343002
14335228670
14336228672
14338114338
14340114340
14341114341
14342228684
14343571715
14344114344
14345228690
14346571730
14347343041
14348228696
14349114349
14350228700
14351228702
14352228704
14353114353
14355343065
14357114357
14358114358
14360114360
14363228726
14367228734
14368228736
14369114369
14373228746
14374343122
14375114375
14377343131
14379114379
14380228760
14381114381
14383228766
14384228768
14387228774
14390114390
14392114392
14393228786
14394228788
14395114395
14396114396
14397228794
14398343194
14399114399
14400228800
14402114402
14403114403
14404343212
14406572030
14409457636
14410228820
14411114411
14412343236
14413228826
14414343242
14416228832
14417572085
14418228836
14419114419
14420114420
14421572105
14422343266
14423457692
14424114424
14425114425
14426114426
14427343281
14428228856
14429228858
14430114430
14431228862
14432114432
14434114434
14435228870
14436228872
14437343311
14438228876
14440457760
14441228882
14443228886
14444343332
14445114445
14446343338
14447114447
14448114448
14449228898
14450686700
14451343353
14452228904
14453457812
14454114454
144557101185
14456343368
14457457828
14458572290
14459114459
14460114460
14461343383
14462228924
14463343389
14464343392
14465114465
14466228932
14468343404
14470343410
14472114472
14473114473
14475114475
14476228952
14477343431
14478343434
14479228958
14481572405
14482114482
14483114483
14484228968
14485343455
14486114486
14487114487
14488114488
14489114489
14490114490
14491114491
14492114492
14494114494
14498114498
14499343497
14500229000
14501114501
14503229006
14504114504
14505229010
14507114507
14508343524
14510229020
14511229022
14512114512
14513114513
14514229028
14518114518
14519229038
14520114520
14524114524
14525114525
14526114526
14527229054
14528229056
14529114529
14533114533
14534114534
14535229070
14536114536
14538114538
14541114541
14543114543
Total100213931447
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
10390110390
10441110441
10483110483
10496110496
10528110528
10551110551
10568110568
10575110575
10583110583
10652110652
10670110670
10712110712
10751110751
10753110753
10766110766
10775110775
10811110811
10863110863
10884110884
10889110889
10989110989
11019111019
11055111055
11068111068
11079111079
11152111152
11198111198
11214111214
11231111231
11246111246
11307111307
11362111362
11364111364
11381111381
11424111424
11473111473
11521111521
11533111533
11536111536
11580111580
11647111647
11665111665
11685111685
11717111717
11757111757
11763111763
11765111765
11767111767
11773111773
11788111788
11809111809
11810111810
11812111812
11819111819
11825111825
11837111837
11840111840
11844111844
11859111859
11863111863
11864111864
11892111892
11897111897
11901111901
11906111906
11908111908
11925111925
11941111941
11954111954
11963111963
11969111969
11984111984
12011112011
12017112017
12019112019
12034112034
12041112041
12062112062
12107224214
12123112123
12126112126
12140112140
12156224312
12169112169
12195224390
12221112221
12224112224
12235112235
12237112237
12269112269
12274112274
12276112276
12288112288
12317112317
12322112322
12341112341
12387112387
12396112396
12430112430
12433112433
12445112445
12500112500
12524112524
12551112551
12561112561
12616112616
12632112632
12663112663
12687112687
12705112705
12746112746
12782112782
12796112796
12801112801
12830112830
12872112872
12909112909
12918112918
12951112951
12970112970
12982112982
12986112986
13013113013
13029113029
13059113059
13070113070
13137113137
13151113151
13177113177
13182113182
13183113183
13223113223
13249113249
13269113269
13289113289
13334113334
13370113370
13371113371
13384113384
13406113406
13423113423
13465113465
13479113479
13515113515
13547113547
13562113562
13575113575
13588113588
13613113613
13638113638
13658113658
13668113668
13693113693
13718113718
13741113741
13743113743
13755113755
13766113766
13805113805
13823113823
13837113837
13841113841
13844113844
13846113846
13849227698
13850227700
13852113852
13853113853
13856113856
13857113857
13859113859
13862113862
13865227730
13866113866
13867227734
13869113869
13870113870
13876113876
13877113877
13878113878
13879113879
13883227766
13885113885
13886113886
13887113887
13892113892
13893113893
13894113894
13896113896
13897113897
13899113899
13903113903
13905113905
13908113908
13909113909
13910113910
13915113915
13925113925
13926227852
13928113928
13931113931
13932113932
13933113933
13936227872
13938227876
13946113946
13949113949
13955227910
13956113956
13963113963
13966113966
13968341904
13975113975
13977227954
13978113978
13982227964
13984113984
13986113986
13993227986
13997113997
14002114002
14003114003
14008114008
14010114010
14012228024
14013114013
14015114015
14019114019
14020570100
14025228050
14026114026
14027342081
14030228060
14031456124
14037114037
14039114039
14040342120
14043114043
14044114044
14045228090
14046228092
14047114047
14049228098
14051342153
14052228104
14053228106
14054456216
14056114056
14057228114
14058114058
14059228118
14060114060
14062114062
14063228126
14064342192
14065228130
14066114066
14067342201
14068114068
14069114069
14071114071
14073114073
14078114078
14079228158
14081228162
14087114087
14088114088
14089114089
14090114090
14092228184
14093114093
14094342282
14097114097
14100114100
14104228208
14105114105
14109114109
14111114111
14112114112
14113114113
14114114114
14117114117
14119114119
14122114122
14123114123
14124114124
14125114125
14126114126
14128228256
14129114129
14131114131
14132228264
14133114133
14135114135
14136228272
14137114137
14138228276
14140114140
14141114141
14142114142
14144114144
14146114146
14147114147
14149114149
14150114150
14151114151
14152342456
14153342459
14154342462
14155228310
14156228312
14157114157
14158114158
14160114160
14162342486
14164228328
14166114166
14169228338
14173342519
14174114174
14176228352
14177342531
14178456712
14179114179
14180114180
14182114182
14183114183
14184228368
14186228372
14191114191
14193114193
14194114194
14195114195
14197114197
14199114199
14201114201
14202114202
14204114204
14205114205
14206114206
14207114207
14208114208
14209114209
14210114210
14212228424
14213228426
14214228428
14215114215
14217114217
14218228436
14219228438
14220114220
14222114222
14224114224
14226114226
14229114229
14230228460
14231114231
14232114232
14233228466
14234342702
14236114236
14238114238
14243114243
14244114244
14246228492
14247342741
14249114249
14251342753
14252114252
14253342759
14254228508
14255114255
14256228512
14257342771
14260228520
14263228526
14264342792
14265457060
14266342798
14267457068
14268228536
14269114269
14271228542
14272114272
14273571365
14274342822
14275457100
14276114276
14277342831
14278342834
14279457116
14281457124
14282342846
14283571415
14284228568
14285457140
14286114286
14287114287
14289571445
14290114290
14291342873
14292342876
142937100051
14294457176
14295571475
142969128664
14297342891
14298685788
14299571495
14300228600
1430110143010
14302114302
14303342909
14304457216
14305342915
14306571530
14307228614
14308228616
14309457236
14310114310
14311457244
14312228624
14313571565
14314457256
14316342948
14317685902
14318342954
14319571595
14320457280
14321228642
14322228644
14323342969
14324457296
14325114325
14326114326
14327228654
14328342984
14329457316
14330342990
14331228662
14332228664
14334114334
14336114336
14337114337
14338228676
14339571695
14340114340
14341228682
14342571710
14343343029
14344228688
14345114345
14346228692
14347228694
14348228696
14349114349
14351343053
14353114353
14354114354
14356114356
14359228718
14363228726
14364228728
14365114365
14369228738
14370343110
14371114371
14373343119
14375114375
14376228752
14377114377
14379228758
14380228760
14383228766
14386114386
14388114388
14389228778
14390228780
14391114391
14392114392
14393228786
14394343182
14395114395
14396228792
14398114398
14399114399
14400343200
14402572010
14405457620
14406228812
14407114407
14408343224
14409228818
14410343230
14412228824
14413572065
14414228828
14415114415
14416114416
14417572085
14418343254
14419457676
14420114420
14421114421
14422114422
14423343269
14424228848
14425228850
14426114426
14427228854
14428114428
14430114430
14431228862
14432228864
14433343299
14434228868
14436457744
14437228874
14439228878
14440343320
14441114441
14442343326
14443114443
14444114444
14445228890
14446686676
14447343341
14448228896
14449457796
14450114450
144517101157
14452343356
14453457812
14454572270
14455114455
14456114456
14457343371
14458228916
14459343377
14460343380
14461114461
14462228924
14464343392
14466343398
14468114468
14469114469
14471114471
14472228944
14473343419
14474343422
14475228950
14477572385
14478114478
14479114479
14480228960
14481343443
14482114482
14483114483
14484114484
14485114485
14486114486
14487114487
14488114488
14490114490
14494114494
14495343485
14496228992
14497114497
14499228998
14500114500
14501229002
14503114503
14504343512
14506229012
14507229014
14508114508
14509114509
14510229020
14514114514
14515229030
14516114516
14520114520
14521114521
14522114522
14523229046
14524229048
14525114525
14529114529
14530114530
14531229062
14532114532
14534114534
14537114537
14539114539
Total100213927438
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333236266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882c217bb43c1ff
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6332313762623433
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_2_7.json b/autobahn/client/tungstenite_case_12_2_7.json new file mode 100644 index 0000000..0b2c8d2 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_7.json @@ -0,0 +1,1335 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 326, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 1678, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=326&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: fnEl+tJvBWSpFiqI22m9og==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: +l+sVUBfwfDYgO98Yw6jjyosUiM=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.2.7", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "10394": 1, + "10445": 1, + "10487": 1, + "10500": 1, + "10532": 1, + "10555": 1, + "10572": 1, + "10579": 1, + "10587": 1, + "10656": 1, + "10674": 1, + "10716": 1, + "10755": 1, + "10757": 1, + "10770": 1, + "10779": 1, + "10815": 1, + "10867": 1, + "10888": 1, + "10893": 1, + "10993": 1, + "11023": 1, + "11059": 1, + "11072": 1, + "11083": 1, + "11156": 1, + "11202": 1, + "11218": 1, + "11235": 1, + "11250": 1, + "11311": 1, + "11366": 1, + "11368": 1, + "11385": 1, + "11428": 1, + "11477": 1, + "11525": 1, + "11537": 1, + "11540": 1, + "11584": 1, + "11651": 1, + "11669": 1, + "11689": 1, + "11721": 1, + "11761": 1, + "11767": 1, + "11769": 1, + "11771": 1, + "11777": 1, + "11792": 1, + "11813": 1, + "11814": 1, + "11816": 1, + "11823": 1, + "11829": 1, + "11841": 1, + "11844": 1, + "11848": 1, + "11863": 1, + "11867": 1, + "11868": 1, + "11896": 1, + "11901": 1, + "11905": 1, + "11910": 1, + "11912": 1, + "11929": 1, + "11945": 1, + "11958": 1, + "11967": 1, + "11973": 1, + "11988": 1, + "12015": 1, + "12021": 1, + "12023": 1, + "12038": 1, + "12045": 1, + "12066": 1, + "12111": 2, + "12127": 1, + "12130": 1, + "12144": 1, + "12160": 2, + "12173": 1, + "12199": 2, + "12225": 1, + "12228": 1, + "12239": 1, + "12241": 1, + "12273": 1, + "12278": 1, + "12280": 1, + "12292": 1, + "12321": 1, + "12326": 1, + "12345": 1, + "12391": 1, + "12400": 1, + "12434": 1, + "12437": 1, + "12449": 1, + "12504": 1, + "12528": 1, + "12555": 1, + "12565": 1, + "12620": 1, + "12636": 1, + "12667": 1, + "12691": 1, + "12709": 1, + "12750": 1, + "12786": 1, + "12800": 1, + "12805": 1, + "12834": 1, + "12876": 1, + "12913": 1, + "12922": 1, + "12955": 1, + "12974": 1, + "12986": 1, + "12990": 1, + "13017": 1, + "13033": 1, + "13063": 1, + "13074": 1, + "13141": 1, + "13155": 1, + "13181": 1, + "13186": 1, + "13187": 1, + "13227": 1, + "13253": 1, + "13273": 1, + "13293": 1, + "13338": 1, + "13374": 1, + "13375": 1, + "13388": 1, + "13410": 1, + "13427": 1, + "13469": 1, + "13483": 1, + "13519": 1, + "13551": 1, + "13566": 1, + "13579": 1, + "13592": 1, + "13617": 1, + "13642": 1, + "13662": 1, + "13672": 1, + "13697": 1, + "13722": 1, + "13745": 1, + "13747": 1, + "13759": 1, + "13770": 1, + "13809": 1, + "13827": 1, + "13841": 1, + "13845": 1, + "13848": 1, + "13850": 1, + "13853": 2, + "13854": 2, + "13856": 1, + "13857": 1, + "13860": 1, + "13861": 1, + "13863": 1, + "13866": 1, + "13869": 2, + "13870": 1, + "13871": 2, + "13873": 1, + "13874": 1, + "13880": 1, + "13881": 1, + "13882": 1, + "13883": 1, + "13887": 2, + "13889": 1, + "13890": 1, + "13891": 1, + "13896": 1, + "13897": 1, + "13898": 1, + "13900": 1, + "13901": 1, + "13903": 1, + "13907": 1, + "13909": 1, + "13912": 1, + "13913": 1, + "13914": 1, + "13919": 1, + "13929": 1, + "13930": 2, + "13932": 1, + "13935": 1, + "13936": 1, + "13937": 1, + "13940": 2, + "13942": 2, + "13950": 1, + "13953": 1, + "13959": 2, + "13960": 1, + "13967": 1, + "13970": 1, + "13972": 3, + "13979": 1, + "13981": 2, + "13982": 1, + "13986": 2, + "13988": 1, + "13990": 1, + "13997": 2, + "14001": 1, + "14006": 1, + "14007": 1, + "14012": 1, + "14014": 1, + "14016": 2, + "14017": 1, + "14019": 1, + "14023": 1, + "14024": 5, + "14029": 2, + "14030": 1, + "14031": 3, + "14034": 2, + "14035": 4, + "14041": 1, + "14043": 1, + "14044": 3, + "14047": 1, + "14048": 1, + "14049": 2, + "14050": 2, + "14051": 1, + "14053": 2, + "14055": 3, + "14056": 2, + "14057": 2, + "14058": 4, + "14060": 1, + "14061": 2, + "14062": 1, + "14063": 2, + "14064": 1, + "14066": 1, + "14067": 2, + "14068": 3, + "14069": 2, + "14070": 1, + "14071": 3, + "14072": 1, + "14073": 1, + "14075": 1, + "14077": 1, + "14082": 1, + "14083": 2, + "14085": 2, + "14091": 1, + "14092": 1, + "14093": 1, + "14094": 1, + "14096": 2, + "14097": 1, + "14098": 3, + "14101": 1, + "14104": 1, + "14108": 2, + "14109": 1, + "14113": 1, + "14115": 1, + "14116": 1, + "14117": 1, + "14118": 1, + "14121": 1, + "14123": 1, + "14126": 1, + "14127": 1, + "14128": 1, + "14129": 1, + "14130": 1, + "14132": 2, + "14133": 1, + "14135": 1, + "14136": 2, + "14137": 1, + "14139": 1, + "14140": 2, + "14141": 1, + "14142": 2, + "14144": 1, + "14145": 1, + "14146": 1, + "14148": 1, + "14150": 1, + "14151": 1, + "14153": 1, + "14154": 1, + "14155": 1, + "14156": 3, + "14157": 3, + "14158": 3, + "14159": 2, + "14160": 2, + "14161": 1, + "14162": 1, + "14164": 1, + "14166": 3, + "14168": 2, + "14170": 1, + "14173": 2, + "14177": 3, + "14178": 1, + "14180": 2, + "14181": 3, + "14182": 4, + "14183": 1, + "14184": 1, + "14186": 1, + "14187": 1, + "14188": 2, + "14190": 2, + "14195": 1, + "14197": 1, + "14198": 1, + "14199": 1, + "14201": 1, + "14203": 1, + "14205": 1, + "14206": 1, + "14208": 1, + "14209": 1, + "14210": 1, + "14211": 1, + "14212": 1, + "14213": 1, + "14214": 1, + "14216": 2, + "14217": 2, + "14218": 2, + "14219": 1, + "14221": 1, + "14222": 2, + "14223": 2, + "14224": 1, + "14226": 1, + "14228": 1, + "14230": 1, + "14233": 1, + "14234": 2, + "14235": 1, + "14236": 1, + "14237": 2, + "14238": 3, + "14240": 1, + "14242": 1, + "14247": 1, + "14248": 1, + "14250": 2, + "14251": 3, + "14253": 1, + "14255": 3, + "14256": 1, + "14257": 3, + "14258": 2, + "14259": 1, + "14260": 2, + "14261": 3, + "14264": 2, + "14267": 2, + "14268": 3, + "14269": 4, + "14270": 3, + "14271": 4, + "14272": 2, + "14273": 1, + "14275": 2, + "14276": 1, + "14277": 5, + "14278": 3, + "14279": 4, + "14280": 1, + "14281": 3, + "14282": 3, + "14283": 4, + "14285": 4, + "14286": 3, + "14287": 5, + "14288": 2, + "14289": 4, + "14290": 1, + "14291": 1, + "14293": 5, + "14294": 1, + "14295": 3, + "14296": 3, + "14297": 7, + "14298": 4, + "14299": 5, + "14300": 9, + "14301": 3, + "14302": 6, + "14303": 5, + "14304": 2, + "14305": 10, + "14306": 1, + "14307": 3, + "14308": 4, + "14309": 3, + "14310": 5, + "14311": 2, + "14312": 2, + "14313": 4, + "14314": 1, + "14315": 4, + "14316": 2, + "14317": 5, + "14318": 4, + "14320": 3, + "14321": 6, + "14322": 3, + "14323": 5, + "14324": 4, + "14325": 2, + "14326": 2, + "14327": 3, + "14328": 4, + "14329": 1, + "14330": 1, + "14331": 2, + "14332": 3, + "14333": 4, + "14334": 3, + "14335": 2, + "14336": 2, + "14338": 1, + "14340": 1, + "14341": 1, + "14342": 2, + "14343": 5, + "14344": 1, + "14345": 2, + "14346": 5, + "14347": 3, + "14348": 2, + "14349": 1, + "14350": 2, + "14351": 2, + "14352": 2, + "14353": 1, + "14355": 3, + "14357": 1, + "14358": 1, + "14360": 1, + "14363": 2, + "14367": 2, + "14368": 2, + "14369": 1, + "14373": 2, + "14374": 3, + "14375": 1, + "14377": 3, + "14379": 1, + "14380": 2, + "14381": 1, + "14383": 2, + "14384": 2, + "14387": 2, + "14390": 1, + "14392": 1, + "14393": 2, + "14394": 2, + "14395": 1, + "14396": 1, + "14397": 2, + "14398": 3, + "14399": 1, + "14400": 2, + "14402": 1, + "14403": 1, + "14404": 3, + "14406": 5, + "14409": 4, + "14410": 2, + "14411": 1, + "14412": 3, + "14413": 2, + "14414": 3, + "14416": 2, + "14417": 5, + "14418": 2, + "14419": 1, + "14420": 1, + "14421": 5, + "14422": 3, + "14423": 4, + "14424": 1, + "14425": 1, + "14426": 1, + "14427": 3, + "14428": 2, + "14429": 2, + "14430": 1, + "14431": 2, + "14432": 1, + "14434": 1, + "14435": 2, + "14436": 2, + "14437": 3, + "14438": 2, + "14440": 4, + "14441": 2, + "14443": 2, + "14444": 3, + "14445": 1, + "14446": 3, + "14447": 1, + "14448": 1, + "14449": 2, + "14450": 6, + "14451": 3, + "14452": 2, + "14453": 4, + "14454": 1, + "14455": 7, + "14456": 3, + "14457": 4, + "14458": 5, + "14459": 1, + "14460": 1, + "14461": 3, + "14462": 2, + "14463": 3, + "14464": 3, + "14465": 1, + "14466": 2, + "14468": 3, + "14470": 3, + "14472": 1, + "14473": 1, + "14475": 1, + "14476": 2, + "14477": 3, + "14478": 3, + "14479": 2, + "14481": 5, + "14482": 1, + "14483": 1, + "14484": 2, + "14485": 3, + "14486": 1, + "14487": 1, + "14488": 1, + "14489": 1, + "14490": 1, + "14491": 1, + "14492": 1, + "14494": 1, + "14498": 1, + "14499": 3, + "14500": 2, + "14501": 1, + "14503": 2, + "14504": 1, + "14505": 2, + "14507": 1, + "14508": 3, + "14510": 2, + "14511": 2, + "14512": 1, + "14513": 1, + "14514": 2, + "14518": 1, + "14519": 2, + "14520": 1, + "14524": 1, + "14525": 1, + "14526": 1, + "14527": 2, + "14528": 2, + "14529": 1, + "14533": 1, + "14534": 1, + "14535": 2, + "14536": 1, + "14538": 1, + "14541": 1, + "14543": 1 + }, + "started": "2020-09-07T18:45:08.647Z", + "trafficStats": { + "incomingCompressionRatio": 0.8498035888671875, + "incomingOctetsAppLevel": 16384000, + "incomingOctetsWebSocketLevel": 13923182, + "incomingOctetsWireLevel": 13931182, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0005745812990162738, + "outgoingCompressionRatio": 0.8498035888671875, + "outgoingOctetsAppLevel": 16384000, + "outgoingOctetsWebSocketLevel": 13923182, + "outgoingOctetsWireLevel": 13927182, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0002872906495081369, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "10390": 1, + "10441": 1, + "10483": 1, + "10496": 1, + "10528": 1, + "10551": 1, + "10568": 1, + "10575": 1, + "10583": 1, + "10652": 1, + "10670": 1, + "10712": 1, + "10751": 1, + "10753": 1, + "10766": 1, + "10775": 1, + "10811": 1, + "10863": 1, + "10884": 1, + "10889": 1, + "10989": 1, + "11019": 1, + "11055": 1, + "11068": 1, + "11079": 1, + "11152": 1, + "11198": 1, + "11214": 1, + "11231": 1, + "11246": 1, + "11307": 1, + "11362": 1, + "11364": 1, + "11381": 1, + "11424": 1, + "11473": 1, + "11521": 1, + "11533": 1, + "11536": 1, + "11580": 1, + "11647": 1, + "11665": 1, + "11685": 1, + "11717": 1, + "11757": 1, + "11763": 1, + "11765": 1, + "11767": 1, + "11773": 1, + "11788": 1, + "11809": 1, + "11810": 1, + "11812": 1, + "11819": 1, + "11825": 1, + "11837": 1, + "11840": 1, + "11844": 1, + "11859": 1, + "11863": 1, + "11864": 1, + "11892": 1, + "11897": 1, + "11901": 1, + "11906": 1, + "11908": 1, + "11925": 1, + "11941": 1, + "11954": 1, + "11963": 1, + "11969": 1, + "11984": 1, + "12011": 1, + "12017": 1, + "12019": 1, + "12034": 1, + "12041": 1, + "12062": 1, + "12107": 2, + "12123": 1, + "12126": 1, + "12140": 1, + "12156": 2, + "12169": 1, + "12195": 2, + "12221": 1, + "12224": 1, + "12235": 1, + "12237": 1, + "12269": 1, + "12274": 1, + "12276": 1, + "12288": 1, + "12317": 1, + "12322": 1, + "12341": 1, + "12387": 1, + "12396": 1, + "12430": 1, + "12433": 1, + "12445": 1, + "12500": 1, + "12524": 1, + "12551": 1, + "12561": 1, + "12616": 1, + "12632": 1, + "12663": 1, + "12687": 1, + "12705": 1, + "12746": 1, + "12782": 1, + "12796": 1, + "12801": 1, + "12830": 1, + "12872": 1, + "12909": 1, + "12918": 1, + "12951": 1, + "12970": 1, + "12982": 1, + "12986": 1, + "13013": 1, + "13029": 1, + "13059": 1, + "13070": 1, + "13137": 1, + "13151": 1, + "13177": 1, + "13182": 1, + "13183": 1, + "13223": 1, + "13249": 1, + "13269": 1, + "13289": 1, + "13334": 1, + "13370": 1, + "13371": 1, + "13384": 1, + "13406": 1, + "13423": 1, + "13465": 1, + "13479": 1, + "13515": 1, + "13547": 1, + "13562": 1, + "13575": 1, + "13588": 1, + "13613": 1, + "13638": 1, + "13658": 1, + "13668": 1, + "13693": 1, + "13718": 1, + "13741": 1, + "13743": 1, + "13755": 1, + "13766": 1, + "13805": 1, + "13823": 1, + "13837": 1, + "13841": 1, + "13844": 1, + "13846": 1, + "13849": 2, + "13850": 2, + "13852": 1, + "13853": 1, + "13856": 1, + "13857": 1, + "13859": 1, + "13862": 1, + "13865": 2, + "13866": 1, + "13867": 2, + "13869": 1, + "13870": 1, + "13876": 1, + "13877": 1, + "13878": 1, + "13879": 1, + "13883": 2, + "13885": 1, + "13886": 1, + "13887": 1, + "13892": 1, + "13893": 1, + "13894": 1, + "13896": 1, + "13897": 1, + "13899": 1, + "13903": 1, + "13905": 1, + "13908": 1, + "13909": 1, + "13910": 1, + "13915": 1, + "13925": 1, + "13926": 2, + "13928": 1, + "13931": 1, + "13932": 1, + "13933": 1, + "13936": 2, + "13938": 2, + "13946": 1, + "13949": 1, + "13955": 2, + "13956": 1, + "13963": 1, + "13966": 1, + "13968": 3, + "13975": 1, + "13977": 2, + "13978": 1, + "13982": 2, + "13984": 1, + "13986": 1, + "13993": 2, + "13997": 1, + "14002": 1, + "14003": 1, + "14008": 1, + "14010": 1, + "14012": 2, + "14013": 1, + "14015": 1, + "14019": 1, + "14020": 5, + "14025": 2, + "14026": 1, + "14027": 3, + "14030": 2, + "14031": 4, + "14037": 1, + "14039": 1, + "14040": 3, + "14043": 1, + "14044": 1, + "14045": 2, + "14046": 2, + "14047": 1, + "14049": 2, + "14051": 3, + "14052": 2, + "14053": 2, + "14054": 4, + "14056": 1, + "14057": 2, + "14058": 1, + "14059": 2, + "14060": 1, + "14062": 1, + "14063": 2, + "14064": 3, + "14065": 2, + "14066": 1, + "14067": 3, + "14068": 1, + "14069": 1, + "14071": 1, + "14073": 1, + "14078": 1, + "14079": 2, + "14081": 2, + "14087": 1, + "14088": 1, + "14089": 1, + "14090": 1, + "14092": 2, + "14093": 1, + "14094": 3, + "14097": 1, + "14100": 1, + "14104": 2, + "14105": 1, + "14109": 1, + "14111": 1, + "14112": 1, + "14113": 1, + "14114": 1, + "14117": 1, + "14119": 1, + "14122": 1, + "14123": 1, + "14124": 1, + "14125": 1, + "14126": 1, + "14128": 2, + "14129": 1, + "14131": 1, + "14132": 2, + "14133": 1, + "14135": 1, + "14136": 2, + "14137": 1, + "14138": 2, + "14140": 1, + "14141": 1, + "14142": 1, + "14144": 1, + "14146": 1, + "14147": 1, + "14149": 1, + "14150": 1, + "14151": 1, + "14152": 3, + "14153": 3, + "14154": 3, + "14155": 2, + "14156": 2, + "14157": 1, + "14158": 1, + "14160": 1, + "14162": 3, + "14164": 2, + "14166": 1, + "14169": 2, + "14173": 3, + "14174": 1, + "14176": 2, + "14177": 3, + "14178": 4, + "14179": 1, + "14180": 1, + "14182": 1, + "14183": 1, + "14184": 2, + "14186": 2, + "14191": 1, + "14193": 1, + "14194": 1, + "14195": 1, + "14197": 1, + "14199": 1, + "14201": 1, + "14202": 1, + "14204": 1, + "14205": 1, + "14206": 1, + "14207": 1, + "14208": 1, + "14209": 1, + "14210": 1, + "14212": 2, + "14213": 2, + "14214": 2, + "14215": 1, + "14217": 1, + "14218": 2, + "14219": 2, + "14220": 1, + "14222": 1, + "14224": 1, + "14226": 1, + "14229": 1, + "14230": 2, + "14231": 1, + "14232": 1, + "14233": 2, + "14234": 3, + "14236": 1, + "14238": 1, + "14243": 1, + "14244": 1, + "14246": 2, + "14247": 3, + "14249": 1, + "14251": 3, + "14252": 1, + "14253": 3, + "14254": 2, + "14255": 1, + "14256": 2, + "14257": 3, + "14260": 2, + "14263": 2, + "14264": 3, + "14265": 4, + "14266": 3, + "14267": 4, + "14268": 2, + "14269": 1, + "14271": 2, + "14272": 1, + "14273": 5, + "14274": 3, + "14275": 4, + "14276": 1, + "14277": 3, + "14278": 3, + "14279": 4, + "14281": 4, + "14282": 3, + "14283": 5, + "14284": 2, + "14285": 4, + "14286": 1, + "14287": 1, + "14289": 5, + "14290": 1, + "14291": 3, + "14292": 3, + "14293": 7, + "14294": 4, + "14295": 5, + "14296": 9, + "14297": 3, + "14298": 6, + "14299": 5, + "14300": 2, + "14301": 10, + "14302": 1, + "14303": 3, + "14304": 4, + "14305": 3, + "14306": 5, + "14307": 2, + "14308": 2, + "14309": 4, + "14310": 1, + "14311": 4, + "14312": 2, + "14313": 5, + "14314": 4, + "14316": 3, + "14317": 6, + "14318": 3, + "14319": 5, + "14320": 4, + "14321": 2, + "14322": 2, + "14323": 3, + "14324": 4, + "14325": 1, + "14326": 1, + "14327": 2, + "14328": 3, + "14329": 4, + "14330": 3, + "14331": 2, + "14332": 2, + "14334": 1, + "14336": 1, + "14337": 1, + "14338": 2, + "14339": 5, + "14340": 1, + "14341": 2, + "14342": 5, + "14343": 3, + "14344": 2, + "14345": 1, + "14346": 2, + "14347": 2, + "14348": 2, + "14349": 1, + "14351": 3, + "14353": 1, + "14354": 1, + "14356": 1, + "14359": 2, + "14363": 2, + "14364": 2, + "14365": 1, + "14369": 2, + "14370": 3, + "14371": 1, + "14373": 3, + "14375": 1, + "14376": 2, + "14377": 1, + "14379": 2, + "14380": 2, + "14383": 2, + "14386": 1, + "14388": 1, + "14389": 2, + "14390": 2, + "14391": 1, + "14392": 1, + "14393": 2, + "14394": 3, + "14395": 1, + "14396": 2, + "14398": 1, + "14399": 1, + "14400": 3, + "14402": 5, + "14405": 4, + "14406": 2, + "14407": 1, + "14408": 3, + "14409": 2, + "14410": 3, + "14412": 2, + "14413": 5, + "14414": 2, + "14415": 1, + "14416": 1, + "14417": 5, + "14418": 3, + "14419": 4, + "14420": 1, + "14421": 1, + "14422": 1, + "14423": 3, + "14424": 2, + "14425": 2, + "14426": 1, + "14427": 2, + "14428": 1, + "14430": 1, + "14431": 2, + "14432": 2, + "14433": 3, + "14434": 2, + "14436": 4, + "14437": 2, + "14439": 2, + "14440": 3, + "14441": 1, + "14442": 3, + "14443": 1, + "14444": 1, + "14445": 2, + "14446": 6, + "14447": 3, + "14448": 2, + "14449": 4, + "14450": 1, + "14451": 7, + "14452": 3, + "14453": 4, + "14454": 5, + "14455": 1, + "14456": 1, + "14457": 3, + "14458": 2, + "14459": 3, + "14460": 3, + "14461": 1, + "14462": 2, + "14464": 3, + "14466": 3, + "14468": 1, + "14469": 1, + "14471": 1, + "14472": 2, + "14473": 3, + "14474": 3, + "14475": 2, + "14477": 5, + "14478": 1, + "14479": 1, + "14480": 2, + "14481": 3, + "14482": 1, + "14483": 1, + "14484": 1, + "14485": 1, + "14486": 1, + "14487": 1, + "14488": 1, + "14490": 1, + "14494": 1, + "14495": 3, + "14496": 2, + "14497": 1, + "14499": 2, + "14500": 1, + "14501": 2, + "14503": 1, + "14504": 3, + "14506": 2, + "14507": 2, + "14508": 1, + "14509": 1, + "14510": 2, + "14514": 1, + "14515": 2, + "14516": 1, + "14520": 1, + "14521": 1, + "14522": 1, + "14523": 2, + "14524": 2, + "14525": 1, + "14529": 1, + "14530": 1, + "14531": 2, + "14532": 1, + "14534": 1, + "14537": 1, + "14539": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333236266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882c217bb43c1ff" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "c217bb43" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_2_8.html b/autobahn/client/tungstenite_case_12_2_8.html new file mode 100644 index 0000000..3907796 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_8.html @@ -0,0 +1,1698 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.2.8 : Pass - 3248 ms @ 2020-09-07T18:45:10.326Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=327&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: o1ZF3GAmH94FUwQZSVSbhw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: auQLlBVoPV+DAz0bBaEkySOIlJ4=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
22873122873
22876122876
22885122885
22975122975
23046123046
23087123087
23102123102
23122123122
23162123162
23236123236
23238123238
23246123246
23259123259
23268123268
23275123275
23283123283
23291123291
23311123311
23354123354
23357123357
23375123375
23382123382
23403123403
23415123415
23454123454
23495123495
23537123537
23555123555
23572123572
23581123581
23614123614
23641123641
23661123661
23696123696
23740123740
23750123750
23778123778
23794123794
23846123846
23895123895
23925123925
23933123933
23955123955
23998123998
24074124074
24080124080
24099124099
24115124115
24168124168
24231124231
24261124261
24271124271
24292124292
24326124326
24388124388
24393124393
24438124438
24456124456
24476124476
24542124542
24565124565
24614124614
24624124624
24638124638
24697124697
24717124717
24758124758
24791124791
24809124809
24847124847
24883124883
24909124909
24912124912
24933124933
24952124952
24984124984
24993124993
25009125009
25027125027
25030125030
25046125046
25058125058
25085125085
25099125099
25132125132
25148125148
25185125185
25188125188
25206125206
25208125208
25244125244
25252125252
25299125299
25307125307
25332125332
25341125341
25349125349
25369125369
25381125381
25418125418
25448125448
25470250940
25499125499
25513125513
25525125525
25539125539
25564125564
25605125605
25616125616
25632125632
25646125646
25672125672
25673125673
25699125699
25707125707
25756125756
25766125766
25784125784
25793125793
25818125818
25834125834
25845125845
25850125850
25906125906
25925125925
25933125933
25956125956
25977125977
25980125980
25992125992
26000126000
26055126055
26068126068
26083126083
26108126108
26119126119
26130126130
26151126151
26156126156
26193126193
26203126203
26229126229
26243126243
26269126269
26271126271
26281126281
26298126298
26328126328
26346126346
26348126348
26361126361
26388252776
26408126408
26431126431
26459126459
26460126460
26476126476
26504126504
26522126522
26535126535
26550126550
26564126564
26565126565
26571126571
26608126608
26619126619
26620126620
26628126628
26654126654
26679126679
26699126699
26735126735
26748126748
26761126761
26831126831
26857126857
26899126899
26926126926
26944126944
26993126993
27016127016
27057127057
27074127074
27112127112
27132127132
27153127153
27202127202
27205127205
27265127265
27300127300
27314127314
27323127323
27334127334
27387127387
27429127429
27444127444
27466127466
27503127503
27508127508
27560127560
27564127564
27606127606
27624127624
27681127681
27684127684
27687127687
27740127740
27769127769
27794127794
27808127808
27845127845
27870127870
27880127880
27898127898
27911127911
27936127936
27968127968
27970127970
28002128002
28024128024
28031256062
28032128032
28036128036
28039256078
28040384120
28043256086
28044128044
28048384144
28050128050
28056128056
28057256114
28059384177
28060128060
28062128062
28063256126
28066128066
28070256140
28077256154
28080128080
28088128088
28089128089
28091384273
28092128092
28099256198
28104128104
28109128109
28112128112
28117256234
28119128119
28122128122
28125128125
28128256256
28129128129
28132128132
28134128134
28138128138
28139128139
28142128142
28148256296
28151128151
28153256306
28154128154
28158384474
28160256320
28161128161
28163256326
28164128164
28168256336
28169256338
28172128172
28174128174
28178128178
28180256360
28184256368
28185128185
28189128189
28190128190
28191128191
28192128192
28193128193
28194128194
28195128195
28196256392
28199128199
28200128200
28201256402
28202128202
28204128204
28206128206
28207128207
28209256418
28210384630
28211256422
28212128212
28213128213
28215256430
28216384648
28217128217
28218128218
28219128219
28221128221
28223128223
28224128224
28225256450
28227256454
28229128229
28231128231
28233128233
28234128234
28238128238
28241128241
28244128244
28245128245
28247128247
28248128248
28249256498
28250256500
28252128252
28255128255
28256128256
28257128257
28258256516
28259128259
28260256520
28261128261
28264128264
28265128265
28266128266
28267128267
28272384816
28273128273
28275256550
28276256552
28278128278
28279128279
28280128280
28282128282
28286256572
28289256578
282914113164
28295128295
28297256594
28301128301
28306128306
28307128307
28308128308
28310128310
28314128314
28315128315
28316256632
28317128317
28318256636
28319128319
28323128323
28326128326
28330128330
28332128332
28336128336
28337128337
28339128339
28340256680
28342128342
28346128346
28347128347
28348128348
28354256708
28362128362
28366256732
28369128369
28373128373
28376128376
28377385131
28378128378
28380385140
28382128382
28385128385
28387128387
28389128389
28390128390
28392256784
28395128395
28396128396
28397256794
28400128400
28403128403
28405128405
28408128408
28412128412
28416128416
28418256836
28421128421
28425128425
28426128426
28428128428
28429128429
28430128430
28436128436
28438128438
28439128439
28441128441
28442128442
28443128443
28446256892
28448256896
28454128454
28455256910
284584113832
28459128459
28465128465
28467256934
28469128469
28475128475
28476256952
28477128477
28478128478
28481256962
28484256968
28485256970
28486256972
284874113948
28488128488
28490128490
28493128493
28498128498
28500128500
28504128504
28505128505
28506128506
28507257014
28508128508
28510128510
28511128511
28512128512
28516128516
28517257034
28519128519
28521257042
28524257048
28525128525
28526385578
28527128527
28529128529
285304114120
28531257062
28532257064
28533385599
28534385602
28535257070
28536385608
28537128537
28538257076
28539257078
28540128540
28542257084
28543128543
28544128544
28545257090
28547257094
28549128549
28552128552
28553128553
28555128555
28556257112
28557385671
28558257116
28559128559
28560128560
28561128561
28562128562
28563128563
28564257128
28566128566
28568128568
28570257140
28571128571
285724114288
28573128573
285744114296
28575257150
28576128576
28577128577
28578385734
285795142895
28581385743
28582128582
28583257166
28584128584
28585128585
28586257172
28588385764
28589128589
28592257184
28594257188
285955142975
28598128598
28599257198
28600257200
28601257202
28602257204
286044114416
28605128605
28606257212
286074114428
28608385824
28609128609
28610128610
28611128611
28614257228
28615128615
28617257234
28618257236
28619128619
28620257240
28621385863
28623385869
28624128624
286255143125
28626128626
286274114508
286284114512
28629385887
28630128630
28631385893
28633128633
28635385905
28636385908
28637128637
28638257276
28639128639
28640385920
28641128641
28642385926
28643385929
28644128644
28645128645
28646257292
28647257294
286484114592
28649128649
28650128650
28653128653
28654257308
28656128656
28657257314
28660128660
28662128662
28664128664
28666128666
28667128667
28674128674
28675257350
28678128678
28681386043
28682128682
28685128685
28687257374
28691128691
28694257388
28697128697
28702128702
28703128703
28706128706
28709128709
28710128710
28711128711
28712128712
28716128716
28719128719
28722257444
28723128723
28724257448
28727257454
28728128728
287305143650
28731386193
28732257464
28733257466
28734128734
28735128735
28737386211
28738257476
28739128739
28741257482
28742257484
28744257488
28745257490
28750128750
28753257506
28754386262
28756386268
28757257514
28758386274
28759128759
28761257522
28762128762
28763128763
28764128764
28765128765
28766128766
28767257534
28768128768
28769128769
28770257540
28771257542
28772128772
28773257546
28776128776
28779128779
28782128782
28784128784
28786128786
28788128788
28789257578
28790257580
28795386385
28796128796
28797128797
28798128798
28800128800
28801386403
28802257604
28806386418
28808257616
28809257618
28810257620
28811257622
28813128813
28814257628
28815128815
28817128817
28819257638
28821128821
28822128822
28823128823
28824128824
28826128826
28828257656
28829257658
28830257660
28832128832
28833257666
28834128834
28835257670
28836128836
28838257676
28841128841
28843257686
28844128844
28845128845
28847128847
28848386544
28851128851
28853128853
28854128854
28855257710
288575144285
28858257716
28859257718
28860257720
28861128861
28862128862
28863128863
28865128865
28866386598
28867128867
28868128868
28870386610
28871128871
28872257744
288734115492
28874386622
28876128876
288774115508
28878257756
288794115516
288807202160
28881257762
28882128882
28883128883
28884128884
28885386655
28886257772
28887386661
28888386664
28889257778
28891128891
28892128892
28894128894
28895386685
28896257792
28897128897
289006173400
28901128901
28902128902
28906128906
28907128907
28908386724
28915128915
28917257834
28919128919
Total100227878381
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
22869122869
22872122872
22881122881
22971122971
23042123042
23083123083
23098123098
23118123118
23158123158
23232123232
23234123234
23242123242
23255123255
23264123264
23271123271
23279123279
23287123287
23307123307
23350123350
23353123353
23371123371
23378123378
23399123399
23411123411
23450123450
23491123491
23533123533
23551123551
23568123568
23577123577
23610123610
23637123637
23657123657
23692123692
23736123736
23746123746
23774123774
23790123790
23842123842
23891123891
23921123921
23929123929
23951123951
23994123994
24070124070
24076124076
24095124095
24111124111
24164124164
24227124227
24257124257
24267124267
24288124288
24322124322
24384124384
24389124389
24434124434
24452124452
24472124472
24538124538
24561124561
24610124610
24620124620
24634124634
24693124693
24713124713
24754124754
24787124787
24805124805
24843124843
24879124879
24905124905
24908124908
24929124929
24948124948
24980124980
24989124989
25005125005
25023125023
25026125026
25042125042
25054125054
25081125081
25095125095
25128125128
25144125144
25181125181
25184125184
25202125202
25204125204
25240125240
25248125248
25295125295
25303125303
25328125328
25337125337
25345125345
25365125365
25377125377
25414125414
25444125444
25466250932
25495125495
25509125509
25521125521
25535125535
25560125560
25601125601
25612125612
25628125628
25642125642
25668125668
25669125669
25695125695
25703125703
25752125752
25762125762
25780125780
25789125789
25814125814
25830125830
25841125841
25846125846
25902125902
25921125921
25929125929
25952125952
25973125973
25976125976
25988125988
25996125996
26051126051
26064126064
26079126079
26104126104
26115126115
26126126126
26147126147
26152126152
26189126189
26199126199
26225126225
26239126239
26265126265
26267126267
26277126277
26294126294
26324126324
26342126342
26344126344
26357126357
26384252768
26404126404
26427126427
26455126455
26456126456
26472126472
26500126500
26518126518
26531126531
26546126546
26560126560
26561126561
26567126567
26604126604
26615126615
26616126616
26624126624
26650126650
26675126675
26695126695
26731126731
26744126744
26757126757
26827126827
26853126853
26895126895
26922126922
26940126940
26989126989
27012127012
27053127053
27070127070
27108127108
27128127128
27149127149
27198127198
27201127201
27261127261
27296127296
27310127310
27319127319
27330127330
27383127383
27425127425
27440127440
27462127462
27499127499
27504127504
27556127556
27560127560
27602127602
27620127620
27677127677
27680127680
27683127683
27736127736
27765127765
27790127790
27804127804
27841127841
27866127866
27876127876
27894127894
27907127907
27932127932
27964127964
27966127966
27998127998
28020128020
28027256054
28028128028
28032128032
28035256070
28036384108
28039256078
28040128040
28044384132
28046128046
28052128052
28053256106
28055384165
28056128056
28058128058
28059256118
28062128062
28066256132
28073256146
28076128076
28084128084
28085128085
28087384261
28088128088
28095256190
28100128100
28105128105
28108128108
28113256226
28115128115
28118128118
28121128121
28124256248
28125128125
28128128128
28130128130
28134128134
28135128135
28138128138
28144256288
28147128147
28149256298
28150128150
28154384462
28156256312
28157128157
28159256318
28160128160
28164256328
28165256330
28168128168
28170128170
28174128174
28176256352
28180256360
28181128181
28185128185
28186128186
28187128187
28188128188
28189128189
28190128190
28191128191
28192256384
28195128195
28196128196
28197256394
28198128198
28200128200
28202128202
28203128203
28205256410
28206384618
28207256414
28208128208
28209128209
28211256422
28212384636
28213128213
28214128214
28215128215
28217128217
28219128219
28220128220
28221256442
28223256446
28225128225
28227128227
28229128229
28230128230
28234128234
28237128237
28240128240
28241128241
28243128243
28244128244
28245256490
28246256492
28248128248
28251128251
28252128252
28253128253
28254256508
28255128255
28256256512
28257128257
28260128260
28261128261
28262128262
28263128263
28268384804
28269128269
28271256542
28272256544
28274128274
28275128275
28276128276
28278128278
28282256564
28285256570
282874113148
28291128291
28293256586
28297128297
28302128302
28303128303
28304128304
28306128306
28310128310
28311128311
28312256624
28313128313
28314256628
28315128315
28319128319
28322128322
28326128326
28328128328
28332128332
28333128333
28335128335
28336256672
28338128338
28342128342
28343128343
28344128344
28350256700
28358128358
28362256724
28365128365
28369128369
28372128372
28373385119
28374128374
28376385128
28378128378
28381128381
28383128383
28385128385
28386128386
28388256776
28391128391
28392128392
28393256786
28396128396
28399128399
28401128401
28404128404
28408128408
28412128412
28414256828
28417128417
28421128421
28422128422
28424128424
28425128425
28426128426
28432128432
28434128434
28435128435
28437128437
28438128438
28439128439
28442256884
28444256888
28450128450
28451256902
284544113816
28455128455
28461128461
28463256926
28465128465
28471128471
28472256944
28473128473
28474128474
28477256954
28480256960
28481256962
28482256964
284834113932
28484128484
28486128486
28489128489
28494128494
28496128496
28500128500
28501128501
28502128502
28503257006
28504128504
28506128506
28507128507
28508128508
28512128512
28513257026
28515128515
28517257034
28520257040
28521128521
28522385566
28523128523
28525128525
285264114104
28527257054
28528257056
28529385587
28530385590
28531257062
28532385596
28533128533
28534257068
28535257070
28536128536
28538257076
28539128539
28540128540
28541257082
28543257086
28545128545
28548128548
28549128549
28551128551
28552257104
28553385659
28554257108
28555128555
28556128556
28557128557
28558128558
28559128559
28560257120
28562128562
28564128564
28566257132
28567128567
285684114272
28569128569
285704114280
28571257142
28572128572
28573128573
28574385722
285755142875
28577385731
28578128578
28579257158
28580128580
28581128581
28582257164
28584385752
28585128585
28588257176
28590257180
285915142955
28594128594
28595257190
28596257192
28597257194
28598257196
286004114400
28601128601
28602257204
286034114412
28604385812
28605128605
28606128606
28607128607
28610257220
28611128611
28613257226
28614257228
28615128615
28616257232
28617385851
28619385857
28620128620
286215143105
28622128622
286234114492
286244114496
28625385875
28626128626
28627385881
28629128629
28631385893
28632385896
28633128633
28634257268
28635128635
28636385908
28637128637
28638385914
28639385917
28640128640
28641128641
28642257284
28643257286
286444114576
28645128645
28646128646
28649128649
28650257300
28652128652
28653257306
28656128656
28658128658
28660128660
28662128662
28663128663
28670128670
28671257342
28674128674
28677386031
28678128678
28681128681
28683257366
28687128687
28690257380
28693128693
28698128698
28699128699
28702128702
28705128705
28706128706
28707128707
28708128708
28712128712
28715128715
28718257436
28719128719
28720257440
28723257446
28724128724
287265143630
28727386181
28728257456
28729257458
28730128730
28731128731
28733386199
28734257468
28735128735
28737257474
28738257476
28740257480
28741257482
28746128746
28749257498
28750386250
28752386256
28753257506
28754386262
28755128755
28757257514
28758128758
28759128759
28760128760
28761128761
28762128762
28763257526
28764128764
28765128765
28766257532
28767257534
28768128768
28769257538
28772128772
28775128775
28778128778
28780128780
28782128782
28784128784
28785257570
28786257572
28791386373
28792128792
28793128793
28794128794
28796128796
28797386391
28798257596
28802386406
28804257608
28805257610
28806257612
28807257614
28809128809
28810257620
28811128811
28813128813
28815257630
28817128817
28818128818
28819128819
28820128820
28822128822
28824257648
28825257650
28826257652
28828128828
28829257658
28830128830
28831257662
28832128832
28834257668
28837128837
28839257678
28840128840
28841128841
28843128843
28844386532
28847128847
28849128849
28850128850
28851257702
288535144265
28854257708
28855257710
28856257712
28857128857
28858128858
28859128859
28861128861
28862386586
28863128863
28864128864
28866386598
28867128867
28868257736
288694115476
28870386610
28872128872
288734115492
28874257748
288754115500
288767202132
28877257754
28878128878
28879128879
28880128880
28881386643
28882257764
28883386649
28884386652
28885257770
28887128887
28888128888
28890128890
28891386673
28892257784
28893128893
288966173376
28897128897
28898128898
28902128902
28903128903
28904386712
28911128911
28913257826
28915128915
Total100227874372
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333237266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882a89762e6ab7f
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6138393736326536
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_2_8.json b/autobahn/client/tungstenite_case_12_2_8.json new file mode 100644 index 0000000..4af8201 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_8.json @@ -0,0 +1,1545 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 327, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 3248, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=327&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: o1ZF3GAmH94FUwQZSVSbhw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: auQLlBVoPV+DAz0bBaEkySOIlJ4=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.2.8", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "22873": 1, + "22876": 1, + "22885": 1, + "22975": 1, + "23046": 1, + "23087": 1, + "23102": 1, + "23122": 1, + "23162": 1, + "23236": 1, + "23238": 1, + "23246": 1, + "23259": 1, + "23268": 1, + "23275": 1, + "23283": 1, + "23291": 1, + "23311": 1, + "23354": 1, + "23357": 1, + "23375": 1, + "23382": 1, + "23403": 1, + "23415": 1, + "23454": 1, + "23495": 1, + "23537": 1, + "23555": 1, + "23572": 1, + "23581": 1, + "23614": 1, + "23641": 1, + "23661": 1, + "23696": 1, + "23740": 1, + "23750": 1, + "23778": 1, + "23794": 1, + "23846": 1, + "23895": 1, + "23925": 1, + "23933": 1, + "23955": 1, + "23998": 1, + "24074": 1, + "24080": 1, + "24099": 1, + "24115": 1, + "24168": 1, + "24231": 1, + "24261": 1, + "24271": 1, + "24292": 1, + "24326": 1, + "24388": 1, + "24393": 1, + "24438": 1, + "24456": 1, + "24476": 1, + "24542": 1, + "24565": 1, + "24614": 1, + "24624": 1, + "24638": 1, + "24697": 1, + "24717": 1, + "24758": 1, + "24791": 1, + "24809": 1, + "24847": 1, + "24883": 1, + "24909": 1, + "24912": 1, + "24933": 1, + "24952": 1, + "24984": 1, + "24993": 1, + "25009": 1, + "25027": 1, + "25030": 1, + "25046": 1, + "25058": 1, + "25085": 1, + "25099": 1, + "25132": 1, + "25148": 1, + "25185": 1, + "25188": 1, + "25206": 1, + "25208": 1, + "25244": 1, + "25252": 1, + "25299": 1, + "25307": 1, + "25332": 1, + "25341": 1, + "25349": 1, + "25369": 1, + "25381": 1, + "25418": 1, + "25448": 1, + "25470": 2, + "25499": 1, + "25513": 1, + "25525": 1, + "25539": 1, + "25564": 1, + "25605": 1, + "25616": 1, + "25632": 1, + "25646": 1, + "25672": 1, + "25673": 1, + "25699": 1, + "25707": 1, + "25756": 1, + "25766": 1, + "25784": 1, + "25793": 1, + "25818": 1, + "25834": 1, + "25845": 1, + "25850": 1, + "25906": 1, + "25925": 1, + "25933": 1, + "25956": 1, + "25977": 1, + "25980": 1, + "25992": 1, + "26000": 1, + "26055": 1, + "26068": 1, + "26083": 1, + "26108": 1, + "26119": 1, + "26130": 1, + "26151": 1, + "26156": 1, + "26193": 1, + "26203": 1, + "26229": 1, + "26243": 1, + "26269": 1, + "26271": 1, + "26281": 1, + "26298": 1, + "26328": 1, + "26346": 1, + "26348": 1, + "26361": 1, + "26388": 2, + "26408": 1, + "26431": 1, + "26459": 1, + "26460": 1, + "26476": 1, + "26504": 1, + "26522": 1, + "26535": 1, + "26550": 1, + "26564": 1, + "26565": 1, + "26571": 1, + "26608": 1, + "26619": 1, + "26620": 1, + "26628": 1, + "26654": 1, + "26679": 1, + "26699": 1, + "26735": 1, + "26748": 1, + "26761": 1, + "26831": 1, + "26857": 1, + "26899": 1, + "26926": 1, + "26944": 1, + "26993": 1, + "27016": 1, + "27057": 1, + "27074": 1, + "27112": 1, + "27132": 1, + "27153": 1, + "27202": 1, + "27205": 1, + "27265": 1, + "27300": 1, + "27314": 1, + "27323": 1, + "27334": 1, + "27387": 1, + "27429": 1, + "27444": 1, + "27466": 1, + "27503": 1, + "27508": 1, + "27560": 1, + "27564": 1, + "27606": 1, + "27624": 1, + "27681": 1, + "27684": 1, + "27687": 1, + "27740": 1, + "27769": 1, + "27794": 1, + "27808": 1, + "27845": 1, + "27870": 1, + "27880": 1, + "27898": 1, + "27911": 1, + "27936": 1, + "27968": 1, + "27970": 1, + "28002": 1, + "28024": 1, + "28031": 2, + "28032": 1, + "28036": 1, + "28039": 2, + "28040": 3, + "28043": 2, + "28044": 1, + "28048": 3, + "28050": 1, + "28056": 1, + "28057": 2, + "28059": 3, + "28060": 1, + "28062": 1, + "28063": 2, + "28066": 1, + "28070": 2, + "28077": 2, + "28080": 1, + "28088": 1, + "28089": 1, + "28091": 3, + "28092": 1, + "28099": 2, + "28104": 1, + "28109": 1, + "28112": 1, + "28117": 2, + "28119": 1, + "28122": 1, + "28125": 1, + "28128": 2, + "28129": 1, + "28132": 1, + "28134": 1, + "28138": 1, + "28139": 1, + "28142": 1, + "28148": 2, + "28151": 1, + "28153": 2, + "28154": 1, + "28158": 3, + "28160": 2, + "28161": 1, + "28163": 2, + "28164": 1, + "28168": 2, + "28169": 2, + "28172": 1, + "28174": 1, + "28178": 1, + "28180": 2, + "28184": 2, + "28185": 1, + "28189": 1, + "28190": 1, + "28191": 1, + "28192": 1, + "28193": 1, + "28194": 1, + "28195": 1, + "28196": 2, + "28199": 1, + "28200": 1, + "28201": 2, + "28202": 1, + "28204": 1, + "28206": 1, + "28207": 1, + "28209": 2, + "28210": 3, + "28211": 2, + "28212": 1, + "28213": 1, + "28215": 2, + "28216": 3, + "28217": 1, + "28218": 1, + "28219": 1, + "28221": 1, + "28223": 1, + "28224": 1, + "28225": 2, + "28227": 2, + "28229": 1, + "28231": 1, + "28233": 1, + "28234": 1, + "28238": 1, + "28241": 1, + "28244": 1, + "28245": 1, + "28247": 1, + "28248": 1, + "28249": 2, + "28250": 2, + "28252": 1, + "28255": 1, + "28256": 1, + "28257": 1, + "28258": 2, + "28259": 1, + "28260": 2, + "28261": 1, + "28264": 1, + "28265": 1, + "28266": 1, + "28267": 1, + "28272": 3, + "28273": 1, + "28275": 2, + "28276": 2, + "28278": 1, + "28279": 1, + "28280": 1, + "28282": 1, + "28286": 2, + "28289": 2, + "28291": 4, + "28295": 1, + "28297": 2, + "28301": 1, + "28306": 1, + "28307": 1, + "28308": 1, + "28310": 1, + "28314": 1, + "28315": 1, + "28316": 2, + "28317": 1, + "28318": 2, + "28319": 1, + "28323": 1, + "28326": 1, + "28330": 1, + "28332": 1, + "28336": 1, + "28337": 1, + "28339": 1, + "28340": 2, + "28342": 1, + "28346": 1, + "28347": 1, + "28348": 1, + "28354": 2, + "28362": 1, + "28366": 2, + "28369": 1, + "28373": 1, + "28376": 1, + "28377": 3, + "28378": 1, + "28380": 3, + "28382": 1, + "28385": 1, + "28387": 1, + "28389": 1, + "28390": 1, + "28392": 2, + "28395": 1, + "28396": 1, + "28397": 2, + "28400": 1, + "28403": 1, + "28405": 1, + "28408": 1, + "28412": 1, + "28416": 1, + "28418": 2, + "28421": 1, + "28425": 1, + "28426": 1, + "28428": 1, + "28429": 1, + "28430": 1, + "28436": 1, + "28438": 1, + "28439": 1, + "28441": 1, + "28442": 1, + "28443": 1, + "28446": 2, + "28448": 2, + "28454": 1, + "28455": 2, + "28458": 4, + "28459": 1, + "28465": 1, + "28467": 2, + "28469": 1, + "28475": 1, + "28476": 2, + "28477": 1, + "28478": 1, + "28481": 2, + "28484": 2, + "28485": 2, + "28486": 2, + "28487": 4, + "28488": 1, + "28490": 1, + "28493": 1, + "28498": 1, + "28500": 1, + "28504": 1, + "28505": 1, + "28506": 1, + "28507": 2, + "28508": 1, + "28510": 1, + "28511": 1, + "28512": 1, + "28516": 1, + "28517": 2, + "28519": 1, + "28521": 2, + "28524": 2, + "28525": 1, + "28526": 3, + "28527": 1, + "28529": 1, + "28530": 4, + "28531": 2, + "28532": 2, + "28533": 3, + "28534": 3, + "28535": 2, + "28536": 3, + "28537": 1, + "28538": 2, + "28539": 2, + "28540": 1, + "28542": 2, + "28543": 1, + "28544": 1, + "28545": 2, + "28547": 2, + "28549": 1, + "28552": 1, + "28553": 1, + "28555": 1, + "28556": 2, + "28557": 3, + "28558": 2, + "28559": 1, + "28560": 1, + "28561": 1, + "28562": 1, + "28563": 1, + "28564": 2, + "28566": 1, + "28568": 1, + "28570": 2, + "28571": 1, + "28572": 4, + "28573": 1, + "28574": 4, + "28575": 2, + "28576": 1, + "28577": 1, + "28578": 3, + "28579": 5, + "28581": 3, + "28582": 1, + "28583": 2, + "28584": 1, + "28585": 1, + "28586": 2, + "28588": 3, + "28589": 1, + "28592": 2, + "28594": 2, + "28595": 5, + "28598": 1, + "28599": 2, + "28600": 2, + "28601": 2, + "28602": 2, + "28604": 4, + "28605": 1, + "28606": 2, + "28607": 4, + "28608": 3, + "28609": 1, + "28610": 1, + "28611": 1, + "28614": 2, + "28615": 1, + "28617": 2, + "28618": 2, + "28619": 1, + "28620": 2, + "28621": 3, + "28623": 3, + "28624": 1, + "28625": 5, + "28626": 1, + "28627": 4, + "28628": 4, + "28629": 3, + "28630": 1, + "28631": 3, + "28633": 1, + "28635": 3, + "28636": 3, + "28637": 1, + "28638": 2, + "28639": 1, + "28640": 3, + "28641": 1, + "28642": 3, + "28643": 3, + "28644": 1, + "28645": 1, + "28646": 2, + "28647": 2, + "28648": 4, + "28649": 1, + "28650": 1, + "28653": 1, + "28654": 2, + "28656": 1, + "28657": 2, + "28660": 1, + "28662": 1, + "28664": 1, + "28666": 1, + "28667": 1, + "28674": 1, + "28675": 2, + "28678": 1, + "28681": 3, + "28682": 1, + "28685": 1, + "28687": 2, + "28691": 1, + "28694": 2, + "28697": 1, + "28702": 1, + "28703": 1, + "28706": 1, + "28709": 1, + "28710": 1, + "28711": 1, + "28712": 1, + "28716": 1, + "28719": 1, + "28722": 2, + "28723": 1, + "28724": 2, + "28727": 2, + "28728": 1, + "28730": 5, + "28731": 3, + "28732": 2, + "28733": 2, + "28734": 1, + "28735": 1, + "28737": 3, + "28738": 2, + "28739": 1, + "28741": 2, + "28742": 2, + "28744": 2, + "28745": 2, + "28750": 1, + "28753": 2, + "28754": 3, + "28756": 3, + "28757": 2, + "28758": 3, + "28759": 1, + "28761": 2, + "28762": 1, + "28763": 1, + "28764": 1, + "28765": 1, + "28766": 1, + "28767": 2, + "28768": 1, + "28769": 1, + "28770": 2, + "28771": 2, + "28772": 1, + "28773": 2, + "28776": 1, + "28779": 1, + "28782": 1, + "28784": 1, + "28786": 1, + "28788": 1, + "28789": 2, + "28790": 2, + "28795": 3, + "28796": 1, + "28797": 1, + "28798": 1, + "28800": 1, + "28801": 3, + "28802": 2, + "28806": 3, + "28808": 2, + "28809": 2, + "28810": 2, + "28811": 2, + "28813": 1, + "28814": 2, + "28815": 1, + "28817": 1, + "28819": 2, + "28821": 1, + "28822": 1, + "28823": 1, + "28824": 1, + "28826": 1, + "28828": 2, + "28829": 2, + "28830": 2, + "28832": 1, + "28833": 2, + "28834": 1, + "28835": 2, + "28836": 1, + "28838": 2, + "28841": 1, + "28843": 2, + "28844": 1, + "28845": 1, + "28847": 1, + "28848": 3, + "28851": 1, + "28853": 1, + "28854": 1, + "28855": 2, + "28857": 5, + "28858": 2, + "28859": 2, + "28860": 2, + "28861": 1, + "28862": 1, + "28863": 1, + "28865": 1, + "28866": 3, + "28867": 1, + "28868": 1, + "28870": 3, + "28871": 1, + "28872": 2, + "28873": 4, + "28874": 3, + "28876": 1, + "28877": 4, + "28878": 2, + "28879": 4, + "28880": 7, + "28881": 2, + "28882": 1, + "28883": 1, + "28884": 1, + "28885": 3, + "28886": 2, + "28887": 3, + "28888": 3, + "28889": 2, + "28891": 1, + "28892": 1, + "28894": 1, + "28895": 3, + "28896": 2, + "28897": 1, + "28900": 6, + "28901": 1, + "28902": 1, + "28906": 1, + "28907": 1, + "28908": 3, + "28915": 1, + "28917": 2, + "28919": 1 + }, + "started": "2020-09-07T18:45:10.326Z", + "trafficStats": { + "incomingCompressionRatio": 0.8505284423828126, + "incomingOctetsAppLevel": 32768000, + "incomingOctetsWebSocketLevel": 27870116, + "incomingOctetsWireLevel": 27878116, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0002870458092101231, + "outgoingCompressionRatio": 0.8505284423828126, + "outgoingOctetsAppLevel": 32768000, + "outgoingOctetsWebSocketLevel": 27870116, + "outgoingOctetsWireLevel": 27874116, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.00014352290460506155, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "22869": 1, + "22872": 1, + "22881": 1, + "22971": 1, + "23042": 1, + "23083": 1, + "23098": 1, + "23118": 1, + "23158": 1, + "23232": 1, + "23234": 1, + "23242": 1, + "23255": 1, + "23264": 1, + "23271": 1, + "23279": 1, + "23287": 1, + "23307": 1, + "23350": 1, + "23353": 1, + "23371": 1, + "23378": 1, + "23399": 1, + "23411": 1, + "23450": 1, + "23491": 1, + "23533": 1, + "23551": 1, + "23568": 1, + "23577": 1, + "23610": 1, + "23637": 1, + "23657": 1, + "23692": 1, + "23736": 1, + "23746": 1, + "23774": 1, + "23790": 1, + "23842": 1, + "23891": 1, + "23921": 1, + "23929": 1, + "23951": 1, + "23994": 1, + "24070": 1, + "24076": 1, + "24095": 1, + "24111": 1, + "24164": 1, + "24227": 1, + "24257": 1, + "24267": 1, + "24288": 1, + "24322": 1, + "24384": 1, + "24389": 1, + "24434": 1, + "24452": 1, + "24472": 1, + "24538": 1, + "24561": 1, + "24610": 1, + "24620": 1, + "24634": 1, + "24693": 1, + "24713": 1, + "24754": 1, + "24787": 1, + "24805": 1, + "24843": 1, + "24879": 1, + "24905": 1, + "24908": 1, + "24929": 1, + "24948": 1, + "24980": 1, + "24989": 1, + "25005": 1, + "25023": 1, + "25026": 1, + "25042": 1, + "25054": 1, + "25081": 1, + "25095": 1, + "25128": 1, + "25144": 1, + "25181": 1, + "25184": 1, + "25202": 1, + "25204": 1, + "25240": 1, + "25248": 1, + "25295": 1, + "25303": 1, + "25328": 1, + "25337": 1, + "25345": 1, + "25365": 1, + "25377": 1, + "25414": 1, + "25444": 1, + "25466": 2, + "25495": 1, + "25509": 1, + "25521": 1, + "25535": 1, + "25560": 1, + "25601": 1, + "25612": 1, + "25628": 1, + "25642": 1, + "25668": 1, + "25669": 1, + "25695": 1, + "25703": 1, + "25752": 1, + "25762": 1, + "25780": 1, + "25789": 1, + "25814": 1, + "25830": 1, + "25841": 1, + "25846": 1, + "25902": 1, + "25921": 1, + "25929": 1, + "25952": 1, + "25973": 1, + "25976": 1, + "25988": 1, + "25996": 1, + "26051": 1, + "26064": 1, + "26079": 1, + "26104": 1, + "26115": 1, + "26126": 1, + "26147": 1, + "26152": 1, + "26189": 1, + "26199": 1, + "26225": 1, + "26239": 1, + "26265": 1, + "26267": 1, + "26277": 1, + "26294": 1, + "26324": 1, + "26342": 1, + "26344": 1, + "26357": 1, + "26384": 2, + "26404": 1, + "26427": 1, + "26455": 1, + "26456": 1, + "26472": 1, + "26500": 1, + "26518": 1, + "26531": 1, + "26546": 1, + "26560": 1, + "26561": 1, + "26567": 1, + "26604": 1, + "26615": 1, + "26616": 1, + "26624": 1, + "26650": 1, + "26675": 1, + "26695": 1, + "26731": 1, + "26744": 1, + "26757": 1, + "26827": 1, + "26853": 1, + "26895": 1, + "26922": 1, + "26940": 1, + "26989": 1, + "27012": 1, + "27053": 1, + "27070": 1, + "27108": 1, + "27128": 1, + "27149": 1, + "27198": 1, + "27201": 1, + "27261": 1, + "27296": 1, + "27310": 1, + "27319": 1, + "27330": 1, + "27383": 1, + "27425": 1, + "27440": 1, + "27462": 1, + "27499": 1, + "27504": 1, + "27556": 1, + "27560": 1, + "27602": 1, + "27620": 1, + "27677": 1, + "27680": 1, + "27683": 1, + "27736": 1, + "27765": 1, + "27790": 1, + "27804": 1, + "27841": 1, + "27866": 1, + "27876": 1, + "27894": 1, + "27907": 1, + "27932": 1, + "27964": 1, + "27966": 1, + "27998": 1, + "28020": 1, + "28027": 2, + "28028": 1, + "28032": 1, + "28035": 2, + "28036": 3, + "28039": 2, + "28040": 1, + "28044": 3, + "28046": 1, + "28052": 1, + "28053": 2, + "28055": 3, + "28056": 1, + "28058": 1, + "28059": 2, + "28062": 1, + "28066": 2, + "28073": 2, + "28076": 1, + "28084": 1, + "28085": 1, + "28087": 3, + "28088": 1, + "28095": 2, + "28100": 1, + "28105": 1, + "28108": 1, + "28113": 2, + "28115": 1, + "28118": 1, + "28121": 1, + "28124": 2, + "28125": 1, + "28128": 1, + "28130": 1, + "28134": 1, + "28135": 1, + "28138": 1, + "28144": 2, + "28147": 1, + "28149": 2, + "28150": 1, + "28154": 3, + "28156": 2, + "28157": 1, + "28159": 2, + "28160": 1, + "28164": 2, + "28165": 2, + "28168": 1, + "28170": 1, + "28174": 1, + "28176": 2, + "28180": 2, + "28181": 1, + "28185": 1, + "28186": 1, + "28187": 1, + "28188": 1, + "28189": 1, + "28190": 1, + "28191": 1, + "28192": 2, + "28195": 1, + "28196": 1, + "28197": 2, + "28198": 1, + "28200": 1, + "28202": 1, + "28203": 1, + "28205": 2, + "28206": 3, + "28207": 2, + "28208": 1, + "28209": 1, + "28211": 2, + "28212": 3, + "28213": 1, + "28214": 1, + "28215": 1, + "28217": 1, + "28219": 1, + "28220": 1, + "28221": 2, + "28223": 2, + "28225": 1, + "28227": 1, + "28229": 1, + "28230": 1, + "28234": 1, + "28237": 1, + "28240": 1, + "28241": 1, + "28243": 1, + "28244": 1, + "28245": 2, + "28246": 2, + "28248": 1, + "28251": 1, + "28252": 1, + "28253": 1, + "28254": 2, + "28255": 1, + "28256": 2, + "28257": 1, + "28260": 1, + "28261": 1, + "28262": 1, + "28263": 1, + "28268": 3, + "28269": 1, + "28271": 2, + "28272": 2, + "28274": 1, + "28275": 1, + "28276": 1, + "28278": 1, + "28282": 2, + "28285": 2, + "28287": 4, + "28291": 1, + "28293": 2, + "28297": 1, + "28302": 1, + "28303": 1, + "28304": 1, + "28306": 1, + "28310": 1, + "28311": 1, + "28312": 2, + "28313": 1, + "28314": 2, + "28315": 1, + "28319": 1, + "28322": 1, + "28326": 1, + "28328": 1, + "28332": 1, + "28333": 1, + "28335": 1, + "28336": 2, + "28338": 1, + "28342": 1, + "28343": 1, + "28344": 1, + "28350": 2, + "28358": 1, + "28362": 2, + "28365": 1, + "28369": 1, + "28372": 1, + "28373": 3, + "28374": 1, + "28376": 3, + "28378": 1, + "28381": 1, + "28383": 1, + "28385": 1, + "28386": 1, + "28388": 2, + "28391": 1, + "28392": 1, + "28393": 2, + "28396": 1, + "28399": 1, + "28401": 1, + "28404": 1, + "28408": 1, + "28412": 1, + "28414": 2, + "28417": 1, + "28421": 1, + "28422": 1, + "28424": 1, + "28425": 1, + "28426": 1, + "28432": 1, + "28434": 1, + "28435": 1, + "28437": 1, + "28438": 1, + "28439": 1, + "28442": 2, + "28444": 2, + "28450": 1, + "28451": 2, + "28454": 4, + "28455": 1, + "28461": 1, + "28463": 2, + "28465": 1, + "28471": 1, + "28472": 2, + "28473": 1, + "28474": 1, + "28477": 2, + "28480": 2, + "28481": 2, + "28482": 2, + "28483": 4, + "28484": 1, + "28486": 1, + "28489": 1, + "28494": 1, + "28496": 1, + "28500": 1, + "28501": 1, + "28502": 1, + "28503": 2, + "28504": 1, + "28506": 1, + "28507": 1, + "28508": 1, + "28512": 1, + "28513": 2, + "28515": 1, + "28517": 2, + "28520": 2, + "28521": 1, + "28522": 3, + "28523": 1, + "28525": 1, + "28526": 4, + "28527": 2, + "28528": 2, + "28529": 3, + "28530": 3, + "28531": 2, + "28532": 3, + "28533": 1, + "28534": 2, + "28535": 2, + "28536": 1, + "28538": 2, + "28539": 1, + "28540": 1, + "28541": 2, + "28543": 2, + "28545": 1, + "28548": 1, + "28549": 1, + "28551": 1, + "28552": 2, + "28553": 3, + "28554": 2, + "28555": 1, + "28556": 1, + "28557": 1, + "28558": 1, + "28559": 1, + "28560": 2, + "28562": 1, + "28564": 1, + "28566": 2, + "28567": 1, + "28568": 4, + "28569": 1, + "28570": 4, + "28571": 2, + "28572": 1, + "28573": 1, + "28574": 3, + "28575": 5, + "28577": 3, + "28578": 1, + "28579": 2, + "28580": 1, + "28581": 1, + "28582": 2, + "28584": 3, + "28585": 1, + "28588": 2, + "28590": 2, + "28591": 5, + "28594": 1, + "28595": 2, + "28596": 2, + "28597": 2, + "28598": 2, + "28600": 4, + "28601": 1, + "28602": 2, + "28603": 4, + "28604": 3, + "28605": 1, + "28606": 1, + "28607": 1, + "28610": 2, + "28611": 1, + "28613": 2, + "28614": 2, + "28615": 1, + "28616": 2, + "28617": 3, + "28619": 3, + "28620": 1, + "28621": 5, + "28622": 1, + "28623": 4, + "28624": 4, + "28625": 3, + "28626": 1, + "28627": 3, + "28629": 1, + "28631": 3, + "28632": 3, + "28633": 1, + "28634": 2, + "28635": 1, + "28636": 3, + "28637": 1, + "28638": 3, + "28639": 3, + "28640": 1, + "28641": 1, + "28642": 2, + "28643": 2, + "28644": 4, + "28645": 1, + "28646": 1, + "28649": 1, + "28650": 2, + "28652": 1, + "28653": 2, + "28656": 1, + "28658": 1, + "28660": 1, + "28662": 1, + "28663": 1, + "28670": 1, + "28671": 2, + "28674": 1, + "28677": 3, + "28678": 1, + "28681": 1, + "28683": 2, + "28687": 1, + "28690": 2, + "28693": 1, + "28698": 1, + "28699": 1, + "28702": 1, + "28705": 1, + "28706": 1, + "28707": 1, + "28708": 1, + "28712": 1, + "28715": 1, + "28718": 2, + "28719": 1, + "28720": 2, + "28723": 2, + "28724": 1, + "28726": 5, + "28727": 3, + "28728": 2, + "28729": 2, + "28730": 1, + "28731": 1, + "28733": 3, + "28734": 2, + "28735": 1, + "28737": 2, + "28738": 2, + "28740": 2, + "28741": 2, + "28746": 1, + "28749": 2, + "28750": 3, + "28752": 3, + "28753": 2, + "28754": 3, + "28755": 1, + "28757": 2, + "28758": 1, + "28759": 1, + "28760": 1, + "28761": 1, + "28762": 1, + "28763": 2, + "28764": 1, + "28765": 1, + "28766": 2, + "28767": 2, + "28768": 1, + "28769": 2, + "28772": 1, + "28775": 1, + "28778": 1, + "28780": 1, + "28782": 1, + "28784": 1, + "28785": 2, + "28786": 2, + "28791": 3, + "28792": 1, + "28793": 1, + "28794": 1, + "28796": 1, + "28797": 3, + "28798": 2, + "28802": 3, + "28804": 2, + "28805": 2, + "28806": 2, + "28807": 2, + "28809": 1, + "28810": 2, + "28811": 1, + "28813": 1, + "28815": 2, + "28817": 1, + "28818": 1, + "28819": 1, + "28820": 1, + "28822": 1, + "28824": 2, + "28825": 2, + "28826": 2, + "28828": 1, + "28829": 2, + "28830": 1, + "28831": 2, + "28832": 1, + "28834": 2, + "28837": 1, + "28839": 2, + "28840": 1, + "28841": 1, + "28843": 1, + "28844": 3, + "28847": 1, + "28849": 1, + "28850": 1, + "28851": 2, + "28853": 5, + "28854": 2, + "28855": 2, + "28856": 2, + "28857": 1, + "28858": 1, + "28859": 1, + "28861": 1, + "28862": 3, + "28863": 1, + "28864": 1, + "28866": 3, + "28867": 1, + "28868": 2, + "28869": 4, + "28870": 3, + "28872": 1, + "28873": 4, + "28874": 2, + "28875": 4, + "28876": 7, + "28877": 2, + "28878": 1, + "28879": 1, + "28880": 1, + "28881": 3, + "28882": 2, + "28883": 3, + "28884": 3, + "28885": 2, + "28887": 1, + "28888": 1, + "28890": 1, + "28891": 3, + "28892": 2, + "28893": 1, + "28896": 6, + "28897": 1, + "28898": 1, + "28902": 1, + "28903": 1, + "28904": 3, + "28911": 1, + "28913": 2, + "28915": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333237266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882a89762e6ab7f" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "a89762e6" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_2_9.html b/autobahn/client/tungstenite_case_12_2_9.html new file mode 100644 index 0000000..805def3 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_9.html @@ -0,0 +1,1770 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.2.9 : Pass - 6113 ms @ 2020-09-07T18:45:13.574Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=328&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 3XzGTA2kALL41HIiHuDLzQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: /d46yYveiK1pmfRRbp1XSmxBznM=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
51274151274
51298151298
51309151309
51342151342
51345151345
51357151357
51372151372
51379151379
51382151382
51385151385
51391151391
51398151398
51403151403
51421151421
51427151427
51445151445
51451151451
51465151465
51470151470
51474151474
51487151487
51494151494
51495151495
51497151497
51505151505
51507151507
51523151523
51528151528
51529151529
515352103070
51541151541
51548151548
51549151549
51551151551
51554151554
51555151555
51564151564
51571151571
515732103146
51574151574
51585151585
515902103180
51592151592
51598151598
51599151599
516002103200
516032103206
51605151605
516063154818
51607151607
51608151608
51614151614
51615151615
51616151616
51617151617
51618151618
516222103244
51630151630
516313154893
516422103284
51665151665
516662103332
51682151682
51686151686
51688151688
51690151690
51692151692
51701151701
51720151720
517222103444
51733151733
517352103470
51743151743
51744151744
51762151762
51766151766
51767151767
51770151770
51773151773
51776151776
51777151777
517792103558
51784151784
51789151789
51790151790
517932103586
51799151799
51802151802
51806151806
51811151811
51813151813
51819151819
51820151820
51822151822
51826151826
51827151827
518282103656
51829151829
51830151830
518312103662
51832151832
51833151833
51835151835
51838151838
51840151840
51843151843
518452103690
51846151846
51847151847
51852151852
518533155559
51854151854
51856151856
51857151857
51858151858
518593155577
51890151890
51896151896
51906151906
51909151909
51942151942
51967151967
51983151983
52019152019
52056152056
52070152070
52113152113
52145152145
52158152158
52176152176
52199152199
52235152235
52284152284
52307152307
52330152330
52344152344
52365152365
52419152419
52445152445
52476152476
52495152495
52524152524
52605152605
52627152627
52687152687
52704152704
52706152706
52789152789
52800152800
52857152857
52893152893
52907152907
52970152970
52995152995
53055153055
53057153057
53098153098
53130153130
53152153152
53205153205
53222153222
53273153273
53299153299
53331153331
53354153354
53368153368
53370153370
53420153420
53435153435
53438153438
53478153478
53487153487
53504153504
53516153516
53547153547
53556153556
53598153598
53608153608
53622153622
53640153640
53651153651
53671153671
53690153690
53693153693
53729153729
53753153753
53780153780
53795153795
53799153799
53809153809
53852153852
53868153868
53876153876
53907153907
53921153921
53951153951
53957153957
53966153966
53995153995
54028154028
54040154040
54047154047
54093154093
54109154109
54119154119
54134154134
54148154148
54181154181
54194154194
54220154220
54277154277
54283154283
54296154296
54315154315
54330154330
54349154349
54351154351
54380154380
54428154428
54435154435
54446154446
54475154475
54483154483
54507154507
54516154516
54541154541
54576154576
54589154589
54617154617
54623154623
54643154643
54657154657
54683154683
54709154709
54713154713
54732154732
54749154749
54760154760
54817154817
54822154822
54851154851
54857154857
54881154881
54893154893
54901154901
54919154919
54944154944
54984154984
54994154994
55002155002
550352110070
55052155052
55058155058
55080155080
55103155103
55104155104
55140155140
55142155142
55177155177
55180155180
55200155200
55212155212
55213155213
55226155226
55250155250
55262155262
55271155271
55296155296
55305155305
55324155324
55336155336
55350155350
55354155354
55372155372
55404155404
55426155426
55432155432
55441155441
554722110944
55484155484
55498155498
55500155500
55527155527
55538155538
55540155540
55555155555
55561155561
55565155565
55587155587
55595155595
55608155608
55664155664
55667155667
55670155670
55707155707
55720155720
55757155757
55784155784
55823155823
55831155831
55859155859
55870155870
55901155901
55922155922
55928155928
55971155971
56023156023
56034156034
56046156046
56075156075
56096156096
56131156131
56132156132
56154156154
56177156177
562152112430
56241156241
56242156242
56273156273
56299156299
56311156311
56354156354
56389156389
56390156390
56415156415
56418156418
56432156432
56442156442
56458156458
56472156472
56489156489
56519156519
56525156525
56529156529
56537156537
56555156555
56565156565
56572156572
56573156573
56578156578
56586156586
56587156587
565942113188
56600156600
56611156611
56613156613
56615156615
56616156616
566182113236
56624156624
56626156626
566273169881
56628156628
566302113260
56631156631
56633156633
56635156635
56636156636
566382113276
566392113278
56641156641
566423169926
56643156643
56644156644
56646156646
566474226588
566492113298
566502113300
56653156653
56654156654
56656156656
56661156661
566622113324
56663156663
56664156664
566702113340
56678156678
56679156679
56683156683
56684156684
566852113370
56687156687
566902113380
566962113392
56698156698
56699156699
56700156700
56701156701
567022113404
56704156704
567084226832
567114226844
56712156712
567162113432
567192113438
567202113440
567212113442
56722156722
567252113450
56726156726
56727156727
56729156729
567352113470
56736156736
567382113476
56744156744
56745156745
56748156748
56751156751
567522113504
56757156757
56758156758
567602113520
56763156763
56765156765
567673170301
567702113540
56772156772
56774156774
56776156776
56778156778
56779156779
56782156782
56791156791
567943170382
56795156795
567982113596
56803156803
56804156804
56805156805
56810156810
568113170433
56812156812
56821156821
568222113644
56823156823
56825156825
56827156827
56829156829
56832156832
56834156834
56837156837
568382113676
568392113678
56848156848
568502113700
568533170559
56854156854
56855156855
56857156857
56858156858
56859156859
56860156860
56865156865
56866156866
568672113734
56869156869
56871156871
56889156889
56894156894
56916156916
56918156918
56935156935
56941156941
56968156968
56974156974
569762113952
56978156978
56997156997
57004157004
57006157006
57008157008
57021157021
57026157026
57029157029
57036157036
57038157038
570532114106
57068157068
57081157081
57083157083
57085157085
57088157088
57089157089
57090157090
57092157092
57093157093
570952114190
57096157096
570972114194
570992114198
57100157100
57102157102
571044228416
571052114210
57106157106
571072114214
571082114216
571092114218
571113171333
57112157112
571132114226
571142114228
571164228464
571173171351
571185285590
571193171357
571202114240
571212114242
57122157122
571233171369
571242114248
57125157125
571263171378
571275285635
571286342768
571294228516
57130157130
571316342786
571324228528
571333171399
571342114268
571354228540
571363171408
571373171411
571383171414
57139157139
571403171420
571412114282
571425285710
571433171429
571443171432
571454228580
571463171438
571472114294
571483171444
571495285745
571504228600
571513171453
571522114304
57153157153
571543171462
57155157155
571562114312
57157157157
571582114316
571596342954
571612114322
571623171486
57163157163
571662114332
571672114334
571682114336
571694228676
57171157171
571722114344
571732114346
571743171522
57175157175
57177157177
571782114356
57185157185
57187157187
571902114380
57194157194
57196157196
57201157201
57205157205
57209157209
572142114428
57215157215
572192114438
572202114440
57223157223
57227157227
57229157229
57230157230
57231157231
57234157234
572362114472
57238157238
57239157239
57240157240
57242157242
57243157243
57246157246
57250157250
57254157254
57255157255
57257157257
572592114518
57264157264
572652114530
572663171798
57271157271
57272157272
57273157273
572802114560
57284157284
57285157285
57288157288
57289157289
57290157290
57291157291
57295157295
57298157298
57300157300
57301157301
57304157304
57306157306
573072114614
57308157308
573092114618
573122114624
57313157313
57318157318
573222114644
573232114646
57324157324
57325157325
57326157326
57327157327
573284229312
573292114658
57333157333
57335157335
57336157336
573372114674
573382114676
573402114680
573422114684
573452114690
57347157347
57348157348
573492114698
57350157350
57353157353
573544229416
573572114714
57360157360
57363157363
573662114732
57367157367
57368157368
57370157370
57372157372
57374157374
573753172125
573763172128
57378157378
573792114758
57380157380
57381157381
57383157383
573842114768
57388157388
57390157390
57391157391
57396157396
57397157397
573982114796
57400157400
574012114802
57402157402
57403157403
57405157405
57406157406
574072114814
57408157408
574102114820
57412157412
57415157415
57416157416
57418157418
57419157419
57421157421
57423157423
57424157424
57426157426
57427157427
574282114856
574293172287
57430157430
574313172293
574322114864
574332114866
574342114868
574362114872
574382114876
574403172320
574412114882
57442157442
57444157444
57446157446
574472114894
574492114898
57453157453
57455157455
57458157458
57461157461
574642114928
574673172401
57468157468
57471157471
574732114946
574762114952
57477157477
57482157482
57483157483
57488157488
574912114982
57492157492
57493157493
57495157495
574962114992
574973172491
574982114996
57499157499
57500157500
57503157503
575042115008
57505157505
575062115012
57507157507
57508157508
57509157509
575112115022
57513157513
57517157517
57518157518
575202115040
57522157522
57523157523
575272115054
57529157529
57691157691
Total100255760530
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
51270151270
51294151294
51305151305
51338151338
51341151341
51353151353
51368151368
51375151375
51378151378
51381151381
51387151387
51394151394
51399151399
51417151417
51423151423
51441151441
51447151447
51461151461
51466151466
51470151470
51483151483
51490151490
51491151491
51493151493
51501151501
51503151503
51519151519
51524151524
51525151525
515312103062
51537151537
51544151544
51545151545
51547151547
51550151550
51551151551
51560151560
51567151567
515692103138
51570151570
51581151581
515862103172
51588151588
51594151594
51595151595
515962103192
515992103198
51601151601
516023154806
51603151603
51604151604
51610151610
51611151611
51612151612
51613151613
51614151614
516182103236
51626151626
516273154881
516382103276
51661151661
516622103324
51678151678
51682151682
51684151684
51686151686
51688151688
51697151697
51716151716
517182103436
51729151729
517312103462
51739151739
51740151740
51758151758
51762151762
51763151763
51766151766
51769151769
51772151772
51773151773
517752103550
51780151780
51785151785
51786151786
517892103578
51795151795
51798151798
51802151802
51807151807
51809151809
51815151815
51816151816
51818151818
51822151822
51823151823
518242103648
51825151825
51826151826
518272103654
51828151828
51829151829
51831151831
51834151834
51836151836
51839151839
518412103682
51842151842
51843151843
51848151848
518493155547
51850151850
51852151852
51853151853
51854151854
518553155565
51886151886
51892151892
51902151902
51905151905
51938151938
51963151963
51979151979
52015152015
52052152052
52066152066
52109152109
52141152141
52154152154
52172152172
52195152195
52231152231
52280152280
52303152303
52326152326
52340152340
52361152361
52415152415
52441152441
52472152472
52491152491
52520152520
52601152601
52623152623
52683152683
52700152700
52702152702
52785152785
52796152796
52853152853
52889152889
52903152903
52966152966
52991152991
53051153051
53053153053
53094153094
53126153126
53148153148
53201153201
53218153218
53269153269
53295153295
53327153327
53350153350
53364153364
53366153366
53416153416
53431153431
53434153434
53474153474
53483153483
53500153500
53512153512
53543153543
53552153552
53594153594
53604153604
53618153618
53636153636
53647153647
53667153667
53686153686
53689153689
53725153725
53749153749
53776153776
53791153791
53795153795
53805153805
53848153848
53864153864
53872153872
53903153903
53917153917
53947153947
53953153953
53962153962
53991153991
54024154024
54036154036
54043154043
54089154089
54105154105
54115154115
54130154130
54144154144
54177154177
54190154190
54216154216
54273154273
54279154279
54292154292
54311154311
54326154326
54345154345
54347154347
54376154376
54424154424
54431154431
54442154442
54471154471
54479154479
54503154503
54512154512
54537154537
54572154572
54585154585
54613154613
54619154619
54639154639
54653154653
54679154679
54705154705
54709154709
54728154728
54745154745
54756154756
54813154813
54818154818
54847154847
54853154853
54877154877
54889154889
54897154897
54915154915
54940154940
54980154980
54990154990
54998154998
550312110062
55048155048
55054155054
55076155076
55099155099
55100155100
55136155136
55138155138
55173155173
55176155176
55196155196
55208155208
55209155209
55222155222
55246155246
55258155258
55267155267
55292155292
55301155301
55320155320
55332155332
55346155346
55350155350
55368155368
55400155400
55422155422
55428155428
55437155437
554682110936
55480155480
55494155494
55496155496
55523155523
55534155534
55536155536
55551155551
55557155557
55561155561
55583155583
55591155591
55604155604
55660155660
55663155663
55666155666
55703155703
55716155716
55753155753
55780155780
55819155819
55827155827
55855155855
55866155866
55897155897
55918155918
55924155924
55967155967
56019156019
56030156030
56042156042
56071156071
56092156092
56127156127
56128156128
56150156150
56173156173
562112112422
56237156237
56238156238
56269156269
56295156295
56307156307
56350156350
56385156385
56386156386
56411156411
56414156414
56428156428
56438156438
56454156454
56468156468
56485156485
56515156515
56521156521
56525156525
56533156533
56551156551
56561156561
56568156568
56569156569
56574156574
56582156582
56583156583
565902113180
56596156596
56607156607
56609156609
56611156611
56612156612
566142113228
56620156620
56622156622
566233169869
56624156624
566262113252
56627156627
56629156629
56631156631
56632156632
566342113268
566352113270
56637156637
566383169914
56639156639
56640156640
56642156642
566434226572
566452113290
566462113292
56649156649
56650156650
56652156652
56657156657
566582113316
56659156659
56660156660
566662113332
56674156674
56675156675
56679156679
56680156680
566812113362
56683156683
566862113372
566922113384
56694156694
56695156695
56696156696
56697156697
566982113396
56700156700
567044226816
567074226828
56708156708
567122113424
567152113430
567162113432
567172113434
56718156718
567212113442
56722156722
56723156723
56725156725
567312113462
56732156732
567342113468
56740156740
56741156741
56744156744
56747156747
567482113496
56753156753
56754156754
567562113512
56759156759
56761156761
567633170289
567662113532
56768156768
56770156770
56772156772
56774156774
56775156775
56778156778
56787156787
567903170370
56791156791
567942113588
56799156799
56800156800
56801156801
56806156806
568073170421
56808156808
56817156817
568182113636
56819156819
56821156821
56823156823
56825156825
56828156828
56830156830
56833156833
568342113668
568352113670
56844156844
568462113692
568493170547
56850156850
56851156851
56853156853
56854156854
56855156855
56856156856
56861156861
56862156862
568632113726
56865156865
56867156867
56885156885
56890156890
56912156912
56914156914
56931156931
56937156937
56964156964
56970156970
569722113944
56974156974
56993156993
57000157000
57002157002
57004157004
57017157017
57022157022
57025157025
57032157032
57034157034
570492114098
57064157064
57077157077
57079157079
57081157081
57084157084
57085157085
57086157086
57088157088
57089157089
570912114182
57092157092
570932114186
570952114190
57096157096
57098157098
571004228400
571012114202
57102157102
571032114206
571042114208
571052114210
571073171321
57108157108
571092114218
571102114220
571124228448
571133171339
571145285570
571153171345
571162114232
571172114234
57118157118
571193171357
571202114240
57121157121
571223171366
571235285615
571246342744
571254228500
57126157126
571276342762
571284228512
571293171387
571302114260
571314228524
571323171396
571333171399
571343171402
57135157135
571363171408
571372114274
571385285690
571393171417
571403171420
571414228564
571423171426
571432114286
571443171432
571455285725
571464228584
571473171441
571482114296
57149157149
571503171450
57151157151
571522114304
57153157153
571542114308
571556342930
571572114314
571583171474
57159157159
571622114324
571632114326
571642114328
571654228660
57167157167
571682114336
571692114338
571703171510
57171157171
57173157173
571742114348
57181157181
57183157183
571862114372
57190157190
57192157192
57197157197
57201157201
57205157205
572102114420
57211157211
572152114430
572162114432
57219157219
57223157223
57225157225
57226157226
57227157227
57230157230
572322114464
57234157234
57235157235
57236157236
57238157238
57239157239
57242157242
57246157246
57250157250
57251157251
57253157253
572552114510
57260157260
572612114522
572623171786
57267157267
57268157268
57269157269
572762114552
57280157280
57281157281
57284157284
57285157285
57286157286
57287157287
57291157291
57294157294
57296157296
57297157297
57300157300
57302157302
573032114606
57304157304
573052114610
573082114616
57309157309
57314157314
573182114636
573192114638
57320157320
57321157321
57322157322
57323157323
573244229296
573252114650
57329157329
57331157331
57332157332
573332114666
573342114668
573362114672
573382114676
573412114682
57343157343
57344157344
573452114690
57346157346
57349157349
573504229400
573532114706
57356157356
57359157359
573622114724
57363157363
57364157364
57366157366
57368157368
57370157370
573713172113
573723172116
57374157374
573752114750
57376157376
57377157377
57379157379
573802114760
57384157384
57386157386
57387157387
57392157392
57393157393
573942114788
57396157396
573972114794
57398157398
57399157399
57401157401
57402157402
574032114806
57404157404
574062114812
57408157408
57411157411
57412157412
57414157414
57415157415
57417157417
57419157419
57420157420
57422157422
57423157423
574242114848
574253172275
57426157426
574273172281
574282114856
574292114858
574302114860
574322114864
574342114868
574363172308
574372114874
57438157438
57440157440
57442157442
574432114886
574452114890
57449157449
57451157451
57454157454
57457157457
574602114920
574633172389
57464157464
57467157467
574692114938
574722114944
57473157473
57478157478
57479157479
57484157484
574872114974
57488157488
57489157489
57491157491
574922114984
574933172479
574942114988
57495157495
57496157496
57499157499
575002115000
57501157501
575022115004
57503157503
57504157504
57505157505
575072115014
57509157509
57513157513
57514157514
575162115032
57518157518
57519157519
575232115046
57525157525
57687157687
Total100255756521
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333238266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882b5e31e8ab60b
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6235653331653861
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_2_9.json b/autobahn/client/tungstenite_case_12_2_9.json new file mode 100644 index 0000000..a9608d8 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_2_9.json @@ -0,0 +1,1617 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 328, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 6113, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=328&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 3XzGTA2kALL41HIiHuDLzQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: /d46yYveiK1pmfRRbp1XSmxBznM=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.2.9", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "51274": 1, + "51298": 1, + "51309": 1, + "51342": 1, + "51345": 1, + "51357": 1, + "51372": 1, + "51379": 1, + "51382": 1, + "51385": 1, + "51391": 1, + "51398": 1, + "51403": 1, + "51421": 1, + "51427": 1, + "51445": 1, + "51451": 1, + "51465": 1, + "51470": 1, + "51474": 1, + "51487": 1, + "51494": 1, + "51495": 1, + "51497": 1, + "51505": 1, + "51507": 1, + "51523": 1, + "51528": 1, + "51529": 1, + "51535": 2, + "51541": 1, + "51548": 1, + "51549": 1, + "51551": 1, + "51554": 1, + "51555": 1, + "51564": 1, + "51571": 1, + "51573": 2, + "51574": 1, + "51585": 1, + "51590": 2, + "51592": 1, + "51598": 1, + "51599": 1, + "51600": 2, + "51603": 2, + "51605": 1, + "51606": 3, + "51607": 1, + "51608": 1, + "51614": 1, + "51615": 1, + "51616": 1, + "51617": 1, + "51618": 1, + "51622": 2, + "51630": 1, + "51631": 3, + "51642": 2, + "51665": 1, + "51666": 2, + "51682": 1, + "51686": 1, + "51688": 1, + "51690": 1, + "51692": 1, + "51701": 1, + "51720": 1, + "51722": 2, + "51733": 1, + "51735": 2, + "51743": 1, + "51744": 1, + "51762": 1, + "51766": 1, + "51767": 1, + "51770": 1, + "51773": 1, + "51776": 1, + "51777": 1, + "51779": 2, + "51784": 1, + "51789": 1, + "51790": 1, + "51793": 2, + "51799": 1, + "51802": 1, + "51806": 1, + "51811": 1, + "51813": 1, + "51819": 1, + "51820": 1, + "51822": 1, + "51826": 1, + "51827": 1, + "51828": 2, + "51829": 1, + "51830": 1, + "51831": 2, + "51832": 1, + "51833": 1, + "51835": 1, + "51838": 1, + "51840": 1, + "51843": 1, + "51845": 2, + "51846": 1, + "51847": 1, + "51852": 1, + "51853": 3, + "51854": 1, + "51856": 1, + "51857": 1, + "51858": 1, + "51859": 3, + "51890": 1, + "51896": 1, + "51906": 1, + "51909": 1, + "51942": 1, + "51967": 1, + "51983": 1, + "52019": 1, + "52056": 1, + "52070": 1, + "52113": 1, + "52145": 1, + "52158": 1, + "52176": 1, + "52199": 1, + "52235": 1, + "52284": 1, + "52307": 1, + "52330": 1, + "52344": 1, + "52365": 1, + "52419": 1, + "52445": 1, + "52476": 1, + "52495": 1, + "52524": 1, + "52605": 1, + "52627": 1, + "52687": 1, + "52704": 1, + "52706": 1, + "52789": 1, + "52800": 1, + "52857": 1, + "52893": 1, + "52907": 1, + "52970": 1, + "52995": 1, + "53055": 1, + "53057": 1, + "53098": 1, + "53130": 1, + "53152": 1, + "53205": 1, + "53222": 1, + "53273": 1, + "53299": 1, + "53331": 1, + "53354": 1, + "53368": 1, + "53370": 1, + "53420": 1, + "53435": 1, + "53438": 1, + "53478": 1, + "53487": 1, + "53504": 1, + "53516": 1, + "53547": 1, + "53556": 1, + "53598": 1, + "53608": 1, + "53622": 1, + "53640": 1, + "53651": 1, + "53671": 1, + "53690": 1, + "53693": 1, + "53729": 1, + "53753": 1, + "53780": 1, + "53795": 1, + "53799": 1, + "53809": 1, + "53852": 1, + "53868": 1, + "53876": 1, + "53907": 1, + "53921": 1, + "53951": 1, + "53957": 1, + "53966": 1, + "53995": 1, + "54028": 1, + "54040": 1, + "54047": 1, + "54093": 1, + "54109": 1, + "54119": 1, + "54134": 1, + "54148": 1, + "54181": 1, + "54194": 1, + "54220": 1, + "54277": 1, + "54283": 1, + "54296": 1, + "54315": 1, + "54330": 1, + "54349": 1, + "54351": 1, + "54380": 1, + "54428": 1, + "54435": 1, + "54446": 1, + "54475": 1, + "54483": 1, + "54507": 1, + "54516": 1, + "54541": 1, + "54576": 1, + "54589": 1, + "54617": 1, + "54623": 1, + "54643": 1, + "54657": 1, + "54683": 1, + "54709": 1, + "54713": 1, + "54732": 1, + "54749": 1, + "54760": 1, + "54817": 1, + "54822": 1, + "54851": 1, + "54857": 1, + "54881": 1, + "54893": 1, + "54901": 1, + "54919": 1, + "54944": 1, + "54984": 1, + "54994": 1, + "55002": 1, + "55035": 2, + "55052": 1, + "55058": 1, + "55080": 1, + "55103": 1, + "55104": 1, + "55140": 1, + "55142": 1, + "55177": 1, + "55180": 1, + "55200": 1, + "55212": 1, + "55213": 1, + "55226": 1, + "55250": 1, + "55262": 1, + "55271": 1, + "55296": 1, + "55305": 1, + "55324": 1, + "55336": 1, + "55350": 1, + "55354": 1, + "55372": 1, + "55404": 1, + "55426": 1, + "55432": 1, + "55441": 1, + "55472": 2, + "55484": 1, + "55498": 1, + "55500": 1, + "55527": 1, + "55538": 1, + "55540": 1, + "55555": 1, + "55561": 1, + "55565": 1, + "55587": 1, + "55595": 1, + "55608": 1, + "55664": 1, + "55667": 1, + "55670": 1, + "55707": 1, + "55720": 1, + "55757": 1, + "55784": 1, + "55823": 1, + "55831": 1, + "55859": 1, + "55870": 1, + "55901": 1, + "55922": 1, + "55928": 1, + "55971": 1, + "56023": 1, + "56034": 1, + "56046": 1, + "56075": 1, + "56096": 1, + "56131": 1, + "56132": 1, + "56154": 1, + "56177": 1, + "56215": 2, + "56241": 1, + "56242": 1, + "56273": 1, + "56299": 1, + "56311": 1, + "56354": 1, + "56389": 1, + "56390": 1, + "56415": 1, + "56418": 1, + "56432": 1, + "56442": 1, + "56458": 1, + "56472": 1, + "56489": 1, + "56519": 1, + "56525": 1, + "56529": 1, + "56537": 1, + "56555": 1, + "56565": 1, + "56572": 1, + "56573": 1, + "56578": 1, + "56586": 1, + "56587": 1, + "56594": 2, + "56600": 1, + "56611": 1, + "56613": 1, + "56615": 1, + "56616": 1, + "56618": 2, + "56624": 1, + "56626": 1, + "56627": 3, + "56628": 1, + "56630": 2, + "56631": 1, + "56633": 1, + "56635": 1, + "56636": 1, + "56638": 2, + "56639": 2, + "56641": 1, + "56642": 3, + "56643": 1, + "56644": 1, + "56646": 1, + "56647": 4, + "56649": 2, + "56650": 2, + "56653": 1, + "56654": 1, + "56656": 1, + "56661": 1, + "56662": 2, + "56663": 1, + "56664": 1, + "56670": 2, + "56678": 1, + "56679": 1, + "56683": 1, + "56684": 1, + "56685": 2, + "56687": 1, + "56690": 2, + "56696": 2, + "56698": 1, + "56699": 1, + "56700": 1, + "56701": 1, + "56702": 2, + "56704": 1, + "56708": 4, + "56711": 4, + "56712": 1, + "56716": 2, + "56719": 2, + "56720": 2, + "56721": 2, + "56722": 1, + "56725": 2, + "56726": 1, + "56727": 1, + "56729": 1, + "56735": 2, + "56736": 1, + "56738": 2, + "56744": 1, + "56745": 1, + "56748": 1, + "56751": 1, + "56752": 2, + "56757": 1, + "56758": 1, + "56760": 2, + "56763": 1, + "56765": 1, + "56767": 3, + "56770": 2, + "56772": 1, + "56774": 1, + "56776": 1, + "56778": 1, + "56779": 1, + "56782": 1, + "56791": 1, + "56794": 3, + "56795": 1, + "56798": 2, + "56803": 1, + "56804": 1, + "56805": 1, + "56810": 1, + "56811": 3, + "56812": 1, + "56821": 1, + "56822": 2, + "56823": 1, + "56825": 1, + "56827": 1, + "56829": 1, + "56832": 1, + "56834": 1, + "56837": 1, + "56838": 2, + "56839": 2, + "56848": 1, + "56850": 2, + "56853": 3, + "56854": 1, + "56855": 1, + "56857": 1, + "56858": 1, + "56859": 1, + "56860": 1, + "56865": 1, + "56866": 1, + "56867": 2, + "56869": 1, + "56871": 1, + "56889": 1, + "56894": 1, + "56916": 1, + "56918": 1, + "56935": 1, + "56941": 1, + "56968": 1, + "56974": 1, + "56976": 2, + "56978": 1, + "56997": 1, + "57004": 1, + "57006": 1, + "57008": 1, + "57021": 1, + "57026": 1, + "57029": 1, + "57036": 1, + "57038": 1, + "57053": 2, + "57068": 1, + "57081": 1, + "57083": 1, + "57085": 1, + "57088": 1, + "57089": 1, + "57090": 1, + "57092": 1, + "57093": 1, + "57095": 2, + "57096": 1, + "57097": 2, + "57099": 2, + "57100": 1, + "57102": 1, + "57104": 4, + "57105": 2, + "57106": 1, + "57107": 2, + "57108": 2, + "57109": 2, + "57111": 3, + "57112": 1, + "57113": 2, + "57114": 2, + "57116": 4, + "57117": 3, + "57118": 5, + "57119": 3, + "57120": 2, + "57121": 2, + "57122": 1, + "57123": 3, + "57124": 2, + "57125": 1, + "57126": 3, + "57127": 5, + "57128": 6, + "57129": 4, + "57130": 1, + "57131": 6, + "57132": 4, + "57133": 3, + "57134": 2, + "57135": 4, + "57136": 3, + "57137": 3, + "57138": 3, + "57139": 1, + "57140": 3, + "57141": 2, + "57142": 5, + "57143": 3, + "57144": 3, + "57145": 4, + "57146": 3, + "57147": 2, + "57148": 3, + "57149": 5, + "57150": 4, + "57151": 3, + "57152": 2, + "57153": 1, + "57154": 3, + "57155": 1, + "57156": 2, + "57157": 1, + "57158": 2, + "57159": 6, + "57161": 2, + "57162": 3, + "57163": 1, + "57166": 2, + "57167": 2, + "57168": 2, + "57169": 4, + "57171": 1, + "57172": 2, + "57173": 2, + "57174": 3, + "57175": 1, + "57177": 1, + "57178": 2, + "57185": 1, + "57187": 1, + "57190": 2, + "57194": 1, + "57196": 1, + "57201": 1, + "57205": 1, + "57209": 1, + "57214": 2, + "57215": 1, + "57219": 2, + "57220": 2, + "57223": 1, + "57227": 1, + "57229": 1, + "57230": 1, + "57231": 1, + "57234": 1, + "57236": 2, + "57238": 1, + "57239": 1, + "57240": 1, + "57242": 1, + "57243": 1, + "57246": 1, + "57250": 1, + "57254": 1, + "57255": 1, + "57257": 1, + "57259": 2, + "57264": 1, + "57265": 2, + "57266": 3, + "57271": 1, + "57272": 1, + "57273": 1, + "57280": 2, + "57284": 1, + "57285": 1, + "57288": 1, + "57289": 1, + "57290": 1, + "57291": 1, + "57295": 1, + "57298": 1, + "57300": 1, + "57301": 1, + "57304": 1, + "57306": 1, + "57307": 2, + "57308": 1, + "57309": 2, + "57312": 2, + "57313": 1, + "57318": 1, + "57322": 2, + "57323": 2, + "57324": 1, + "57325": 1, + "57326": 1, + "57327": 1, + "57328": 4, + "57329": 2, + "57333": 1, + "57335": 1, + "57336": 1, + "57337": 2, + "57338": 2, + "57340": 2, + "57342": 2, + "57345": 2, + "57347": 1, + "57348": 1, + "57349": 2, + "57350": 1, + "57353": 1, + "57354": 4, + "57357": 2, + "57360": 1, + "57363": 1, + "57366": 2, + "57367": 1, + "57368": 1, + "57370": 1, + "57372": 1, + "57374": 1, + "57375": 3, + "57376": 3, + "57378": 1, + "57379": 2, + "57380": 1, + "57381": 1, + "57383": 1, + "57384": 2, + "57388": 1, + "57390": 1, + "57391": 1, + "57396": 1, + "57397": 1, + "57398": 2, + "57400": 1, + "57401": 2, + "57402": 1, + "57403": 1, + "57405": 1, + "57406": 1, + "57407": 2, + "57408": 1, + "57410": 2, + "57412": 1, + "57415": 1, + "57416": 1, + "57418": 1, + "57419": 1, + "57421": 1, + "57423": 1, + "57424": 1, + "57426": 1, + "57427": 1, + "57428": 2, + "57429": 3, + "57430": 1, + "57431": 3, + "57432": 2, + "57433": 2, + "57434": 2, + "57436": 2, + "57438": 2, + "57440": 3, + "57441": 2, + "57442": 1, + "57444": 1, + "57446": 1, + "57447": 2, + "57449": 2, + "57453": 1, + "57455": 1, + "57458": 1, + "57461": 1, + "57464": 2, + "57467": 3, + "57468": 1, + "57471": 1, + "57473": 2, + "57476": 2, + "57477": 1, + "57482": 1, + "57483": 1, + "57488": 1, + "57491": 2, + "57492": 1, + "57493": 1, + "57495": 1, + "57496": 2, + "57497": 3, + "57498": 2, + "57499": 1, + "57500": 1, + "57503": 1, + "57504": 2, + "57505": 1, + "57506": 2, + "57507": 1, + "57508": 1, + "57509": 1, + "57511": 2, + "57513": 1, + "57517": 1, + "57518": 1, + "57520": 2, + "57522": 1, + "57523": 1, + "57527": 2, + "57529": 1, + "57691": 1 + }, + "started": "2020-09-07T18:45:13.574Z", + "trafficStats": { + "incomingCompressionRatio": 0.8507120513916016, + "incomingOctetsAppLevel": 65536000, + "incomingOctetsWebSocketLevel": 55752265, + "incomingOctetsWireLevel": 55760265, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.00014349192808579166, + "outgoingCompressionRatio": 0.8507120513916016, + "outgoingOctetsAppLevel": 65536000, + "outgoingOctetsWebSocketLevel": 55752265, + "outgoingOctetsWireLevel": 55756265, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 7.174596404289583e-05, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "51270": 1, + "51294": 1, + "51305": 1, + "51338": 1, + "51341": 1, + "51353": 1, + "51368": 1, + "51375": 1, + "51378": 1, + "51381": 1, + "51387": 1, + "51394": 1, + "51399": 1, + "51417": 1, + "51423": 1, + "51441": 1, + "51447": 1, + "51461": 1, + "51466": 1, + "51470": 1, + "51483": 1, + "51490": 1, + "51491": 1, + "51493": 1, + "51501": 1, + "51503": 1, + "51519": 1, + "51524": 1, + "51525": 1, + "51531": 2, + "51537": 1, + "51544": 1, + "51545": 1, + "51547": 1, + "51550": 1, + "51551": 1, + "51560": 1, + "51567": 1, + "51569": 2, + "51570": 1, + "51581": 1, + "51586": 2, + "51588": 1, + "51594": 1, + "51595": 1, + "51596": 2, + "51599": 2, + "51601": 1, + "51602": 3, + "51603": 1, + "51604": 1, + "51610": 1, + "51611": 1, + "51612": 1, + "51613": 1, + "51614": 1, + "51618": 2, + "51626": 1, + "51627": 3, + "51638": 2, + "51661": 1, + "51662": 2, + "51678": 1, + "51682": 1, + "51684": 1, + "51686": 1, + "51688": 1, + "51697": 1, + "51716": 1, + "51718": 2, + "51729": 1, + "51731": 2, + "51739": 1, + "51740": 1, + "51758": 1, + "51762": 1, + "51763": 1, + "51766": 1, + "51769": 1, + "51772": 1, + "51773": 1, + "51775": 2, + "51780": 1, + "51785": 1, + "51786": 1, + "51789": 2, + "51795": 1, + "51798": 1, + "51802": 1, + "51807": 1, + "51809": 1, + "51815": 1, + "51816": 1, + "51818": 1, + "51822": 1, + "51823": 1, + "51824": 2, + "51825": 1, + "51826": 1, + "51827": 2, + "51828": 1, + "51829": 1, + "51831": 1, + "51834": 1, + "51836": 1, + "51839": 1, + "51841": 2, + "51842": 1, + "51843": 1, + "51848": 1, + "51849": 3, + "51850": 1, + "51852": 1, + "51853": 1, + "51854": 1, + "51855": 3, + "51886": 1, + "51892": 1, + "51902": 1, + "51905": 1, + "51938": 1, + "51963": 1, + "51979": 1, + "52015": 1, + "52052": 1, + "52066": 1, + "52109": 1, + "52141": 1, + "52154": 1, + "52172": 1, + "52195": 1, + "52231": 1, + "52280": 1, + "52303": 1, + "52326": 1, + "52340": 1, + "52361": 1, + "52415": 1, + "52441": 1, + "52472": 1, + "52491": 1, + "52520": 1, + "52601": 1, + "52623": 1, + "52683": 1, + "52700": 1, + "52702": 1, + "52785": 1, + "52796": 1, + "52853": 1, + "52889": 1, + "52903": 1, + "52966": 1, + "52991": 1, + "53051": 1, + "53053": 1, + "53094": 1, + "53126": 1, + "53148": 1, + "53201": 1, + "53218": 1, + "53269": 1, + "53295": 1, + "53327": 1, + "53350": 1, + "53364": 1, + "53366": 1, + "53416": 1, + "53431": 1, + "53434": 1, + "53474": 1, + "53483": 1, + "53500": 1, + "53512": 1, + "53543": 1, + "53552": 1, + "53594": 1, + "53604": 1, + "53618": 1, + "53636": 1, + "53647": 1, + "53667": 1, + "53686": 1, + "53689": 1, + "53725": 1, + "53749": 1, + "53776": 1, + "53791": 1, + "53795": 1, + "53805": 1, + "53848": 1, + "53864": 1, + "53872": 1, + "53903": 1, + "53917": 1, + "53947": 1, + "53953": 1, + "53962": 1, + "53991": 1, + "54024": 1, + "54036": 1, + "54043": 1, + "54089": 1, + "54105": 1, + "54115": 1, + "54130": 1, + "54144": 1, + "54177": 1, + "54190": 1, + "54216": 1, + "54273": 1, + "54279": 1, + "54292": 1, + "54311": 1, + "54326": 1, + "54345": 1, + "54347": 1, + "54376": 1, + "54424": 1, + "54431": 1, + "54442": 1, + "54471": 1, + "54479": 1, + "54503": 1, + "54512": 1, + "54537": 1, + "54572": 1, + "54585": 1, + "54613": 1, + "54619": 1, + "54639": 1, + "54653": 1, + "54679": 1, + "54705": 1, + "54709": 1, + "54728": 1, + "54745": 1, + "54756": 1, + "54813": 1, + "54818": 1, + "54847": 1, + "54853": 1, + "54877": 1, + "54889": 1, + "54897": 1, + "54915": 1, + "54940": 1, + "54980": 1, + "54990": 1, + "54998": 1, + "55031": 2, + "55048": 1, + "55054": 1, + "55076": 1, + "55099": 1, + "55100": 1, + "55136": 1, + "55138": 1, + "55173": 1, + "55176": 1, + "55196": 1, + "55208": 1, + "55209": 1, + "55222": 1, + "55246": 1, + "55258": 1, + "55267": 1, + "55292": 1, + "55301": 1, + "55320": 1, + "55332": 1, + "55346": 1, + "55350": 1, + "55368": 1, + "55400": 1, + "55422": 1, + "55428": 1, + "55437": 1, + "55468": 2, + "55480": 1, + "55494": 1, + "55496": 1, + "55523": 1, + "55534": 1, + "55536": 1, + "55551": 1, + "55557": 1, + "55561": 1, + "55583": 1, + "55591": 1, + "55604": 1, + "55660": 1, + "55663": 1, + "55666": 1, + "55703": 1, + "55716": 1, + "55753": 1, + "55780": 1, + "55819": 1, + "55827": 1, + "55855": 1, + "55866": 1, + "55897": 1, + "55918": 1, + "55924": 1, + "55967": 1, + "56019": 1, + "56030": 1, + "56042": 1, + "56071": 1, + "56092": 1, + "56127": 1, + "56128": 1, + "56150": 1, + "56173": 1, + "56211": 2, + "56237": 1, + "56238": 1, + "56269": 1, + "56295": 1, + "56307": 1, + "56350": 1, + "56385": 1, + "56386": 1, + "56411": 1, + "56414": 1, + "56428": 1, + "56438": 1, + "56454": 1, + "56468": 1, + "56485": 1, + "56515": 1, + "56521": 1, + "56525": 1, + "56533": 1, + "56551": 1, + "56561": 1, + "56568": 1, + "56569": 1, + "56574": 1, + "56582": 1, + "56583": 1, + "56590": 2, + "56596": 1, + "56607": 1, + "56609": 1, + "56611": 1, + "56612": 1, + "56614": 2, + "56620": 1, + "56622": 1, + "56623": 3, + "56624": 1, + "56626": 2, + "56627": 1, + "56629": 1, + "56631": 1, + "56632": 1, + "56634": 2, + "56635": 2, + "56637": 1, + "56638": 3, + "56639": 1, + "56640": 1, + "56642": 1, + "56643": 4, + "56645": 2, + "56646": 2, + "56649": 1, + "56650": 1, + "56652": 1, + "56657": 1, + "56658": 2, + "56659": 1, + "56660": 1, + "56666": 2, + "56674": 1, + "56675": 1, + "56679": 1, + "56680": 1, + "56681": 2, + "56683": 1, + "56686": 2, + "56692": 2, + "56694": 1, + "56695": 1, + "56696": 1, + "56697": 1, + "56698": 2, + "56700": 1, + "56704": 4, + "56707": 4, + "56708": 1, + "56712": 2, + "56715": 2, + "56716": 2, + "56717": 2, + "56718": 1, + "56721": 2, + "56722": 1, + "56723": 1, + "56725": 1, + "56731": 2, + "56732": 1, + "56734": 2, + "56740": 1, + "56741": 1, + "56744": 1, + "56747": 1, + "56748": 2, + "56753": 1, + "56754": 1, + "56756": 2, + "56759": 1, + "56761": 1, + "56763": 3, + "56766": 2, + "56768": 1, + "56770": 1, + "56772": 1, + "56774": 1, + "56775": 1, + "56778": 1, + "56787": 1, + "56790": 3, + "56791": 1, + "56794": 2, + "56799": 1, + "56800": 1, + "56801": 1, + "56806": 1, + "56807": 3, + "56808": 1, + "56817": 1, + "56818": 2, + "56819": 1, + "56821": 1, + "56823": 1, + "56825": 1, + "56828": 1, + "56830": 1, + "56833": 1, + "56834": 2, + "56835": 2, + "56844": 1, + "56846": 2, + "56849": 3, + "56850": 1, + "56851": 1, + "56853": 1, + "56854": 1, + "56855": 1, + "56856": 1, + "56861": 1, + "56862": 1, + "56863": 2, + "56865": 1, + "56867": 1, + "56885": 1, + "56890": 1, + "56912": 1, + "56914": 1, + "56931": 1, + "56937": 1, + "56964": 1, + "56970": 1, + "56972": 2, + "56974": 1, + "56993": 1, + "57000": 1, + "57002": 1, + "57004": 1, + "57017": 1, + "57022": 1, + "57025": 1, + "57032": 1, + "57034": 1, + "57049": 2, + "57064": 1, + "57077": 1, + "57079": 1, + "57081": 1, + "57084": 1, + "57085": 1, + "57086": 1, + "57088": 1, + "57089": 1, + "57091": 2, + "57092": 1, + "57093": 2, + "57095": 2, + "57096": 1, + "57098": 1, + "57100": 4, + "57101": 2, + "57102": 1, + "57103": 2, + "57104": 2, + "57105": 2, + "57107": 3, + "57108": 1, + "57109": 2, + "57110": 2, + "57112": 4, + "57113": 3, + "57114": 5, + "57115": 3, + "57116": 2, + "57117": 2, + "57118": 1, + "57119": 3, + "57120": 2, + "57121": 1, + "57122": 3, + "57123": 5, + "57124": 6, + "57125": 4, + "57126": 1, + "57127": 6, + "57128": 4, + "57129": 3, + "57130": 2, + "57131": 4, + "57132": 3, + "57133": 3, + "57134": 3, + "57135": 1, + "57136": 3, + "57137": 2, + "57138": 5, + "57139": 3, + "57140": 3, + "57141": 4, + "57142": 3, + "57143": 2, + "57144": 3, + "57145": 5, + "57146": 4, + "57147": 3, + "57148": 2, + "57149": 1, + "57150": 3, + "57151": 1, + "57152": 2, + "57153": 1, + "57154": 2, + "57155": 6, + "57157": 2, + "57158": 3, + "57159": 1, + "57162": 2, + "57163": 2, + "57164": 2, + "57165": 4, + "57167": 1, + "57168": 2, + "57169": 2, + "57170": 3, + "57171": 1, + "57173": 1, + "57174": 2, + "57181": 1, + "57183": 1, + "57186": 2, + "57190": 1, + "57192": 1, + "57197": 1, + "57201": 1, + "57205": 1, + "57210": 2, + "57211": 1, + "57215": 2, + "57216": 2, + "57219": 1, + "57223": 1, + "57225": 1, + "57226": 1, + "57227": 1, + "57230": 1, + "57232": 2, + "57234": 1, + "57235": 1, + "57236": 1, + "57238": 1, + "57239": 1, + "57242": 1, + "57246": 1, + "57250": 1, + "57251": 1, + "57253": 1, + "57255": 2, + "57260": 1, + "57261": 2, + "57262": 3, + "57267": 1, + "57268": 1, + "57269": 1, + "57276": 2, + "57280": 1, + "57281": 1, + "57284": 1, + "57285": 1, + "57286": 1, + "57287": 1, + "57291": 1, + "57294": 1, + "57296": 1, + "57297": 1, + "57300": 1, + "57302": 1, + "57303": 2, + "57304": 1, + "57305": 2, + "57308": 2, + "57309": 1, + "57314": 1, + "57318": 2, + "57319": 2, + "57320": 1, + "57321": 1, + "57322": 1, + "57323": 1, + "57324": 4, + "57325": 2, + "57329": 1, + "57331": 1, + "57332": 1, + "57333": 2, + "57334": 2, + "57336": 2, + "57338": 2, + "57341": 2, + "57343": 1, + "57344": 1, + "57345": 2, + "57346": 1, + "57349": 1, + "57350": 4, + "57353": 2, + "57356": 1, + "57359": 1, + "57362": 2, + "57363": 1, + "57364": 1, + "57366": 1, + "57368": 1, + "57370": 1, + "57371": 3, + "57372": 3, + "57374": 1, + "57375": 2, + "57376": 1, + "57377": 1, + "57379": 1, + "57380": 2, + "57384": 1, + "57386": 1, + "57387": 1, + "57392": 1, + "57393": 1, + "57394": 2, + "57396": 1, + "57397": 2, + "57398": 1, + "57399": 1, + "57401": 1, + "57402": 1, + "57403": 2, + "57404": 1, + "57406": 2, + "57408": 1, + "57411": 1, + "57412": 1, + "57414": 1, + "57415": 1, + "57417": 1, + "57419": 1, + "57420": 1, + "57422": 1, + "57423": 1, + "57424": 2, + "57425": 3, + "57426": 1, + "57427": 3, + "57428": 2, + "57429": 2, + "57430": 2, + "57432": 2, + "57434": 2, + "57436": 3, + "57437": 2, + "57438": 1, + "57440": 1, + "57442": 1, + "57443": 2, + "57445": 2, + "57449": 1, + "57451": 1, + "57454": 1, + "57457": 1, + "57460": 2, + "57463": 3, + "57464": 1, + "57467": 1, + "57469": 2, + "57472": 2, + "57473": 1, + "57478": 1, + "57479": 1, + "57484": 1, + "57487": 2, + "57488": 1, + "57489": 1, + "57491": 1, + "57492": 2, + "57493": 3, + "57494": 2, + "57495": 1, + "57496": 1, + "57499": 1, + "57500": 2, + "57501": 1, + "57502": 2, + "57503": 1, + "57504": 1, + "57505": 1, + "57507": 2, + "57509": 1, + "57513": 1, + "57514": 1, + "57516": 2, + "57518": 1, + "57519": 1, + "57523": 2, + "57525": 1, + "57687": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333238266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882b5e31e8ab60b" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "b5e31e8a" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_3_1.html b/autobahn/client/tungstenite_case_12_3_1.html new file mode 100644 index 0000000..f794f0c --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_1.html @@ -0,0 +1,328 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.3.1 : Pass - 86 ms @ 2020-09-07T18:46:35.944Z

+

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=338&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: hpwLtYNacK+TQpDcErPwcw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: e68uhFHBu2h6pggciH6QrhuBO+w=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
10110
1114154
12784
1322286
1434476
15741110
161442304
171793043
181743132
191562964
201042080
2143903
2226572
238184
2414336
2571257
Total100217903
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
616
71498
8756
923207
1033330
1175825
121441728
131742262
141782492
151562340
161041664
1743731
1826468
198152
2014280
2521252
Total100213895
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333338266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88827661752e7589
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3736363137353265
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_3_1.json b/autobahn/client/tungstenite_case_12_3_1.json new file mode 100644 index 0000000..c9d1958 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_1.json @@ -0,0 +1,175 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 338, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 86, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=338&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: hpwLtYNacK+TQpDcErPwcw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: e68uhFHBu2h6pggciH6QrhuBO+w=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.3.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "11": 14, + "12": 7, + "13": 22, + "14": 34, + "15": 74, + "16": 144, + "17": 179, + "18": 174, + "19": 156, + "20": 104, + "21": 43, + "22": 26, + "23": 8, + "24": 14, + "257": 1 + }, + "started": "2020-09-07T18:46:35.944Z", + "trafficStats": { + "incomingCompressionRatio": 0.727375, + "incomingOctetsAppLevel": 16000, + "incomingOctetsWebSocketLevel": 11638, + "incomingOctetsWireLevel": 17638, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.5155525004296271, + "outgoingCompressionRatio": 0.7274375, + "outgoingOctetsAppLevel": 16000, + "outgoingOctetsWebSocketLevel": 11639, + "outgoingOctetsWireLevel": 13639, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.17183606839075521, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "7": 14, + "8": 7, + "9": 23, + "10": 33, + "11": 75, + "12": 144, + "13": 174, + "14": 178, + "15": 156, + "16": 104, + "17": 43, + "18": 26, + "19": 8, + "20": 14, + "252": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333338266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88827661752e7589" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "7661752e" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_3_10.html b/autobahn/client/tungstenite_case_12_3_10.html new file mode 100644 index 0000000..3a08d26 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_10.html @@ -0,0 +1,1739 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.3.10 : Pass - 24468 ms @ 2020-09-07T18:47:01.518Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=347&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: njkSexwraq6YpBkxKQ2ABw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: xYl1xHNhN8LU7TDpgGfGJ9tryLE=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
49176149176
49194149194
49195149195
49196149196
49197298394
49199149199
49200149200
49204149204
49208149208
49213149213
49219149219
49221149221
49225149225
49229298458
49231149231
49232149232
49234149234
49235149235
49237298474
492413147723
49242149242
49245149245
49246298492
49248149248
49251149251
492524197008
49253149253
49256298512
49260149260
49261298522
492623147786
49263149263
492654197060
492673147801
49268149268
492714197084
49272149272
49273298546
49274298548
49275149275
49276149276
49277298554
49278298556
49279149279
49280298560
49281149281
492823147846
49283149283
492843147852
49285298570
492864197144
49288149288
49289298578
49292298584
49293149293
49294149294
492953147885
49296149296
49297149297
49299298598
49301149301
493025246510
49303298606
49305149305
49306149306
49307149307
49308298616
49309298618
49311149311
49312298624
493133147939
493143147942
49315149315
49318298636
49319149319
49320298640
49321298642
49322149322
49323149323
49324149324
49325298650
493274197308
49329298658
493303147990
49331298662
49332149332
493333147999
49334149334
49335298670
49336298672
493373148011
493394197356
49340298680
49341298682
49342149342
49344149344
49345298690
49346149346
49347149347
49348149348
49349149349
49351149351
493524197408
49354149354
49355149355
49356149356
49357149357
49359149359
49367149367
49368149368
493693148107
49371149371
49374149374
49380149380
49381149381
493874197548
49389149389
49390149390
49392149392
49395149395
49396298792
49399149399
49401149401
49410149410
49413149413
49414298828
49416298832
49418298836
49421149421
49422149422
49423149423
49425149425
49429149429
49437149437
49438149438
49440149440
49441298882
49442149442
49446298892
49449149449
494503148350
49452149452
49453149453
49455149455
49460149460
49462149462
49467298934
49469149469
49471149471
49473149473
49476149476
49480149480
49481149481
49484149484
49485149485
49486149486
49487149487
49492149492
49494149494
49495149495
49496149496
49499149499
49503149503
49505149505
495063148518
49507149507
49511149511
49516149516
49520299040
495223148566
49524299048
49525299050
49526299052
495275247635
49528149528
49530299060
495323148596
49533149533
49534149534
495353148605
49536149536
49537299074
49538299076
49539299078
495403148620
49541149541
49542149542
49543299086
49544149544
49545149545
49546299092
49547149547
49548149548
49551149551
49552149552
49557149557
49558149558
49559149559
49575149575
49576149576
49581149581
49590149590
49598149598
49605299210
49609149609
49611149611
49620149620
49622149622
49624149624
49639149639
49642149642
49643149643
49644149644
49666299332
49668299336
49673299346
49678149678
49681299362
49683149683
49686149686
49688149688
49691149691
49695149695
49696149696
49697149697
49698149698
49699149699
49706149706
49710149710
49712149712
49719149719
49720149720
49721149721
49722149722
49728149728
49729149729
49731149731
49733149733
49734149734
49737149737
49739149739
49742299484
49746149746
49750149750
49751299502
49753149753
49756149756
49761299522
49762149762
49765149765
49769299538
49770149770
49771149771
49772149772
49775149775
49776299552
49782149782
49783149783
49785149785
49798149798
49799149799
49800149800
49801299602
49807149807
49808299616
49809149809
49810149810
49813149813
49814149814
49820149820
49823149823
49825299650
49828149828
49830149830
49831149831
49833149833
49836149836
49844149844
49867149867
49870149870
49887149887
49895149895
49906149906
49909149909
49913149913
49929149929
49933149933
49946149946
49961149961
49962149962
49981149981
49982149982
49984149984
49988149988
49994149994
49999149999
50000150000
50001150001
500052100010
50010150010
50011150011
50012150012
500132100026
50014150014
50015150015
50017150017
50030150030
50041150041
50045150045
50047150047
50048150048
50052150052
50053150053
50075150075
50077150077
50082150082
50088150088
50092150092
50093150093
500962100192
50102150102
501053150315
50106150106
50118150118
50127150127
50139150139
50145150145
50146150146
50149150149
50152150152
50155150155
50161150161
50163150163
50168150168
50171150171
50180150180
50184150184
50186150186
501912100382
501942100388
50200150200
50201150201
50202150202
50207150207
50210150210
50212150212
50219150219
50220150220
50223150223
50224150224
502412100482
50249150249
502582100516
50261150261
50266150266
50268150268
50273150273
50276150276
50278150278
502842100568
50286150286
50291150291
50293150293
50296150296
50298150298
50302150302
50315150315
50317150317
50322150322
50323150323
50324150324
50326150326
50328150328
50335150335
50338150338
50342150342
50343150343
503472100694
50348150348
50349150349
50350150350
503512100702
50354150354
503555251775
50356150356
50358150358
50359150359
503612100722
50363150363
503644201456
503652100730
503663151098
503673151101
503682100736
50370150370
50372150372
503732100746
50374150374
50375150375
503762100752
50377150377
503782100756
503793151137
503813151143
503822100764
503832100766
503842100768
50386150386
50389150389
50390150390
503923151176
50393150393
50394150394
50396150396
50397150397
503982100796
50399150399
504002100800
504013151203
50402150402
504032100806
504042100808
50406150406
504074201628
504083151224
50410150410
504113151233
50412150412
50414150414
50418150418
50419150419
50420150420
50422150422
504252100850
50427150427
50428150428
50429150429
504302100860
50434150434
504362100872
50441150441
50444150444
50449150449
50450150450
50451150451
50453150453
50460150460
50463150463
50464150464
504662100932
50470150470
504742100948
504762100952
50479150479
504803151440
50483150483
50484150484
50487150487
50488150488
50497150497
50508150508
505132101026
50514150514
505192101038
50521150521
50522150522
50523150523
50525150525
505292101058
50530150530
50531150531
505322101064
50537150537
50539150539
505402101080
50541150541
50544150544
50545150545
50546150546
50548150548
50549150549
50550150550
50554150554
505572101114
50560150560
50561150561
50562150562
50563150563
505642101128
50565150565
50570150570
50573150573
50574150574
50576150576
505802101160
50581150581
505852101170
50586150586
505872101174
50588150588
50589150589
505922101184
50593150593
50594150594
50595150595
50599150599
506022101204
50607150607
506082101216
506092101218
506102101220
50611150611
50612150612
506182101236
50620150620
50621150621
506233151869
506262101252
50628150628
506322101264
50640150640
50641150641
50648150648
50650150650
506512101302
50652150652
50656150656
506572101314
50658150658
50661150661
506652101330
50669150669
50678150678
50679150679
50682150682
50683150683
50684150684
506862101372
50692150692
50696150696
506982101396
50708150708
50712150712
50714150714
50718150718
50719150719
50721150721
507222101444
50725150725
50727150727
50731150731
50733150733
507342101468
50735150735
50736150736
50740150740
50748150748
50753150753
50756150756
50757150757
507612101522
50764150764
507653152295
507662101532
507692101538
507703152310
507723152316
50773150773
50775150775
50778150778
507792101558
50781150781
50784150784
507852101570
50787150787
50788150788
507892101578
507902101580
50792150792
50796150796
50798150798
507993152397
508003152400
50801150801
508062101612
508083152424
508092101618
50810150810
508113152433
508122101624
50814150814
508152101630
50816150816
50817150817
508183152454
508192101638
508252101650
50826150826
50829150829
50835150835
50836150836
50839150839
50840150840
50852150852
50853150853
50856150856
50857150857
50859150859
50860150860
50864150864
508662101732
50868150868
50869150869
50870150870
508762101752
50877150877
50882150882
50884150884
50886150886
50892150892
50893150893
50896150896
50897150897
50900150900
50905150905
50909150909
50917150917
50918150918
50919150919
50925150925
50927150927
50932150932
50933150933
50937150937
50939150939
50940150940
50943150943
509452101890
50953150953
509582101916
50960150960
50963150963
509642101928
50972150972
509732101946
50974150974
509772101954
509783152934
50979150979
50980150980
50982150982
50983150983
50987150987
50988150988
50989150989
50991150991
50992150992
50995150995
50999150999
51000151000
51001151001
51002151002
510072102014
51010151010
51011151011
51017151017
51018151018
51021151021
510222102044
510282102056
51033151033
51034151034
510352102070
51039151039
51040151040
510452102090
510462102092
51048151048
510494204196
51050151050
510522102104
510532102106
51055151055
51056151056
51059151059
510603153180
51061151061
510622102124
51063151063
51064151064
51066151066
510672102134
51068151068
51069151069
51073151073
51075151075
51079151079
510802102160
51085151085
51087151087
510882102176
51090151090
510922102184
51093151093
51096151096
51097151097
510992102198
51101151101
51104151104
51106151106
51107151107
51110151110
51113151113
511142102228
511172102234
511192102238
51126151126
51127151127
51128151128
51129151129
511322102264
51134151134
51140151140
51153151153
51369151369
Total100250136673
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
49533149533
49551149551
49554149554
49556149556
49559149559
49571149571
49602149602
49609149609
49624149624
49641149641
49659149659
49662149662
49665149665
49666149666
49667149667
49672149672
496813149043
49683149683
49685149685
49686149686
49693299386
49694299388
49695149695
49697149697
49698149698
49699299398
49701149701
49704299408
49707149707
49708149708
497103149130
49711149711
49712149712
49713149713
49715149715
497163149148
49718299436
49719149719
49721149721
49722299444
49723299446
49725149725
49726299452
49727149727
49728149728
49729299458
49730149730
497313149193
49732299464
497343149202
497353149205
49736149736
49737149737
49738149738
497393149217
49740299480
497423149226
49744149744
49745299490
49746299492
497475248735
49749299498
49752149752
497534199012
49754149754
49755299510
49756299512
49757149757
497583149274
49759299518
497603149280
49761299522
49762299524
49764299528
497653149295
49767149767
49768299536
49769149769
497714199084
49772149772
49773149773
49775299550
49776149776
49777149777
497793149337
497804199120
49781149781
49782149782
49783149783
49784299568
497853149355
49786299572
49787299574
49789299578
49790299580
49791299582
497923149376
49793149793
497944199176
49795149795
49796149796
49797299594
497984199192
49799299598
498003149400
49803299606
498043149412
49807149807
49808299616
49809149809
49810149810
49811149811
49812149812
49813299626
49814149814
49816299632
49817149817
49819149819
49821149821
49822149822
49824149824
49825149825
498263149478
49828149828
49829149829
49830149830
49832149832
49834149834
49837149837
49844299688
49845149845
49848149848
49851149851
49853149853
498543149562
49857149857
49859149859
49860149860
49861149861
49862149862
49863149863
49864149864
49874149874
49875149875
49877149877
49882149882
49886149886
49891149891
49892149892
49898149898
49908149908
49909299818
49910149910
49914149914
49915149915
49917149917
49918149918
49919149919
49925149925
49930299860
49937149937
49941299882
49942149942
49945149945
49946149946
49951149951
49954149954
49955149955
49957149957
49958299916
49959149959
49960149960
49961149961
49962149962
49963149963
499644199856
49966149966
49968299936
49970299940
499723149916
49973299946
49974149974
49975299950
49976149976
499773149931
499783149934
49979299958
49980299960
49982149982
49984149984
49985299970
49987299974
49988299976
49990299980
49991149991
49992149992
49993149993
49994299988
49995149995
49997149997
500022100004
500052100010
50006150006
50010150010
50011150011
50013150013
50014150014
50029150029
50033150033
50041150041
50042150042
50046150046
50047150047
50048150048
50058150058
50066150066
50074150074
50076150076
50077150077
500782100156
50091150091
50099150099
50105150105
50110150110
50116150116
50119150119
50124150124
50125150125
50130150130
50132150132
501332100266
50135150135
50147150147
50149150149
50150150150
501522100304
50154150154
50155150155
50157150157
501582100316
501592100318
50165150165
501713150513
50173150173
50177150177
50181150181
50184150184
50186150186
50190150190
50192150192
50194150194
50195150195
50198150198
50199150199
50201150201
50203150203
50204150204
50205150205
50206150206
50208150208
50209150209
50211150211
50212150212
50213150213
502152100430
502162100432
50217150217
50218150218
50222150222
502342100468
50237150237
50239150239
502412100482
502422100484
50243150243
50245150245
50246150246
50253150253
50259150259
50260150260
50266150266
50268150268
50277150277
50292150292
50300150300
50325150325
50327150327
503302100660
50332150332
50335150335
503382100676
503402100680
50341150341
50342150342
50343150343
50344150344
503462100692
50348150348
50357150357
50359150359
50373150373
50378150378
503902100780
50395150395
50401150401
50402150402
50406150406
50408150408
50409150409
50410150410
50413150413
504182100836
50419150419
50423150423
50427150427
50428150428
50433150433
50439150439
50452150452
50456150456
50461150461
50470150470
50471150471
50472150472
50473150473
50475150475
50478150478
50479150479
50482150482
50491150491
50493150493
50495150495
50498150498
50502150502
50507150507
50511150511
50519150519
50520150520
505272101054
50534150534
505432101086
50549150549
50550150550
505642101128
50566150566
50568150568
50579150579
50580150580
50585150585
50589150589
50608150608
50611150611
50613150613
50614150614
50617150617
506222101244
50628150628
50630150630
50631150631
50633150633
50638150638
50639150639
50641150641
50642150642
50645150645
50650150650
506512101302
50652150652
506542101308
50655150655
50656150656
506573151971
50658150658
50660150660
506612101322
50662150662
506633151989
506642101328
50665150665
506663151998
50668150668
506702101340
506723152016
50673150673
506743152022
506754202700
506763152028
50677150677
50678150678
506794202716
50680150680
506812101362
50682150682
50684150684
506873152061
506894202756
506922101384
50693150693
50694150694
506952101390
50696150696
50698150698
50699150699
507023152106
507052101410
50706150706
50708150708
50709150709
507112101422
507132101426
507143152142
50715150715
507162101432
507172101434
50718150718
507194202876
50721150721
507223152166
507262101452
507272101454
50731150731
50733150733
50734150734
50737150737
507382101476
50739150739
50743150743
507442101488
50745150745
50746150746
507482101496
50751150751
50752150752
50753150753
50754150754
50757150757
507583152274
50759150759
50760150760
50764150764
50767150767
50769150769
50773150773
50774150774
50778150778
507802101560
50786150786
507952101590
50799150799
508012101602
50807150807
50808150808
508103152430
50811150811
50814150814
50816150816
50817150817
50818150818
50819150819
50822150822
50829150829
508302101660
50831150831
50832150832
508372101674
508452101690
50849150849
50852150852
50859150859
50863150863
50864150864
50870150870
50874150874
50877150877
50880150880
50885150885
508892101778
50896150896
50897150897
50898150898
508992101798
509002101800
509022101804
50904150904
50908150908
50910150910
50912150912
50913150913
50915150915
509182101836
509222101844
50924150924
509312101862
509322101864
50933150933
50936150936
509402101880
50943150943
509462101892
50947150947
509492101898
50951150951
50955150955
509562101912
50957150957
50958150958
50961150961
50964150964
50965150965
509662101932
50968150968
50969150969
50970150970
509732101946
509742101948
50977150977
50978150978
509803152940
509812101962
50985150985
50986150986
50987150987
50989150989
509903152970
50991150991
50992150992
509942101988
509973152991
50998150998
509992101998
510002102000
51001151001
51002151002
510062102012
51007151007
51009151009
51020151020
51027151027
51028151028
51029151029
51030151030
51031151031
51032151032
510332102066
510342102068
51035151035
51036151036
510372102074
51038151038
510394204156
51040151040
51041151041
510422102084
510452102090
510464204184
51047151047
51049151049
51050151050
51054151054
51055151055
51056151056
51060151060
51061151061
510622102124
51064151064
510653153195
510672102134
51068151068
51069151069
51073151073
51074151074
510762102152
51077151077
510784204312
510853153255
510863153258
51087151087
510882102176
51089151089
510902102180
51091151091
510922102184
510952102190
51096151096
51097151097
510982102196
51099151099
51103151103
511062102212
51108151108
51112151112
51115151115
51116151116
51130151130
51133151133
511362102272
51138151138
51141151141
511432102286
511452102290
51147151147
51149151149
51157151157
51158151158
51159151159
51163151163
51165151165
51168151168
51171151171
51179151179
51182151182
511842102368
51186151186
511922102384
51193151193
51194151194
51196151196
51198151198
51205151205
51208151208
51209151209
51211151211
51212151212
51216151216
51220151220
51221151221
512232102446
512262102452
51234151234
51235151235
51243151243
512442102488
512462102492
51247151247
512494204996
512502102500
51251151251
51252151252
51253151253
512552102510
51256151256
51257151257
512592102518
51260151260
51261151261
51265151265
51266151266
51271151271
51279151279
51282151282
51283151283
51285151285
51290151290
512922102584
51293151293
51296151296
51299151299
51301151301
51302151302
51303151303
51308151308
51309151309
51315151315
513162102632
51317151317
513182102636
51320151320
51321151321
513224205288
51323151323
51324151324
51325151325
51327151327
51328151328
513292102658
513303153990
513312102662
51332151332
51333151333
51335151335
51336151336
51337151337
51338151338
51339151339
51341151341
51342151342
51343151343
51346151346
513482102696
51349151349
51354151354
51355151355
51356151356
513573154071
51360151360
51363151363
51364151364
51365151365
51366151366
51367151367
51370151370
51375151375
51377151377
51381151381
513832102766
51384151384
51385151385
51386151386
51389151389
51392151392
51394151394
513952102790
51397151397
514032102806
51422151422
51722151722
Total100250494837
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333437266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888290de5ef49336
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3930646535656634
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_3_10.json b/autobahn/client/tungstenite_case_12_3_10.json new file mode 100644 index 0000000..4e10ea6 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_10.json @@ -0,0 +1,1586 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 347, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 24468, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=347&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: njkSexwraq6YpBkxKQ2ABw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: xYl1xHNhN8LU7TDpgGfGJ9tryLE=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.3.10", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "49176": 1, + "49194": 1, + "49195": 1, + "49196": 1, + "49197": 2, + "49199": 1, + "49200": 1, + "49204": 1, + "49208": 1, + "49213": 1, + "49219": 1, + "49221": 1, + "49225": 1, + "49229": 2, + "49231": 1, + "49232": 1, + "49234": 1, + "49235": 1, + "49237": 2, + "49241": 3, + "49242": 1, + "49245": 1, + "49246": 2, + "49248": 1, + "49251": 1, + "49252": 4, + "49253": 1, + "49256": 2, + "49260": 1, + "49261": 2, + "49262": 3, + "49263": 1, + "49265": 4, + "49267": 3, + "49268": 1, + "49271": 4, + "49272": 1, + "49273": 2, + "49274": 2, + "49275": 1, + "49276": 1, + "49277": 2, + "49278": 2, + "49279": 1, + "49280": 2, + "49281": 1, + "49282": 3, + "49283": 1, + "49284": 3, + "49285": 2, + "49286": 4, + "49288": 1, + "49289": 2, + "49292": 2, + "49293": 1, + "49294": 1, + "49295": 3, + "49296": 1, + "49297": 1, + "49299": 2, + "49301": 1, + "49302": 5, + "49303": 2, + "49305": 1, + "49306": 1, + "49307": 1, + "49308": 2, + "49309": 2, + "49311": 1, + "49312": 2, + "49313": 3, + "49314": 3, + "49315": 1, + "49318": 2, + "49319": 1, + "49320": 2, + "49321": 2, + "49322": 1, + "49323": 1, + "49324": 1, + "49325": 2, + "49327": 4, + "49329": 2, + "49330": 3, + "49331": 2, + "49332": 1, + "49333": 3, + "49334": 1, + "49335": 2, + "49336": 2, + "49337": 3, + "49339": 4, + "49340": 2, + "49341": 2, + "49342": 1, + "49344": 1, + "49345": 2, + "49346": 1, + "49347": 1, + "49348": 1, + "49349": 1, + "49351": 1, + "49352": 4, + "49354": 1, + "49355": 1, + "49356": 1, + "49357": 1, + "49359": 1, + "49367": 1, + "49368": 1, + "49369": 3, + "49371": 1, + "49374": 1, + "49380": 1, + "49381": 1, + "49387": 4, + "49389": 1, + "49390": 1, + "49392": 1, + "49395": 1, + "49396": 2, + "49399": 1, + "49401": 1, + "49410": 1, + "49413": 1, + "49414": 2, + "49416": 2, + "49418": 2, + "49421": 1, + "49422": 1, + "49423": 1, + "49425": 1, + "49429": 1, + "49437": 1, + "49438": 1, + "49440": 1, + "49441": 2, + "49442": 1, + "49446": 2, + "49449": 1, + "49450": 3, + "49452": 1, + "49453": 1, + "49455": 1, + "49460": 1, + "49462": 1, + "49467": 2, + "49469": 1, + "49471": 1, + "49473": 1, + "49476": 1, + "49480": 1, + "49481": 1, + "49484": 1, + "49485": 1, + "49486": 1, + "49487": 1, + "49492": 1, + "49494": 1, + "49495": 1, + "49496": 1, + "49499": 1, + "49503": 1, + "49505": 1, + "49506": 3, + "49507": 1, + "49511": 1, + "49516": 1, + "49520": 2, + "49522": 3, + "49524": 2, + "49525": 2, + "49526": 2, + "49527": 5, + "49528": 1, + "49530": 2, + "49532": 3, + "49533": 1, + "49534": 1, + "49535": 3, + "49536": 1, + "49537": 2, + "49538": 2, + "49539": 2, + "49540": 3, + "49541": 1, + "49542": 1, + "49543": 2, + "49544": 1, + "49545": 1, + "49546": 2, + "49547": 1, + "49548": 1, + "49551": 1, + "49552": 1, + "49557": 1, + "49558": 1, + "49559": 1, + "49575": 1, + "49576": 1, + "49581": 1, + "49590": 1, + "49598": 1, + "49605": 2, + "49609": 1, + "49611": 1, + "49620": 1, + "49622": 1, + "49624": 1, + "49639": 1, + "49642": 1, + "49643": 1, + "49644": 1, + "49666": 2, + "49668": 2, + "49673": 2, + "49678": 1, + "49681": 2, + "49683": 1, + "49686": 1, + "49688": 1, + "49691": 1, + "49695": 1, + "49696": 1, + "49697": 1, + "49698": 1, + "49699": 1, + "49706": 1, + "49710": 1, + "49712": 1, + "49719": 1, + "49720": 1, + "49721": 1, + "49722": 1, + "49728": 1, + "49729": 1, + "49731": 1, + "49733": 1, + "49734": 1, + "49737": 1, + "49739": 1, + "49742": 2, + "49746": 1, + "49750": 1, + "49751": 2, + "49753": 1, + "49756": 1, + "49761": 2, + "49762": 1, + "49765": 1, + "49769": 2, + "49770": 1, + "49771": 1, + "49772": 1, + "49775": 1, + "49776": 2, + "49782": 1, + "49783": 1, + "49785": 1, + "49798": 1, + "49799": 1, + "49800": 1, + "49801": 2, + "49807": 1, + "49808": 2, + "49809": 1, + "49810": 1, + "49813": 1, + "49814": 1, + "49820": 1, + "49823": 1, + "49825": 2, + "49828": 1, + "49830": 1, + "49831": 1, + "49833": 1, + "49836": 1, + "49844": 1, + "49867": 1, + "49870": 1, + "49887": 1, + "49895": 1, + "49906": 1, + "49909": 1, + "49913": 1, + "49929": 1, + "49933": 1, + "49946": 1, + "49961": 1, + "49962": 1, + "49981": 1, + "49982": 1, + "49984": 1, + "49988": 1, + "49994": 1, + "49999": 1, + "50000": 1, + "50001": 1, + "50005": 2, + "50010": 1, + "50011": 1, + "50012": 1, + "50013": 2, + "50014": 1, + "50015": 1, + "50017": 1, + "50030": 1, + "50041": 1, + "50045": 1, + "50047": 1, + "50048": 1, + "50052": 1, + "50053": 1, + "50075": 1, + "50077": 1, + "50082": 1, + "50088": 1, + "50092": 1, + "50093": 1, + "50096": 2, + "50102": 1, + "50105": 3, + "50106": 1, + "50118": 1, + "50127": 1, + "50139": 1, + "50145": 1, + "50146": 1, + "50149": 1, + "50152": 1, + "50155": 1, + "50161": 1, + "50163": 1, + "50168": 1, + "50171": 1, + "50180": 1, + "50184": 1, + "50186": 1, + "50191": 2, + "50194": 2, + "50200": 1, + "50201": 1, + "50202": 1, + "50207": 1, + "50210": 1, + "50212": 1, + "50219": 1, + "50220": 1, + "50223": 1, + "50224": 1, + "50241": 2, + "50249": 1, + "50258": 2, + "50261": 1, + "50266": 1, + "50268": 1, + "50273": 1, + "50276": 1, + "50278": 1, + "50284": 2, + "50286": 1, + "50291": 1, + "50293": 1, + "50296": 1, + "50298": 1, + "50302": 1, + "50315": 1, + "50317": 1, + "50322": 1, + "50323": 1, + "50324": 1, + "50326": 1, + "50328": 1, + "50335": 1, + "50338": 1, + "50342": 1, + "50343": 1, + "50347": 2, + "50348": 1, + "50349": 1, + "50350": 1, + "50351": 2, + "50354": 1, + "50355": 5, + "50356": 1, + "50358": 1, + "50359": 1, + "50361": 2, + "50363": 1, + "50364": 4, + "50365": 2, + "50366": 3, + "50367": 3, + "50368": 2, + "50370": 1, + "50372": 1, + "50373": 2, + "50374": 1, + "50375": 1, + "50376": 2, + "50377": 1, + "50378": 2, + "50379": 3, + "50381": 3, + "50382": 2, + "50383": 2, + "50384": 2, + "50386": 1, + "50389": 1, + "50390": 1, + "50392": 3, + "50393": 1, + "50394": 1, + "50396": 1, + "50397": 1, + "50398": 2, + "50399": 1, + "50400": 2, + "50401": 3, + "50402": 1, + "50403": 2, + "50404": 2, + "50406": 1, + "50407": 4, + "50408": 3, + "50410": 1, + "50411": 3, + "50412": 1, + "50414": 1, + "50418": 1, + "50419": 1, + "50420": 1, + "50422": 1, + "50425": 2, + "50427": 1, + "50428": 1, + "50429": 1, + "50430": 2, + "50434": 1, + "50436": 2, + "50441": 1, + "50444": 1, + "50449": 1, + "50450": 1, + "50451": 1, + "50453": 1, + "50460": 1, + "50463": 1, + "50464": 1, + "50466": 2, + "50470": 1, + "50474": 2, + "50476": 2, + "50479": 1, + "50480": 3, + "50483": 1, + "50484": 1, + "50487": 1, + "50488": 1, + "50497": 1, + "50508": 1, + "50513": 2, + "50514": 1, + "50519": 2, + "50521": 1, + "50522": 1, + "50523": 1, + "50525": 1, + "50529": 2, + "50530": 1, + "50531": 1, + "50532": 2, + "50537": 1, + "50539": 1, + "50540": 2, + "50541": 1, + "50544": 1, + "50545": 1, + "50546": 1, + "50548": 1, + "50549": 1, + "50550": 1, + "50554": 1, + "50557": 2, + "50560": 1, + "50561": 1, + "50562": 1, + "50563": 1, + "50564": 2, + "50565": 1, + "50570": 1, + "50573": 1, + "50574": 1, + "50576": 1, + "50580": 2, + "50581": 1, + "50585": 2, + "50586": 1, + "50587": 2, + "50588": 1, + "50589": 1, + "50592": 2, + "50593": 1, + "50594": 1, + "50595": 1, + "50599": 1, + "50602": 2, + "50607": 1, + "50608": 2, + "50609": 2, + "50610": 2, + "50611": 1, + "50612": 1, + "50618": 2, + "50620": 1, + "50621": 1, + "50623": 3, + "50626": 2, + "50628": 1, + "50632": 2, + "50640": 1, + "50641": 1, + "50648": 1, + "50650": 1, + "50651": 2, + "50652": 1, + "50656": 1, + "50657": 2, + "50658": 1, + "50661": 1, + "50665": 2, + "50669": 1, + "50678": 1, + "50679": 1, + "50682": 1, + "50683": 1, + "50684": 1, + "50686": 2, + "50692": 1, + "50696": 1, + "50698": 2, + "50708": 1, + "50712": 1, + "50714": 1, + "50718": 1, + "50719": 1, + "50721": 1, + "50722": 2, + "50725": 1, + "50727": 1, + "50731": 1, + "50733": 1, + "50734": 2, + "50735": 1, + "50736": 1, + "50740": 1, + "50748": 1, + "50753": 1, + "50756": 1, + "50757": 1, + "50761": 2, + "50764": 1, + "50765": 3, + "50766": 2, + "50769": 2, + "50770": 3, + "50772": 3, + "50773": 1, + "50775": 1, + "50778": 1, + "50779": 2, + "50781": 1, + "50784": 1, + "50785": 2, + "50787": 1, + "50788": 1, + "50789": 2, + "50790": 2, + "50792": 1, + "50796": 1, + "50798": 1, + "50799": 3, + "50800": 3, + "50801": 1, + "50806": 2, + "50808": 3, + "50809": 2, + "50810": 1, + "50811": 3, + "50812": 2, + "50814": 1, + "50815": 2, + "50816": 1, + "50817": 1, + "50818": 3, + "50819": 2, + "50825": 2, + "50826": 1, + "50829": 1, + "50835": 1, + "50836": 1, + "50839": 1, + "50840": 1, + "50852": 1, + "50853": 1, + "50856": 1, + "50857": 1, + "50859": 1, + "50860": 1, + "50864": 1, + "50866": 2, + "50868": 1, + "50869": 1, + "50870": 1, + "50876": 2, + "50877": 1, + "50882": 1, + "50884": 1, + "50886": 1, + "50892": 1, + "50893": 1, + "50896": 1, + "50897": 1, + "50900": 1, + "50905": 1, + "50909": 1, + "50917": 1, + "50918": 1, + "50919": 1, + "50925": 1, + "50927": 1, + "50932": 1, + "50933": 1, + "50937": 1, + "50939": 1, + "50940": 1, + "50943": 1, + "50945": 2, + "50953": 1, + "50958": 2, + "50960": 1, + "50963": 1, + "50964": 2, + "50972": 1, + "50973": 2, + "50974": 1, + "50977": 2, + "50978": 3, + "50979": 1, + "50980": 1, + "50982": 1, + "50983": 1, + "50987": 1, + "50988": 1, + "50989": 1, + "50991": 1, + "50992": 1, + "50995": 1, + "50999": 1, + "51000": 1, + "51001": 1, + "51002": 1, + "51007": 2, + "51010": 1, + "51011": 1, + "51017": 1, + "51018": 1, + "51021": 1, + "51022": 2, + "51028": 2, + "51033": 1, + "51034": 1, + "51035": 2, + "51039": 1, + "51040": 1, + "51045": 2, + "51046": 2, + "51048": 1, + "51049": 4, + "51050": 1, + "51052": 2, + "51053": 2, + "51055": 1, + "51056": 1, + "51059": 1, + "51060": 3, + "51061": 1, + "51062": 2, + "51063": 1, + "51064": 1, + "51066": 1, + "51067": 2, + "51068": 1, + "51069": 1, + "51073": 1, + "51075": 1, + "51079": 1, + "51080": 2, + "51085": 1, + "51087": 1, + "51088": 2, + "51090": 1, + "51092": 2, + "51093": 1, + "51096": 1, + "51097": 1, + "51099": 2, + "51101": 1, + "51104": 1, + "51106": 1, + "51107": 1, + "51110": 1, + "51113": 1, + "51114": 2, + "51117": 2, + "51119": 2, + "51126": 1, + "51127": 1, + "51128": 1, + "51129": 1, + "51132": 2, + "51134": 1, + "51140": 1, + "51153": 1, + "51369": 1 + }, + "started": "2020-09-07T18:47:01.518Z", + "trafficStats": { + "incomingCompressionRatio": 0.3824494018554688, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 50128408, + "incomingOctetsWireLevel": 50136408, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.00015959014696816223, + "outgoingCompressionRatio": 0.38521256256103514, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 50490581, + "outgoingOctetsWireLevel": 50494581, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 7.922269700164472e-05, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "49533": 1, + "49551": 1, + "49554": 1, + "49556": 1, + "49559": 1, + "49571": 1, + "49602": 1, + "49609": 1, + "49624": 1, + "49641": 1, + "49659": 1, + "49662": 1, + "49665": 1, + "49666": 1, + "49667": 1, + "49672": 1, + "49681": 3, + "49683": 1, + "49685": 1, + "49686": 1, + "49693": 2, + "49694": 2, + "49695": 1, + "49697": 1, + "49698": 1, + "49699": 2, + "49701": 1, + "49704": 2, + "49707": 1, + "49708": 1, + "49710": 3, + "49711": 1, + "49712": 1, + "49713": 1, + "49715": 1, + "49716": 3, + "49718": 2, + "49719": 1, + "49721": 1, + "49722": 2, + "49723": 2, + "49725": 1, + "49726": 2, + "49727": 1, + "49728": 1, + "49729": 2, + "49730": 1, + "49731": 3, + "49732": 2, + "49734": 3, + "49735": 3, + "49736": 1, + "49737": 1, + "49738": 1, + "49739": 3, + "49740": 2, + "49742": 3, + "49744": 1, + "49745": 2, + "49746": 2, + "49747": 5, + "49749": 2, + "49752": 1, + "49753": 4, + "49754": 1, + "49755": 2, + "49756": 2, + "49757": 1, + "49758": 3, + "49759": 2, + "49760": 3, + "49761": 2, + "49762": 2, + "49764": 2, + "49765": 3, + "49767": 1, + "49768": 2, + "49769": 1, + "49771": 4, + "49772": 1, + "49773": 1, + "49775": 2, + "49776": 1, + "49777": 1, + "49779": 3, + "49780": 4, + "49781": 1, + "49782": 1, + "49783": 1, + "49784": 2, + "49785": 3, + "49786": 2, + "49787": 2, + "49789": 2, + "49790": 2, + "49791": 2, + "49792": 3, + "49793": 1, + "49794": 4, + "49795": 1, + "49796": 1, + "49797": 2, + "49798": 4, + "49799": 2, + "49800": 3, + "49803": 2, + "49804": 3, + "49807": 1, + "49808": 2, + "49809": 1, + "49810": 1, + "49811": 1, + "49812": 1, + "49813": 2, + "49814": 1, + "49816": 2, + "49817": 1, + "49819": 1, + "49821": 1, + "49822": 1, + "49824": 1, + "49825": 1, + "49826": 3, + "49828": 1, + "49829": 1, + "49830": 1, + "49832": 1, + "49834": 1, + "49837": 1, + "49844": 2, + "49845": 1, + "49848": 1, + "49851": 1, + "49853": 1, + "49854": 3, + "49857": 1, + "49859": 1, + "49860": 1, + "49861": 1, + "49862": 1, + "49863": 1, + "49864": 1, + "49874": 1, + "49875": 1, + "49877": 1, + "49882": 1, + "49886": 1, + "49891": 1, + "49892": 1, + "49898": 1, + "49908": 1, + "49909": 2, + "49910": 1, + "49914": 1, + "49915": 1, + "49917": 1, + "49918": 1, + "49919": 1, + "49925": 1, + "49930": 2, + "49937": 1, + "49941": 2, + "49942": 1, + "49945": 1, + "49946": 1, + "49951": 1, + "49954": 1, + "49955": 1, + "49957": 1, + "49958": 2, + "49959": 1, + "49960": 1, + "49961": 1, + "49962": 1, + "49963": 1, + "49964": 4, + "49966": 1, + "49968": 2, + "49970": 2, + "49972": 3, + "49973": 2, + "49974": 1, + "49975": 2, + "49976": 1, + "49977": 3, + "49978": 3, + "49979": 2, + "49980": 2, + "49982": 1, + "49984": 1, + "49985": 2, + "49987": 2, + "49988": 2, + "49990": 2, + "49991": 1, + "49992": 1, + "49993": 1, + "49994": 2, + "49995": 1, + "49997": 1, + "50002": 2, + "50005": 2, + "50006": 1, + "50010": 1, + "50011": 1, + "50013": 1, + "50014": 1, + "50029": 1, + "50033": 1, + "50041": 1, + "50042": 1, + "50046": 1, + "50047": 1, + "50048": 1, + "50058": 1, + "50066": 1, + "50074": 1, + "50076": 1, + "50077": 1, + "50078": 2, + "50091": 1, + "50099": 1, + "50105": 1, + "50110": 1, + "50116": 1, + "50119": 1, + "50124": 1, + "50125": 1, + "50130": 1, + "50132": 1, + "50133": 2, + "50135": 1, + "50147": 1, + "50149": 1, + "50150": 1, + "50152": 2, + "50154": 1, + "50155": 1, + "50157": 1, + "50158": 2, + "50159": 2, + "50165": 1, + "50171": 3, + "50173": 1, + "50177": 1, + "50181": 1, + "50184": 1, + "50186": 1, + "50190": 1, + "50192": 1, + "50194": 1, + "50195": 1, + "50198": 1, + "50199": 1, + "50201": 1, + "50203": 1, + "50204": 1, + "50205": 1, + "50206": 1, + "50208": 1, + "50209": 1, + "50211": 1, + "50212": 1, + "50213": 1, + "50215": 2, + "50216": 2, + "50217": 1, + "50218": 1, + "50222": 1, + "50234": 2, + "50237": 1, + "50239": 1, + "50241": 2, + "50242": 2, + "50243": 1, + "50245": 1, + "50246": 1, + "50253": 1, + "50259": 1, + "50260": 1, + "50266": 1, + "50268": 1, + "50277": 1, + "50292": 1, + "50300": 1, + "50325": 1, + "50327": 1, + "50330": 2, + "50332": 1, + "50335": 1, + "50338": 2, + "50340": 2, + "50341": 1, + "50342": 1, + "50343": 1, + "50344": 1, + "50346": 2, + "50348": 1, + "50357": 1, + "50359": 1, + "50373": 1, + "50378": 1, + "50390": 2, + "50395": 1, + "50401": 1, + "50402": 1, + "50406": 1, + "50408": 1, + "50409": 1, + "50410": 1, + "50413": 1, + "50418": 2, + "50419": 1, + "50423": 1, + "50427": 1, + "50428": 1, + "50433": 1, + "50439": 1, + "50452": 1, + "50456": 1, + "50461": 1, + "50470": 1, + "50471": 1, + "50472": 1, + "50473": 1, + "50475": 1, + "50478": 1, + "50479": 1, + "50482": 1, + "50491": 1, + "50493": 1, + "50495": 1, + "50498": 1, + "50502": 1, + "50507": 1, + "50511": 1, + "50519": 1, + "50520": 1, + "50527": 2, + "50534": 1, + "50543": 2, + "50549": 1, + "50550": 1, + "50564": 2, + "50566": 1, + "50568": 1, + "50579": 1, + "50580": 1, + "50585": 1, + "50589": 1, + "50608": 1, + "50611": 1, + "50613": 1, + "50614": 1, + "50617": 1, + "50622": 2, + "50628": 1, + "50630": 1, + "50631": 1, + "50633": 1, + "50638": 1, + "50639": 1, + "50641": 1, + "50642": 1, + "50645": 1, + "50650": 1, + "50651": 2, + "50652": 1, + "50654": 2, + "50655": 1, + "50656": 1, + "50657": 3, + "50658": 1, + "50660": 1, + "50661": 2, + "50662": 1, + "50663": 3, + "50664": 2, + "50665": 1, + "50666": 3, + "50668": 1, + "50670": 2, + "50672": 3, + "50673": 1, + "50674": 3, + "50675": 4, + "50676": 3, + "50677": 1, + "50678": 1, + "50679": 4, + "50680": 1, + "50681": 2, + "50682": 1, + "50684": 1, + "50687": 3, + "50689": 4, + "50692": 2, + "50693": 1, + "50694": 1, + "50695": 2, + "50696": 1, + "50698": 1, + "50699": 1, + "50702": 3, + "50705": 2, + "50706": 1, + "50708": 1, + "50709": 1, + "50711": 2, + "50713": 2, + "50714": 3, + "50715": 1, + "50716": 2, + "50717": 2, + "50718": 1, + "50719": 4, + "50721": 1, + "50722": 3, + "50726": 2, + "50727": 2, + "50731": 1, + "50733": 1, + "50734": 1, + "50737": 1, + "50738": 2, + "50739": 1, + "50743": 1, + "50744": 2, + "50745": 1, + "50746": 1, + "50748": 2, + "50751": 1, + "50752": 1, + "50753": 1, + "50754": 1, + "50757": 1, + "50758": 3, + "50759": 1, + "50760": 1, + "50764": 1, + "50767": 1, + "50769": 1, + "50773": 1, + "50774": 1, + "50778": 1, + "50780": 2, + "50786": 1, + "50795": 2, + "50799": 1, + "50801": 2, + "50807": 1, + "50808": 1, + "50810": 3, + "50811": 1, + "50814": 1, + "50816": 1, + "50817": 1, + "50818": 1, + "50819": 1, + "50822": 1, + "50829": 1, + "50830": 2, + "50831": 1, + "50832": 1, + "50837": 2, + "50845": 2, + "50849": 1, + "50852": 1, + "50859": 1, + "50863": 1, + "50864": 1, + "50870": 1, + "50874": 1, + "50877": 1, + "50880": 1, + "50885": 1, + "50889": 2, + "50896": 1, + "50897": 1, + "50898": 1, + "50899": 2, + "50900": 2, + "50902": 2, + "50904": 1, + "50908": 1, + "50910": 1, + "50912": 1, + "50913": 1, + "50915": 1, + "50918": 2, + "50922": 2, + "50924": 1, + "50931": 2, + "50932": 2, + "50933": 1, + "50936": 1, + "50940": 2, + "50943": 1, + "50946": 2, + "50947": 1, + "50949": 2, + "50951": 1, + "50955": 1, + "50956": 2, + "50957": 1, + "50958": 1, + "50961": 1, + "50964": 1, + "50965": 1, + "50966": 2, + "50968": 1, + "50969": 1, + "50970": 1, + "50973": 2, + "50974": 2, + "50977": 1, + "50978": 1, + "50980": 3, + "50981": 2, + "50985": 1, + "50986": 1, + "50987": 1, + "50989": 1, + "50990": 3, + "50991": 1, + "50992": 1, + "50994": 2, + "50997": 3, + "50998": 1, + "50999": 2, + "51000": 2, + "51001": 1, + "51002": 1, + "51006": 2, + "51007": 1, + "51009": 1, + "51020": 1, + "51027": 1, + "51028": 1, + "51029": 1, + "51030": 1, + "51031": 1, + "51032": 1, + "51033": 2, + "51034": 2, + "51035": 1, + "51036": 1, + "51037": 2, + "51038": 1, + "51039": 4, + "51040": 1, + "51041": 1, + "51042": 2, + "51045": 2, + "51046": 4, + "51047": 1, + "51049": 1, + "51050": 1, + "51054": 1, + "51055": 1, + "51056": 1, + "51060": 1, + "51061": 1, + "51062": 2, + "51064": 1, + "51065": 3, + "51067": 2, + "51068": 1, + "51069": 1, + "51073": 1, + "51074": 1, + "51076": 2, + "51077": 1, + "51078": 4, + "51085": 3, + "51086": 3, + "51087": 1, + "51088": 2, + "51089": 1, + "51090": 2, + "51091": 1, + "51092": 2, + "51095": 2, + "51096": 1, + "51097": 1, + "51098": 2, + "51099": 1, + "51103": 1, + "51106": 2, + "51108": 1, + "51112": 1, + "51115": 1, + "51116": 1, + "51130": 1, + "51133": 1, + "51136": 2, + "51138": 1, + "51141": 1, + "51143": 2, + "51145": 2, + "51147": 1, + "51149": 1, + "51157": 1, + "51158": 1, + "51159": 1, + "51163": 1, + "51165": 1, + "51168": 1, + "51171": 1, + "51179": 1, + "51182": 1, + "51184": 2, + "51186": 1, + "51192": 2, + "51193": 1, + "51194": 1, + "51196": 1, + "51198": 1, + "51205": 1, + "51208": 1, + "51209": 1, + "51211": 1, + "51212": 1, + "51216": 1, + "51220": 1, + "51221": 1, + "51223": 2, + "51226": 2, + "51234": 1, + "51235": 1, + "51243": 1, + "51244": 2, + "51246": 2, + "51247": 1, + "51249": 4, + "51250": 2, + "51251": 1, + "51252": 1, + "51253": 1, + "51255": 2, + "51256": 1, + "51257": 1, + "51259": 2, + "51260": 1, + "51261": 1, + "51265": 1, + "51266": 1, + "51271": 1, + "51279": 1, + "51282": 1, + "51283": 1, + "51285": 1, + "51290": 1, + "51292": 2, + "51293": 1, + "51296": 1, + "51299": 1, + "51301": 1, + "51302": 1, + "51303": 1, + "51308": 1, + "51309": 1, + "51315": 1, + "51316": 2, + "51317": 1, + "51318": 2, + "51320": 1, + "51321": 1, + "51322": 4, + "51323": 1, + "51324": 1, + "51325": 1, + "51327": 1, + "51328": 1, + "51329": 2, + "51330": 3, + "51331": 2, + "51332": 1, + "51333": 1, + "51335": 1, + "51336": 1, + "51337": 1, + "51338": 1, + "51339": 1, + "51341": 1, + "51342": 1, + "51343": 1, + "51346": 1, + "51348": 2, + "51349": 1, + "51354": 1, + "51355": 1, + "51356": 1, + "51357": 3, + "51360": 1, + "51363": 1, + "51364": 1, + "51365": 1, + "51366": 1, + "51367": 1, + "51370": 1, + "51375": 1, + "51377": 1, + "51381": 1, + "51383": 2, + "51384": 1, + "51385": 1, + "51386": 1, + "51389": 1, + "51392": 1, + "51394": 1, + "51395": 2, + "51397": 1, + "51403": 2, + "51422": 1, + "51722": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333437266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888290de5ef49336" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "90de5ef4" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_3_11.html b/autobahn/client/tungstenite_case_12_3_11.html new file mode 100644 index 0000000..3aee7e5 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_11.html @@ -0,0 +1,955 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.3.11 : Pass - 1884 ms @ 2020-09-07T18:47:25.987Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=348&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 98ZjA2phZiv0aIuwXAqgzg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: oACuvrb5GBfx4ioFrBPIZM773BE=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
254212542
255712557
255912559
256412564
262212622
265512655
266712667
267012670
268412684
269112691
269812698
271912719
272512725
277625552
277912779
278612786
280212802
281612816
281812818
281912819
282912829
283512835
284112841
284212842
285712857
285812858
286012860
287512875
290212902
291212912
292312923
292712927
293312933
293512935
293925878
294112941
295512955
296312963
297212972
298325966
298612986
298838964
298925978
299112991
299212992
299612996
299712997
300226004
300313003
300526010
300639018
300713007
300813008
301026020
301226024
301313013
301526030
301613016
3017412068
3018412072
301939057
302026040
302126042
302326046
3024515120
302526050
302639078
302826056
302926058
303013030
303126062
303213032
303326066
303426068
303539105
303626072
303726074
304013040
304113041
304213042
304339129
3044412176
304526090
3046515230
304739141
304839144
304926098
305013050
305113051
305226104
305326106
3054515270
3055412220
305639168
3057515285
3058618348
305939177
3060412240
306139183
3062515310
3063618378
306426128
3065721455
3066412264
306713067
3068515340
306926138
307339219
307526150
307613076
307726154
3078618468
307926158
30801030800
308126162
308226164
3083515415
3084515420
308539255
308639258
3087618522
3088618528
3089515445
3090412360
3091618546
309239276
3093412372
309439282
3095412380
309626192
3097618582
309826196
3099412396
3100412400
3101618606
310239306
310339309
310439312
3105412420
3106412424
3107618642
310839324
310926218
3110412440
3111515555
311226224
311313113
311439342
311539345
311639348
3117412468
311839354
311913119
312026240
3121515605
312226244
312326246
312413124
312539375
312639378
312726254
312826256
312926258
313013130
313226264
313413134
313513135
313639408
313939417
3140515700
314126282
314226284
314339429
314413144
314526290
3146515730
314726294
3148412592
315026300
315113151
315339459
315426308
315526310
315613156
315739471
3158412632
315926318
316039480
316139483
316339489
316513165
316613166
316726334
316813168
316939507
317039510
317226344
317339519
317426348
317513175
317639528
317713177
317913179
318026360
318113181
318226364
318313183
318439552
318539555
318613186
318726374
318839564
318939567
319039570
3191515955
3192515960
3193412772
319413194
319513195
319626392
3197412788
319839594
319939597
320026400
320126402
320226404
3203412812
320539615
320639618
3207412828
320939627
321026420
321139633
321213212
3213412852
321439642
321513215
321613216
321739651
321939657
322013220
322139663
322226444
322313223
322426448
3225516125
322626452
322739681
322839684
322939687
323026460
323139693
3232516160
323326466
323413234
323626472
323739711
323839714
323913239
324026480
324126482
324226484
324339729
324439732
324539735
324613246
3247516235
324826496
324913249
325026500
3251619506
325226504
325313253
3254413016
325526510
325613256
3257516285
3258413032
3259413036
3260826080
326113261
3262516310
3263619578
3264516320
3265413060
326626532
3267413068
326826536
3269413076
3270413080
3272619632
3273826184
3274826192
3275722925
3276516380
3277516385
327839834
3279413116
328026560
3281413124
328226564
3283516415
328413284
3285413140
3286516430
328739861
328839864
328926578
329039870
329113291
329239876
3294413176
329526590
329626592
329726594
329839894
3299516495
330026600
330126602
3302413208
330413304
330526610
330613306
3309413236
331039930
331113311
331213312
331313313
331426628
331513315
331613316
331713317
331913319
332113321
332213322
332313323
332413324
332813328
333039990
333126662
333239996
333326666
333413334
333713337
3339310017
334413344
334626692
334813348
3349310047
335026700
3351310053
335213352
335326706
3355413420
335613356
335713357
3358310074
3359413436
336226724
3363620178
336413364
3365413460
336626732
336826736
336926738
337013370
3371413484
337213372
3373413492
337413374
337513375
3376310128
338013380
338313383
338813388
338913389
339513395
340026800
340126802
3404310212
340513405
340813408
340913409
341013410
341313413
341913419
343813438
344213442
345713457
346326926
347013470
347713477
348113481
348213482
348713487
349313493
350127002
350313503
353913539
354013540
354113541
354313543
354513545
354613546
354813548
355113551
356313563
359313593
359513595
359613596
359813598
360613606
360713607
361427228
397913979
Total10023178239
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
2612
339
4312
5840
6636
7428
8216
9654
10770
11999
12448
13452
14342
15115
16580
17351
18354
196114
207140
218168
226132
235115
247168
25375
26378
275135
284112
299261
309270
317217
325160
33266
345170
354140
363108
374148
3810380
394156
407280
418328
428336
435215
446264
457315
464184
476282
487336
496294
5011550
517357
527364
537371
545270
553165
568448
573171
585290
593177
605300
614244
626372
632126
64164
662132
683204
693207
70170
713213
724288
743222
754300
766456
77177
783234
792158
802160
816486
82182
833249
844336
854340
86186
873261
883264
893267
904360
915455
92192
934372
953285
972194
98198
992198
1001100
1012202
1027714
1031103
1043312
1055525
1071107
1083324
1091109
1104440
1116666
1122224
1142228
1154460
1162232
1174468
1183354
1192238
1201120
1212242
1224488
1243372
1253375
1266756
1274508
1315655
1323396
1335665
1341134
1356810
1361136
1385690
1393417
1417987
1422284
1434572
1443432
1452290
1462292
1475735
1482296
1493447
1501150
1512302
1525760
1533459
1541154
1555775
1563468
1572314
1581158
1594636
1606960
1612322
1623486
1632326
1643492
1656990
1662332
1672334
1683504
1695845
1701170
1714684
1721172
1732346
17461044
1753525
1772354
1782356
17961074
1801180
1811181
1824728
1833549
1844736
1851185
1861186
1874748
1881188
1901190
1915955
1923576
19361158
1945970
1953585
1961196
1973591
1984792
1994796
2014804
2021202
20351015
2043612
20561230
20661236
20761242
2082416
20951045
21051050
2114844
2121212
21381704
2141214
2154860
2161216
21761302
2181218
21991971
2204880
2213663
22291998
22361338
224143136
22571575
22692034
22781816
22892052
2292458
23071610
23161386
23292088
23351165
23451170
23571645
2364944
23792133
23861428
2394956
240102400
2412482
2423726
24361458
2444976
2454980
2463738
24751235
24881984
2494996
25041000
2513753
25261512
2531253
25461524
25561530
25641024
25741028
2582516
25971813
260119803114800
Total129823244763
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
011980
21000
81
Total12981
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333438266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882606ff56b6387
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3630366666353662
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_3_11.json b/autobahn/client/tungstenite_case_12_3_11.json new file mode 100644 index 0000000..3cd78b6 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_11.json @@ -0,0 +1,802 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 348, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 1884, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=348&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 98ZjA2phZiv0aIuwXAqgzg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: oACuvrb5GBfx4ioFrBPIZM773BE=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.3.11", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "2542": 1, + "2557": 1, + "2559": 1, + "2564": 1, + "2622": 1, + "2655": 1, + "2667": 1, + "2670": 1, + "2684": 1, + "2691": 1, + "2698": 1, + "2719": 1, + "2725": 1, + "2776": 2, + "2779": 1, + "2786": 1, + "2802": 1, + "2816": 1, + "2818": 1, + "2819": 1, + "2829": 1, + "2835": 1, + "2841": 1, + "2842": 1, + "2857": 1, + "2858": 1, + "2860": 1, + "2875": 1, + "2902": 1, + "2912": 1, + "2923": 1, + "2927": 1, + "2933": 1, + "2935": 1, + "2939": 2, + "2941": 1, + "2955": 1, + "2963": 1, + "2972": 1, + "2983": 2, + "2986": 1, + "2988": 3, + "2989": 2, + "2991": 1, + "2992": 1, + "2996": 1, + "2997": 1, + "3002": 2, + "3003": 1, + "3005": 2, + "3006": 3, + "3007": 1, + "3008": 1, + "3010": 2, + "3012": 2, + "3013": 1, + "3015": 2, + "3016": 1, + "3017": 4, + "3018": 4, + "3019": 3, + "3020": 2, + "3021": 2, + "3023": 2, + "3024": 5, + "3025": 2, + "3026": 3, + "3028": 2, + "3029": 2, + "3030": 1, + "3031": 2, + "3032": 1, + "3033": 2, + "3034": 2, + "3035": 3, + "3036": 2, + "3037": 2, + "3040": 1, + "3041": 1, + "3042": 1, + "3043": 3, + "3044": 4, + "3045": 2, + "3046": 5, + "3047": 3, + "3048": 3, + "3049": 2, + "3050": 1, + "3051": 1, + "3052": 2, + "3053": 2, + "3054": 5, + "3055": 4, + "3056": 3, + "3057": 5, + "3058": 6, + "3059": 3, + "3060": 4, + "3061": 3, + "3062": 5, + "3063": 6, + "3064": 2, + "3065": 7, + "3066": 4, + "3067": 1, + "3068": 5, + "3069": 2, + "3073": 3, + "3075": 2, + "3076": 1, + "3077": 2, + "3078": 6, + "3079": 2, + "3080": 10, + "3081": 2, + "3082": 2, + "3083": 5, + "3084": 5, + "3085": 3, + "3086": 3, + "3087": 6, + "3088": 6, + "3089": 5, + "3090": 4, + "3091": 6, + "3092": 3, + "3093": 4, + "3094": 3, + "3095": 4, + "3096": 2, + "3097": 6, + "3098": 2, + "3099": 4, + "3100": 4, + "3101": 6, + "3102": 3, + "3103": 3, + "3104": 3, + "3105": 4, + "3106": 4, + "3107": 6, + "3108": 3, + "3109": 2, + "3110": 4, + "3111": 5, + "3112": 2, + "3113": 1, + "3114": 3, + "3115": 3, + "3116": 3, + "3117": 4, + "3118": 3, + "3119": 1, + "3120": 2, + "3121": 5, + "3122": 2, + "3123": 2, + "3124": 1, + "3125": 3, + "3126": 3, + "3127": 2, + "3128": 2, + "3129": 2, + "3130": 1, + "3132": 2, + "3134": 1, + "3135": 1, + "3136": 3, + "3139": 3, + "3140": 5, + "3141": 2, + "3142": 2, + "3143": 3, + "3144": 1, + "3145": 2, + "3146": 5, + "3147": 2, + "3148": 4, + "3150": 2, + "3151": 1, + "3153": 3, + "3154": 2, + "3155": 2, + "3156": 1, + "3157": 3, + "3158": 4, + "3159": 2, + "3160": 3, + "3161": 3, + "3163": 3, + "3165": 1, + "3166": 1, + "3167": 2, + "3168": 1, + "3169": 3, + "3170": 3, + "3172": 2, + "3173": 3, + "3174": 2, + "3175": 1, + "3176": 3, + "3177": 1, + "3179": 1, + "3180": 2, + "3181": 1, + "3182": 2, + "3183": 1, + "3184": 3, + "3185": 3, + "3186": 1, + "3187": 2, + "3188": 3, + "3189": 3, + "3190": 3, + "3191": 5, + "3192": 5, + "3193": 4, + "3194": 1, + "3195": 1, + "3196": 2, + "3197": 4, + "3198": 3, + "3199": 3, + "3200": 2, + "3201": 2, + "3202": 2, + "3203": 4, + "3205": 3, + "3206": 3, + "3207": 4, + "3209": 3, + "3210": 2, + "3211": 3, + "3212": 1, + "3213": 4, + "3214": 3, + "3215": 1, + "3216": 1, + "3217": 3, + "3219": 3, + "3220": 1, + "3221": 3, + "3222": 2, + "3223": 1, + "3224": 2, + "3225": 5, + "3226": 2, + "3227": 3, + "3228": 3, + "3229": 3, + "3230": 2, + "3231": 3, + "3232": 5, + "3233": 2, + "3234": 1, + "3236": 2, + "3237": 3, + "3238": 3, + "3239": 1, + "3240": 2, + "3241": 2, + "3242": 2, + "3243": 3, + "3244": 3, + "3245": 3, + "3246": 1, + "3247": 5, + "3248": 2, + "3249": 1, + "3250": 2, + "3251": 6, + "3252": 2, + "3253": 1, + "3254": 4, + "3255": 2, + "3256": 1, + "3257": 5, + "3258": 4, + "3259": 4, + "3260": 8, + "3261": 1, + "3262": 5, + "3263": 6, + "3264": 5, + "3265": 4, + "3266": 2, + "3267": 4, + "3268": 2, + "3269": 4, + "3270": 4, + "3272": 6, + "3273": 8, + "3274": 8, + "3275": 7, + "3276": 5, + "3277": 5, + "3278": 3, + "3279": 4, + "3280": 2, + "3281": 4, + "3282": 2, + "3283": 5, + "3284": 1, + "3285": 4, + "3286": 5, + "3287": 3, + "3288": 3, + "3289": 2, + "3290": 3, + "3291": 1, + "3292": 3, + "3294": 4, + "3295": 2, + "3296": 2, + "3297": 2, + "3298": 3, + "3299": 5, + "3300": 2, + "3301": 2, + "3302": 4, + "3304": 1, + "3305": 2, + "3306": 1, + "3309": 4, + "3310": 3, + "3311": 1, + "3312": 1, + "3313": 1, + "3314": 2, + "3315": 1, + "3316": 1, + "3317": 1, + "3319": 1, + "3321": 1, + "3322": 1, + "3323": 1, + "3324": 1, + "3328": 1, + "3330": 3, + "3331": 2, + "3332": 3, + "3333": 2, + "3334": 1, + "3337": 1, + "3339": 3, + "3344": 1, + "3346": 2, + "3348": 1, + "3349": 3, + "3350": 2, + "3351": 3, + "3352": 1, + "3353": 2, + "3355": 4, + "3356": 1, + "3357": 1, + "3358": 3, + "3359": 4, + "3362": 2, + "3363": 6, + "3364": 1, + "3365": 4, + "3366": 2, + "3368": 2, + "3369": 2, + "3370": 1, + "3371": 4, + "3372": 1, + "3373": 4, + "3374": 1, + "3375": 1, + "3376": 3, + "3380": 1, + "3383": 1, + "3388": 1, + "3389": 1, + "3395": 1, + "3400": 2, + "3401": 2, + "3404": 3, + "3405": 1, + "3408": 1, + "3409": 1, + "3410": 1, + "3413": 1, + "3419": 1, + "3438": 1, + "3442": 1, + "3457": 1, + "3463": 2, + "3470": 1, + "3477": 1, + "3481": 1, + "3482": 1, + "3487": 1, + "3493": 1, + "3501": 2, + "3503": 1, + "3539": 1, + "3540": 1, + "3541": 1, + "3543": 1, + "3545": 1, + "3546": 1, + "3548": 1, + "3551": 1, + "3563": 1, + "3593": 1, + "3595": 1, + "3596": 1, + "3598": 1, + "3606": 1, + "3607": 1, + "3614": 2, + "3979": 1 + }, + "started": "2020-09-07T18:47:25.987Z", + "trafficStats": { + "incomingCompressionRatio": 0.386959716796875, + "incomingOctetsAppLevel": 8192000, + "incomingOctetsWebSocketLevel": 3169974, + "incomingOctetsWireLevel": 3177974, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.002523680004946413, + "outgoingCompressionRatio": 0.3898411865234375, + "outgoingOctetsAppLevel": 8192000, + "outgoingOctetsWebSocketLevel": 3193579, + "outgoingOctetsWireLevel": 3244507, + "outgoingWebSocketFrames": 12980, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.015946998649477594, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 11980, + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 6, + "3": 3, + "4": 3, + "5": 8, + "6": 6, + "7": 4, + "8": 2, + "9": 6, + "10": 7, + "11": 9, + "12": 4, + "13": 4, + "14": 3, + "15": 1, + "16": 5, + "17": 3, + "18": 3, + "19": 6, + "20": 7, + "21": 8, + "22": 6, + "23": 5, + "24": 7, + "25": 3, + "26": 3, + "27": 5, + "28": 4, + "29": 9, + "30": 9, + "31": 7, + "32": 5, + "33": 2, + "34": 5, + "35": 4, + "36": 3, + "37": 4, + "38": 10, + "39": 4, + "40": 7, + "41": 8, + "42": 8, + "43": 5, + "44": 6, + "45": 7, + "46": 4, + "47": 6, + "48": 7, + "49": 6, + "50": 11, + "51": 7, + "52": 7, + "53": 7, + "54": 5, + "55": 3, + "56": 8, + "57": 3, + "58": 5, + "59": 3, + "60": 5, + "61": 4, + "62": 6, + "63": 2, + "64": 1, + "66": 2, + "68": 3, + "69": 3, + "70": 1, + "71": 3, + "72": 4, + "74": 3, + "75": 4, + "76": 6, + "77": 1, + "78": 3, + "79": 2, + "80": 2, + "81": 6, + "82": 1, + "83": 3, + "84": 4, + "85": 4, + "86": 1, + "87": 3, + "88": 3, + "89": 3, + "90": 4, + "91": 5, + "92": 1, + "93": 4, + "95": 3, + "97": 2, + "98": 1, + "99": 2, + "100": 1, + "101": 2, + "102": 7, + "103": 1, + "104": 3, + "105": 5, + "107": 1, + "108": 3, + "109": 1, + "110": 4, + "111": 6, + "112": 2, + "114": 2, + "115": 4, + "116": 2, + "117": 4, + "118": 3, + "119": 2, + "120": 1, + "121": 2, + "122": 4, + "124": 3, + "125": 3, + "126": 6, + "127": 4, + "131": 5, + "132": 3, + "133": 5, + "134": 1, + "135": 6, + "136": 1, + "138": 5, + "139": 3, + "141": 7, + "142": 2, + "143": 4, + "144": 3, + "145": 2, + "146": 2, + "147": 5, + "148": 2, + "149": 3, + "150": 1, + "151": 2, + "152": 5, + "153": 3, + "154": 1, + "155": 5, + "156": 3, + "157": 2, + "158": 1, + "159": 4, + "160": 6, + "161": 2, + "162": 3, + "163": 2, + "164": 3, + "165": 6, + "166": 2, + "167": 2, + "168": 3, + "169": 5, + "170": 1, + "171": 4, + "172": 1, + "173": 2, + "174": 6, + "175": 3, + "177": 2, + "178": 2, + "179": 6, + "180": 1, + "181": 1, + "182": 4, + "183": 3, + "184": 4, + "185": 1, + "186": 1, + "187": 4, + "188": 1, + "190": 1, + "191": 5, + "192": 3, + "193": 6, + "194": 5, + "195": 3, + "196": 1, + "197": 3, + "198": 4, + "199": 4, + "201": 4, + "202": 1, + "203": 5, + "204": 3, + "205": 6, + "206": 6, + "207": 6, + "208": 2, + "209": 5, + "210": 5, + "211": 4, + "212": 1, + "213": 8, + "214": 1, + "215": 4, + "216": 1, + "217": 6, + "218": 1, + "219": 9, + "220": 4, + "221": 3, + "222": 9, + "223": 6, + "224": 14, + "225": 7, + "226": 9, + "227": 8, + "228": 9, + "229": 2, + "230": 7, + "231": 6, + "232": 9, + "233": 5, + "234": 5, + "235": 7, + "236": 4, + "237": 9, + "238": 6, + "239": 4, + "240": 10, + "241": 2, + "242": 3, + "243": 6, + "244": 4, + "245": 4, + "246": 3, + "247": 5, + "248": 8, + "249": 4, + "250": 4, + "251": 3, + "252": 6, + "253": 1, + "254": 6, + "255": 6, + "256": 4, + "257": 4, + "258": 2, + "259": 7, + "260": 11980 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333438266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882606ff56b6387" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "606ff56b" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_3_12.html b/autobahn/client/tungstenite_case_12_3_12.html new file mode 100644 index 0000000..72716f7 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_12.html @@ -0,0 +1,1111 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.3.12 : Pass - 3472 ms @ 2020-09-07T18:47:27.872Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=349&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: RMqPosmtUOsWyioLDi2bAA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: yuZDGbK23PZayFez42iUwRopIMU=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
551815518
553015530
554015540
557715577
558215582
561715617
561815618
562215622
562915629
565315653
567815678
568015680
569915699
571515715
572615726
573815738
574515745
576715767
580315803
581615816
582015820
585215852
585515855
587115871
587415874
587515875
5880211760
588115881
588215882
5884211768
588815888
589715897
5900211800
590615906
5907211814
591315913
591715917
592115921
5924211848
592615926
592915929
594415944
595115951
595615956
595715957
596215962
596315963
5965211930
596715967
5969211938
597215972
597715977
597815978
597915979
5981211962
598315983
598615986
598915989
599015990
599215992
599315993
5994211988
599515995
599815998
599915999
600016000
6002212004
600316003
600716007
600916009
601216012
601516015
601716017
6018212036
601916019
602116021
602416024
602516025
6026318078
602916029
603016030
6034318102
603516035
603616036
603816038
6039424156
604016040
604116041
6042530210
6043212086
604416044
6045318135
604616046
6047212094
6048636288
6049212098
605016050
605116051
605216052
6053212106
605616056
6057212114
6058212116
6059318177
606016060
6062212124
6063424252
606516065
6066318198
606716067
607016070
6073318219
607416074
6076318228
607916079
6081212162
608216082
6083318249
6085212170
6086318258
608716087
608816088
6089212178
609016090
6091212182
609216092
6094318282
6095212190
609616096
6097212194
609916099
6101424404
6102212204
6103212206
610416104
6105212210
6106424424
610816108
610916109
6110848880
611116111
611216112
6113424452
6114212228
611516115
6116318348
6117318351
6118212236
6119212238
612016120
6121318363
612216122
6123212246
612416124
612516125
6126212252
6127318381
6128636768
612916129
6130212260
613116131
6132530660
6133212266
6135212270
6136424544
6138530690
6139318417
6140318420
6141212282
6142318426
6144212288
6146743022
6147318441
6148318444
6149212298
615016150
615116151
6153212306
6154424616
6155212310
6156318468
6157636942
6158424632
6159212318
616016160
6161212322
6162318486
6164318492
6165424660
6166530830
6167212334
6168212336
6169318507
6170212340
6171212342
6172318516
6173212346
6174318522
617516175
6176318528
6177637062
6178212356
6179318537
618016180
618216182
618316183
6184212368
6185212370
6186318558
6188424752
618916189
6192318576
619316193
619416194
619516195
6196318588
619716197
619816198
620016200
620116201
620216202
6203212406
620416204
6207318621
6210318630
621116211
621216212
621316213
621516215
621616216
6218318654
622216222
6223212446
622416224
622616226
622716227
622916229
6233212466
623416234
6235318705
6238212476
623916239
6241212482
6242212484
624316243
624516245
624616246
6247318741
625016250
625216252
6253212506
625416254
625516255
6256425024
6257212514
6258212516
625916259
6260212520
6261212522
6262637572
626316263
6264318792
6265212530
626616266
626716267
626916269
627016270
627316273
6274318822
627516275
627616276
627716277
6278212556
6279318837
628016280
6281212562
6282212564
628416284
6285212570
628616286
6287318861
6288212576
6289212578
6290318870
6291425164
6292212584
629316293
6294212588
629516295
6296212592
6297212594
6298318894
6299425196
6300212600
6301212602
6302531510
630316303
630416304
6305212610
630616306
630716307
630916309
6310212620
631116311
631216312
6314318942
631516315
6316212632
6318425272
631916319
632016320
632216322
632416324
632616326
6328212656
633016330
633116331
633316333
633416334
633616336
633916339
634716347
6352212704
636616366
636716367
637116371
637216372
637316373
6374212748
637616376
637716377
638016380
6382319146
6383212766
6384212768
638516385
6386319158
638716387
6392212784
639416394
639816398
640016400
6402319206
640416404
640516405
640716407
6410212820
6412319236
6413212826
641416414
641516415
641616416
641816418
642116421
6422425688
642316423
6424212848
6425212850
642716427
6428319284
6429319287
643016430
6431319293
6433532165
6435319305
6436212872
643716437
6438319314
643916439
6440319320
6441319323
6443319329
6444425776
644516445
644616446
6447212894
6449319347
645016450
645116451
645216452
645316453
645416454
6455212910
6456532280
645716457
6458425832
6459212918
646016460
6461425844
646316463
646416464
6465212930
646616466
6467212934
6469319407
647016470
6472212944
6474212948
6475319425
6476319428
6477319431
6478638868
647916479
6480532400
6481212962
648216482
6483212966
6484638904
6485745395
6486638916
6487319461
6488425952
6489319467
6490212980
649116491
6492425968
6494212988
6495319485
6496532480
649816498
650016500
650116501
6503213006
650416504
650516505
650616506
650716507
6508319524
6509213018
6510213020
6512426048
6513639078
6514213028
651516515
6516319548
6517213034
6518639108
6519426076
6520532600
6521213042
652216522
652316523
652516525
652616526
652716527
652816528
6529213058
653016530
653116531
6532319596
6533213066
6534213068
653516535
6536213072
653716537
653816538
654016540
654316543
655316553
6554213108
6556213112
656516565
656616566
656716567
656816568
6571213142
657416574
6575213150
657716577
657916579
6581319743
658216582
658416584
658516585
658816588
659216592
659416594
6596213192
6597213194
6598319794
6600319800
6601213202
660216602
660316603
660416604
6605319815
660616606
660716607
660816608
660916609
6616319848
661816618
661916619
662016620
663616636
663916639
664016640
664916649
665216652
666016660
666416664
666716667
667216672
668316683
669616696
669916699
670116701
670416704
670616706
670916709
671716717
672216722
6723213446
672616726
673216732
673416734
6735213470
673716737
673916739
674516745
674616746
674816748
674916749
6753320259
675516755
675616756
675716757
675816758
676016760
676216762
676716767
676916769
678916789
679016790
679716797
679816798
6803213606
681116811
681316813
681416814
682416824
682816828
683016830
684516845
685016850
686716867
686816868
688416884
689916899
690716907
691116911
692116921
693516935
693916939
6950213900
6953213906
696016960
696816968
697116971
697216972
697916979
739017390
Total10026301904
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
236
313
4624
5315
6318
7535
8216
9327
10330
11222
12112
13452
14342
15460
16348
17468
18118
19119
20480
215105
22244
235115
24496
25375
264104
27381
284112
29129
30260
32264
334132
34134
357245
363108
375185
385190
39278
406240
413123
42284
44288
453135
464184
476282
486288
493147
505250
513153
526312
536318
547378
552110
567392
573171
587406
59159
60160
616366
629558
635315
644256
652130
665330
675335
685340
694276
705350
717497
727504
7310730
748592
757525
766456
773231
784312
7911869
803240
813243
823246
836498
846504
855425
864344
87187
884352
896534
905450
917637
923276
934372
946564
956570
963288
977679
984392
997693
1003300
1012202
1027714
1034412
1045520
1054420
1065530
1075535
1084432
1096654
1103330
1112222
1123336
1132226
1145570
1153345
1164464
1173351
1182236
1193357
1207840
1215605
1223366
1234492
1243372
1253375
1265630
1273381
1307910
1315655
1324528
1334532
1346804
1356810
1363408
1375685
1385690
139111529
1404560
1417987
1425710
1436858
1443432
14571015
1463438
14781176
1483444
1495745
1503450
1515755
1523456
1533459
1543462
1555775
1562312
15781256
1585790
1592318
1603480
1615805
1623486
1634652
16471148
1652330
1661166
1672334
1682336
1693507
1702340
1713513
17271204
1732346
1742348
17561050
1761176
1772354
1781178
1794716
1802360
18171267
18271274
1831183
1844736
1853555
1862372
1873561
1885940
1894756
1901190
1914764
1921192
1943582
1955975
1964784
1974788
1982396
19971393
20051000
2013603
2022404
2044816
20551025
2064824
2073621
20871456
2092418
2103630
21151055
21261272
2133639
2143642
2152430
2162432
2182436
21981752
22071540
22151105
2221222
2233669
22451120
22571575
22661356
22751135
2282456
2293687
2302460
23171617
2324928
2334932
2342468
23551175
23651180
2373711
2384952
23951195
2402480
24161446
2421242
24361458
2444976
2452490
24651230
2473741
2481248
2493747
2503750
2513753
2523756
2532506
2541254
2552510
25641024
2571257
2582516
2592518
260242806312800
Total252826440341
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
024280
21000
81
Total25281
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333439266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882fcc648b4ff2e
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6663633634386234
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_3_12.json b/autobahn/client/tungstenite_case_12_3_12.json new file mode 100644 index 0000000..e0eb16f --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_12.json @@ -0,0 +1,958 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 349, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 3472, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=349&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: RMqPosmtUOsWyioLDi2bAA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: yuZDGbK23PZayFez42iUwRopIMU=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.3.12", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "5518": 1, + "5530": 1, + "5540": 1, + "5577": 1, + "5582": 1, + "5617": 1, + "5618": 1, + "5622": 1, + "5629": 1, + "5653": 1, + "5678": 1, + "5680": 1, + "5699": 1, + "5715": 1, + "5726": 1, + "5738": 1, + "5745": 1, + "5767": 1, + "5803": 1, + "5816": 1, + "5820": 1, + "5852": 1, + "5855": 1, + "5871": 1, + "5874": 1, + "5875": 1, + "5880": 2, + "5881": 1, + "5882": 1, + "5884": 2, + "5888": 1, + "5897": 1, + "5900": 2, + "5906": 1, + "5907": 2, + "5913": 1, + "5917": 1, + "5921": 1, + "5924": 2, + "5926": 1, + "5929": 1, + "5944": 1, + "5951": 1, + "5956": 1, + "5957": 1, + "5962": 1, + "5963": 1, + "5965": 2, + "5967": 1, + "5969": 2, + "5972": 1, + "5977": 1, + "5978": 1, + "5979": 1, + "5981": 2, + "5983": 1, + "5986": 1, + "5989": 1, + "5990": 1, + "5992": 1, + "5993": 1, + "5994": 2, + "5995": 1, + "5998": 1, + "5999": 1, + "6000": 1, + "6002": 2, + "6003": 1, + "6007": 1, + "6009": 1, + "6012": 1, + "6015": 1, + "6017": 1, + "6018": 2, + "6019": 1, + "6021": 1, + "6024": 1, + "6025": 1, + "6026": 3, + "6029": 1, + "6030": 1, + "6034": 3, + "6035": 1, + "6036": 1, + "6038": 1, + "6039": 4, + "6040": 1, + "6041": 1, + "6042": 5, + "6043": 2, + "6044": 1, + "6045": 3, + "6046": 1, + "6047": 2, + "6048": 6, + "6049": 2, + "6050": 1, + "6051": 1, + "6052": 1, + "6053": 2, + "6056": 1, + "6057": 2, + "6058": 2, + "6059": 3, + "6060": 1, + "6062": 2, + "6063": 4, + "6065": 1, + "6066": 3, + "6067": 1, + "6070": 1, + "6073": 3, + "6074": 1, + "6076": 3, + "6079": 1, + "6081": 2, + "6082": 1, + "6083": 3, + "6085": 2, + "6086": 3, + "6087": 1, + "6088": 1, + "6089": 2, + "6090": 1, + "6091": 2, + "6092": 1, + "6094": 3, + "6095": 2, + "6096": 1, + "6097": 2, + "6099": 1, + "6101": 4, + "6102": 2, + "6103": 2, + "6104": 1, + "6105": 2, + "6106": 4, + "6108": 1, + "6109": 1, + "6110": 8, + "6111": 1, + "6112": 1, + "6113": 4, + "6114": 2, + "6115": 1, + "6116": 3, + "6117": 3, + "6118": 2, + "6119": 2, + "6120": 1, + "6121": 3, + "6122": 1, + "6123": 2, + "6124": 1, + "6125": 1, + "6126": 2, + "6127": 3, + "6128": 6, + "6129": 1, + "6130": 2, + "6131": 1, + "6132": 5, + "6133": 2, + "6135": 2, + "6136": 4, + "6138": 5, + "6139": 3, + "6140": 3, + "6141": 2, + "6142": 3, + "6144": 2, + "6146": 7, + "6147": 3, + "6148": 3, + "6149": 2, + "6150": 1, + "6151": 1, + "6153": 2, + "6154": 4, + "6155": 2, + "6156": 3, + "6157": 6, + "6158": 4, + "6159": 2, + "6160": 1, + "6161": 2, + "6162": 3, + "6164": 3, + "6165": 4, + "6166": 5, + "6167": 2, + "6168": 2, + "6169": 3, + "6170": 2, + "6171": 2, + "6172": 3, + "6173": 2, + "6174": 3, + "6175": 1, + "6176": 3, + "6177": 6, + "6178": 2, + "6179": 3, + "6180": 1, + "6182": 1, + "6183": 1, + "6184": 2, + "6185": 2, + "6186": 3, + "6188": 4, + "6189": 1, + "6192": 3, + "6193": 1, + "6194": 1, + "6195": 1, + "6196": 3, + "6197": 1, + "6198": 1, + "6200": 1, + "6201": 1, + "6202": 1, + "6203": 2, + "6204": 1, + "6207": 3, + "6210": 3, + "6211": 1, + "6212": 1, + "6213": 1, + "6215": 1, + "6216": 1, + "6218": 3, + "6222": 1, + "6223": 2, + "6224": 1, + "6226": 1, + "6227": 1, + "6229": 1, + "6233": 2, + "6234": 1, + "6235": 3, + "6238": 2, + "6239": 1, + "6241": 2, + "6242": 2, + "6243": 1, + "6245": 1, + "6246": 1, + "6247": 3, + "6250": 1, + "6252": 1, + "6253": 2, + "6254": 1, + "6255": 1, + "6256": 4, + "6257": 2, + "6258": 2, + "6259": 1, + "6260": 2, + "6261": 2, + "6262": 6, + "6263": 1, + "6264": 3, + "6265": 2, + "6266": 1, + "6267": 1, + "6269": 1, + "6270": 1, + "6273": 1, + "6274": 3, + "6275": 1, + "6276": 1, + "6277": 1, + "6278": 2, + "6279": 3, + "6280": 1, + "6281": 2, + "6282": 2, + "6284": 1, + "6285": 2, + "6286": 1, + "6287": 3, + "6288": 2, + "6289": 2, + "6290": 3, + "6291": 4, + "6292": 2, + "6293": 1, + "6294": 2, + "6295": 1, + "6296": 2, + "6297": 2, + "6298": 3, + "6299": 4, + "6300": 2, + "6301": 2, + "6302": 5, + "6303": 1, + "6304": 1, + "6305": 2, + "6306": 1, + "6307": 1, + "6309": 1, + "6310": 2, + "6311": 1, + "6312": 1, + "6314": 3, + "6315": 1, + "6316": 2, + "6318": 4, + "6319": 1, + "6320": 1, + "6322": 1, + "6324": 1, + "6326": 1, + "6328": 2, + "6330": 1, + "6331": 1, + "6333": 1, + "6334": 1, + "6336": 1, + "6339": 1, + "6347": 1, + "6352": 2, + "6366": 1, + "6367": 1, + "6371": 1, + "6372": 1, + "6373": 1, + "6374": 2, + "6376": 1, + "6377": 1, + "6380": 1, + "6382": 3, + "6383": 2, + "6384": 2, + "6385": 1, + "6386": 3, + "6387": 1, + "6392": 2, + "6394": 1, + "6398": 1, + "6400": 1, + "6402": 3, + "6404": 1, + "6405": 1, + "6407": 1, + "6410": 2, + "6412": 3, + "6413": 2, + "6414": 1, + "6415": 1, + "6416": 1, + "6418": 1, + "6421": 1, + "6422": 4, + "6423": 1, + "6424": 2, + "6425": 2, + "6427": 1, + "6428": 3, + "6429": 3, + "6430": 1, + "6431": 3, + "6433": 5, + "6435": 3, + "6436": 2, + "6437": 1, + "6438": 3, + "6439": 1, + "6440": 3, + "6441": 3, + "6443": 3, + "6444": 4, + "6445": 1, + "6446": 1, + "6447": 2, + "6449": 3, + "6450": 1, + "6451": 1, + "6452": 1, + "6453": 1, + "6454": 1, + "6455": 2, + "6456": 5, + "6457": 1, + "6458": 4, + "6459": 2, + "6460": 1, + "6461": 4, + "6463": 1, + "6464": 1, + "6465": 2, + "6466": 1, + "6467": 2, + "6469": 3, + "6470": 1, + "6472": 2, + "6474": 2, + "6475": 3, + "6476": 3, + "6477": 3, + "6478": 6, + "6479": 1, + "6480": 5, + "6481": 2, + "6482": 1, + "6483": 2, + "6484": 6, + "6485": 7, + "6486": 6, + "6487": 3, + "6488": 4, + "6489": 3, + "6490": 2, + "6491": 1, + "6492": 4, + "6494": 2, + "6495": 3, + "6496": 5, + "6498": 1, + "6500": 1, + "6501": 1, + "6503": 2, + "6504": 1, + "6505": 1, + "6506": 1, + "6507": 1, + "6508": 3, + "6509": 2, + "6510": 2, + "6512": 4, + "6513": 6, + "6514": 2, + "6515": 1, + "6516": 3, + "6517": 2, + "6518": 6, + "6519": 4, + "6520": 5, + "6521": 2, + "6522": 1, + "6523": 1, + "6525": 1, + "6526": 1, + "6527": 1, + "6528": 1, + "6529": 2, + "6530": 1, + "6531": 1, + "6532": 3, + "6533": 2, + "6534": 2, + "6535": 1, + "6536": 2, + "6537": 1, + "6538": 1, + "6540": 1, + "6543": 1, + "6553": 1, + "6554": 2, + "6556": 2, + "6565": 1, + "6566": 1, + "6567": 1, + "6568": 1, + "6571": 2, + "6574": 1, + "6575": 2, + "6577": 1, + "6579": 1, + "6581": 3, + "6582": 1, + "6584": 1, + "6585": 1, + "6588": 1, + "6592": 1, + "6594": 1, + "6596": 2, + "6597": 2, + "6598": 3, + "6600": 3, + "6601": 2, + "6602": 1, + "6603": 1, + "6604": 1, + "6605": 3, + "6606": 1, + "6607": 1, + "6608": 1, + "6609": 1, + "6616": 3, + "6618": 1, + "6619": 1, + "6620": 1, + "6636": 1, + "6639": 1, + "6640": 1, + "6649": 1, + "6652": 1, + "6660": 1, + "6664": 1, + "6667": 1, + "6672": 1, + "6683": 1, + "6696": 1, + "6699": 1, + "6701": 1, + "6704": 1, + "6706": 1, + "6709": 1, + "6717": 1, + "6722": 1, + "6723": 2, + "6726": 1, + "6732": 1, + "6734": 1, + "6735": 2, + "6737": 1, + "6739": 1, + "6745": 1, + "6746": 1, + "6748": 1, + "6749": 1, + "6753": 3, + "6755": 1, + "6756": 1, + "6757": 1, + "6758": 1, + "6760": 1, + "6762": 1, + "6767": 1, + "6769": 1, + "6789": 1, + "6790": 1, + "6797": 1, + "6798": 1, + "6803": 2, + "6811": 1, + "6813": 1, + "6814": 1, + "6824": 1, + "6828": 1, + "6830": 1, + "6845": 1, + "6850": 1, + "6867": 1, + "6868": 1, + "6884": 1, + "6899": 1, + "6907": 1, + "6911": 1, + "6921": 1, + "6935": 1, + "6939": 1, + "6950": 2, + "6953": 2, + "6960": 1, + "6968": 1, + "6971": 1, + "6972": 1, + "6979": 1, + "7390": 1 + }, + "started": "2020-09-07T18:47:27.872Z", + "trafficStats": { + "incomingCompressionRatio": 0.38413323974609376, + "incomingOctetsAppLevel": 16384000, + "incomingOctetsWebSocketLevel": 6293639, + "incomingOctetsWireLevel": 6301639, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0012711247022589, + "outgoingCompressionRatio": 0.3869624633789063, + "outgoingOctetsAppLevel": 16384000, + "outgoingOctetsWebSocketLevel": 6339993, + "outgoingOctetsWireLevel": 6440085, + "outgoingWebSocketFrames": 25280, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.015787399134352356, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 24280, + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 3, + "3": 1, + "4": 6, + "5": 3, + "6": 3, + "7": 5, + "8": 2, + "9": 3, + "10": 3, + "11": 2, + "12": 1, + "13": 4, + "14": 3, + "15": 4, + "16": 3, + "17": 4, + "18": 1, + "19": 1, + "20": 4, + "21": 5, + "22": 2, + "23": 5, + "24": 4, + "25": 3, + "26": 4, + "27": 3, + "28": 4, + "29": 1, + "30": 2, + "32": 2, + "33": 4, + "34": 1, + "35": 7, + "36": 3, + "37": 5, + "38": 5, + "39": 2, + "40": 6, + "41": 3, + "42": 2, + "44": 2, + "45": 3, + "46": 4, + "47": 6, + "48": 6, + "49": 3, + "50": 5, + "51": 3, + "52": 6, + "53": 6, + "54": 7, + "55": 2, + "56": 7, + "57": 3, + "58": 7, + "59": 1, + "60": 1, + "61": 6, + "62": 9, + "63": 5, + "64": 4, + "65": 2, + "66": 5, + "67": 5, + "68": 5, + "69": 4, + "70": 5, + "71": 7, + "72": 7, + "73": 10, + "74": 8, + "75": 7, + "76": 6, + "77": 3, + "78": 4, + "79": 11, + "80": 3, + "81": 3, + "82": 3, + "83": 6, + "84": 6, + "85": 5, + "86": 4, + "87": 1, + "88": 4, + "89": 6, + "90": 5, + "91": 7, + "92": 3, + "93": 4, + "94": 6, + "95": 6, + "96": 3, + "97": 7, + "98": 4, + "99": 7, + "100": 3, + "101": 2, + "102": 7, + "103": 4, + "104": 5, + "105": 4, + "106": 5, + "107": 5, + "108": 4, + "109": 6, + "110": 3, + "111": 2, + "112": 3, + "113": 2, + "114": 5, + "115": 3, + "116": 4, + "117": 3, + "118": 2, + "119": 3, + "120": 7, + "121": 5, + "122": 3, + "123": 4, + "124": 3, + "125": 3, + "126": 5, + "127": 3, + "130": 7, + "131": 5, + "132": 4, + "133": 4, + "134": 6, + "135": 6, + "136": 3, + "137": 5, + "138": 5, + "139": 11, + "140": 4, + "141": 7, + "142": 5, + "143": 6, + "144": 3, + "145": 7, + "146": 3, + "147": 8, + "148": 3, + "149": 5, + "150": 3, + "151": 5, + "152": 3, + "153": 3, + "154": 3, + "155": 5, + "156": 2, + "157": 8, + "158": 5, + "159": 2, + "160": 3, + "161": 5, + "162": 3, + "163": 4, + "164": 7, + "165": 2, + "166": 1, + "167": 2, + "168": 2, + "169": 3, + "170": 2, + "171": 3, + "172": 7, + "173": 2, + "174": 2, + "175": 6, + "176": 1, + "177": 2, + "178": 1, + "179": 4, + "180": 2, + "181": 7, + "182": 7, + "183": 1, + "184": 4, + "185": 3, + "186": 2, + "187": 3, + "188": 5, + "189": 4, + "190": 1, + "191": 4, + "192": 1, + "194": 3, + "195": 5, + "196": 4, + "197": 4, + "198": 2, + "199": 7, + "200": 5, + "201": 3, + "202": 2, + "204": 4, + "205": 5, + "206": 4, + "207": 3, + "208": 7, + "209": 2, + "210": 3, + "211": 5, + "212": 6, + "213": 3, + "214": 3, + "215": 2, + "216": 2, + "218": 2, + "219": 8, + "220": 7, + "221": 5, + "222": 1, + "223": 3, + "224": 5, + "225": 7, + "226": 6, + "227": 5, + "228": 2, + "229": 3, + "230": 2, + "231": 7, + "232": 4, + "233": 4, + "234": 2, + "235": 5, + "236": 5, + "237": 3, + "238": 4, + "239": 5, + "240": 2, + "241": 6, + "242": 1, + "243": 6, + "244": 4, + "245": 2, + "246": 5, + "247": 3, + "248": 1, + "249": 3, + "250": 3, + "251": 3, + "252": 3, + "253": 2, + "254": 1, + "255": 2, + "256": 4, + "257": 1, + "258": 2, + "259": 2, + "260": 24280 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333439266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882fcc648b4ff2e" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "fcc648b4" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_3_13.html b/autobahn/client/tungstenite_case_12_3_13.html new file mode 100644 index 0000000..84ed9a3 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_13.html @@ -0,0 +1,1162 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.3.13 : Pass - 6885 ms @ 2020-09-07T18:47:31.345Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=350&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 7W3T0IMcGzdshIghr6fH5g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: bCb6Y6qRI+1xZ6L03B43GlaWGE4=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
12005112005
12011112011
12014112014
12019112019
12021112021
12028112028
12032112032
12035112035
12036112036
12042112042
12043112043
12044112044
12045112045
12049112049
12053112053
12054112054
12057112057
12061112061
12063112063
12065224130
12068112068
12071112071
12074112074
12075112075
12079112079
12084112084
12086112086
12087112087
12093112093
12096112096
12097112097
12099112099
12100112100
12102112102
12105224210
12108112108
12112112112
12113224226
12116112116
12119112119
12122112122
12127112127
12128224256
12132112132
12133112133
12137112137
12140112140
12141112141
12142224284
12144224288
12145336435
12146112146
12147112147
12149112149
12152448608
12154112154
12155112155
12157112157
12159112159
12163112163
12165224330
12167224334
12171224342
12175224350
12181112181
12182112182
12183112183
12188112188
12200112200
12204112204
12208224416
12209224418
12210112210
12211112211
12213224426
12214336642
12216112216
12219112219
12220224440
12222224444
12223336669
12224112224
12225224450
12226224452
12228112228
12229112229
12230112230
12231336693
12232336696
12233112233
12234336702
12235224470
12236448944
12239224478
12240224480
12241112241
12242112242
12243112243
12244224488
12245112245
12246448984
12247224494
12248448992
12249224498
12250224500
12251336753
12252224504
12255112255
12256561280
12257673542
12258112258
12260561300
12261112261
12262224524
12263898104
12264112264
12265449060
12266224532
12267224534
12268561340
12269336807
12270336810
12271673626
12272336816
12273336819
12274112274
12275449100
12276561380
12277449108
12278449112
12279449116
12280449120
12281224562
12282224564
12283224566
12284561420
12285224570
12286112286
12287336861
12288224576
12289561445
12290561450
12291449164
12292336876
12293673758
12294786058
12295786065
12296449184
12297673782
12298561490
12299449196
12300336900
12301449204
12302449208
12303224606
12304561520
12305224610
12306336918
12307112307
12308561540
12309224618
12310449240
12311224622
12312112312
12313224626
12314112314
12315224630
12316336948
12317786219
12318449272
12319112319
12320561600
12321224642
12322449288
12323224646
12324561620
12325224650
12326224652
12327336981
12328449312
12329224658
12330224660
12331449324
12332336996
12333336999
12334112334
12335224670
12337112337
12338337014
12339224678
12340337020
12342449368
12343112343
12344224688
12345112345
12347112347
12348224696
12350449400
12351449404
12353224706
12357112357
12359112359
12360112360
12361112361
12362112362
12364112364
12365112365
12366112366
12367112367
12368112368
12371112371
12373224746
12374112374
12376224752
12382224764
12384112384
12385112385
12390112390
12402112402
12403112403
12408112408
12409112409
12410112410
12411112411
12412112412
12413112413
12414112414
12415112415
12416112416
12418224836
12419224838
12425112425
12426112426
12427112427
12430112430
12431112431
12432337296
12435112435
12436112436
12437112437
12438112438
12441337323
12442224884
12443112443
12445112445
12446112446
12448112448
12449112449
12450112450
12451112451
12455337365
12458112458
12461112461
12462112462
12465112465
12466224932
12468224936
12469112469
12470224940
12473337419
12474112474
12479112479
12481112481
12482112482
12486112486
12487224974
12492224984
12499112499
12502112502
12503225006
12504225008
12505225010
12506225012
12507112507
12508225016
12509112509
12510112510
12511112511
12513112513
12515112515
12516225032
12517225034
12520337560
12521112521
12523337569
12524112524
12525225050
12527112527
12528112528
12529112529
12530112530
12532112532
12533225066
12536112536
12537225074
12539112539
12542225084
12544112544
12546225092
12547112547
12548112548
12549225098
12550225100
12552112552
12554225108
12556225112
12559225118
12562225124
12565112565
12566112566
12568112568
12569112569
12571337713
12572112572
12573112573
12575112575
12576112576
12577225154
12578112578
12580112580
12581225162
12582112582
12583225166
12585112585
12586112586
12591112591
12594112594
12597112597
12598112598
12600225200
12601225202
12602225204
12603112603
12604112604
12607112607
12612112612
12616112616
12619112619
12624225248
12629112629
12633112633
12637112637
12638225276
12641225282
12644225288
12645112645
12648112648
12649225298
12650112650
12651337953
12652225304
12654112654
12655112655
12657112657
12658112658
12659112659
12660112660
12664112664
12665112665
12668112668
12672112672
12675112675
12676112676
12679112679
12680225360
12681225362
12682112682
12685112685
12686112686
12689112689
12698112698
12699112699
12702112702
12706112706
12707225414
12711112711
12715112715
12717112717
12719112719
12720112720
12724112724
12725112725
12726225452
12728112728
12730112730
12732112732
12733338199
12736112736
12738112738
12744112744
12746112746
12747112747
12750112750
12751112751
12753112753
12757112757
12759225518
12761112761
12770112770
12771112771
12779112779
12781225562
12783112783
12784338352
12789112789
12795112795
12798225596
12799225598
12800112800
12801112801
12802112802
12806112806
12807112807
12810112810
12811112811
12815225630
12817112817
12820112820
12823225646
12824112824
12825112825
12826225652
12829112829
12830225660
12831225662
12834112834
12836112836
12837112837
12838112838
12841225682
12844225688
12845225690
12846112846
12849112849
12852112852
12853225706
12855112855
12858338574
12859225718
12863112863
12865112865
12868112868
12869112869
12871225742
12873112873
12874112874
12875112875
12876225752
12878112878
12883112883
12884112884
12887112887
12888225776
12889225778
12890225780
12891112891
12892338676
12893112893
12894225788
12895112895
12896112896
12898112898
12899451596
12900225800
12901225802
12902338706
12904112904
12906112906
12908112908
12909112909
12910225820
12911677466
12912112912
12914112914
12915112915
12916112916
12919112919
12920112920
12922112922
12923112923
12925112925
12926112926
12928112928
12929225858
12930451720
12931112931
12936112936
12940225880
12941225882
12943112943
12944112944
12948112948
12949112949
12951112951
12954225908
12956112956
12959225918
12960112960
12962112962
12965112965
12977112977
12984112984
12988112988
12990112990
12997112997
13004113004
13017113017
13025113025
13028113028
13031226062
13032113032
13033113033
13035452140
13038226076
13039339117
13040226080
13041339123
13042113042
13043113043
13044113044
13045113045
13047226094
13065113065
13072113072
13079113079
13080113080
13085113085
13099113099
13100113100
13108113108
13110226220
13113113113
13116113116
13117113117
13132113132
13145113145
13162113162
13163113163
13164113164
13165113165
13172113172
13176113176
13184113184
13189113189
13192113192
13195113195
13198113198
13206113206
13214113214
13216113216
13220113220
13222113222
13224113224
13225113225
13226113226
13231113231
13233113233
13238113238
13239113239
13245113245
13258113258
13262113262
13272113272
13274113274
13278113278
13281113281
13289113289
13293113293
13299113299
13301339903
13303113303
13304113304
13312113312
13313113313
13314113314
13317113317
13319113319
13321226642
13323113323
13325113325
13326113326
13336226672
13337113337
13343113343
13344113344
13345113345
13348113348
13352113352
13353113353
13359113359
13360113360
13362113362
13365113365
13369113369
13370113370
13372226744
13376113376
13378113378
13380113380
13394113394
13399113399
13401113401
13409113409
13412113412
13413113413
13424113424
13428113428
13459113459
13480226960
13492113492
13496113496
13513113513
13541340623
13545113545
13551113551
14094114094
Total100212556619
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
248
326
4312
515
6318
7535
8432
9218
10440
11333
12448
13113
14342
16232
17117
18118
19476
205100
21242
225110
24124
254100
266156
27381
28256
294116
306180
31131
32132
33266
344136
353105
364144
374148
38276
39139
403120
413123
42284
433129
443132
45290
463138
474188
487336
493147
505250
516306
522104
532106
543162
552110
56156
574228
594236
603180
612122
624248
633189
644256
652130
665330
678536
687476
698552
704280
712142
723216
735365
744296
752150
764304
774308
784312
796474
807560
812162
823246
837581
844336
853255
864344
873261
885440
895445
904360
916546
925460
933279
943282
954380
968768
977679
988784
992198
1009900
1016606
1028816
1032206
1048832
1054420
1065530
1076642
1089972
1097763
1104440
111101110
1127784
11391017
1146684
1156690
1168928
1175585
11891062
1192238
1203360
1216726
1226732
1236738
1246744
1252250
1262252
1275635
1306780
1317917
132111452
1336798
1346804
1355675
1367952
1376822
1386828
1397973
1406840
1412282
142141988
14371001
1446864
14591305
1464584
1475735
1486888
1495745
1503450
15171057
1521152
1535765
1546924
1554620
1564624
1576942
1584632
15971113
1602320
1615805
1624648
1632326
1643492
16571155
1666996
1673501
1684672
1694676
1703510
17171197
1724688
1733519
1743522
1753525
1762352
1773531
1783534
1791179
1802360
1822364
1834732
1843552
1854740
1864744
1871187
1882376
1893567
1905950
1915955
1924768
1933579
1944776
1953585
1964784
1972394
1983594
19961194
20061200
2013603
20251010
20351015
20451020
2054820
2063618
2071207
2084832
2093627
2102420
21151055
2123636
2132426
2141214
2153645
2162432
2174868
2182436
2214884
2223666
2232446
2242448
22561350
2262452
22771589
2284912
2291229
2304920
2313693
2324928
23351165
2341234
2351235
2364944
2382476
2404960
2411241
2422484
2434972
2441244
2453735
2461246
24751235
2483744
2494996
2502500
25151255
2523756
2532506
25451270
25541020
25641024
2571257
2581258
2593777
2604888812710880
Total4989012839010
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
048888
21000
81
Total49889
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333530266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888233040a9e30ec
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3333303430613965
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_3_13.json b/autobahn/client/tungstenite_case_12_3_13.json new file mode 100644 index 0000000..7ae2f76 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_13.json @@ -0,0 +1,1009 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 350, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 6885, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=350&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 7W3T0IMcGzdshIghr6fH5g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: bCb6Y6qRI+1xZ6L03B43GlaWGE4=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.3.13", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "12005": 1, + "12011": 1, + "12014": 1, + "12019": 1, + "12021": 1, + "12028": 1, + "12032": 1, + "12035": 1, + "12036": 1, + "12042": 1, + "12043": 1, + "12044": 1, + "12045": 1, + "12049": 1, + "12053": 1, + "12054": 1, + "12057": 1, + "12061": 1, + "12063": 1, + "12065": 2, + "12068": 1, + "12071": 1, + "12074": 1, + "12075": 1, + "12079": 1, + "12084": 1, + "12086": 1, + "12087": 1, + "12093": 1, + "12096": 1, + "12097": 1, + "12099": 1, + "12100": 1, + "12102": 1, + "12105": 2, + "12108": 1, + "12112": 1, + "12113": 2, + "12116": 1, + "12119": 1, + "12122": 1, + "12127": 1, + "12128": 2, + "12132": 1, + "12133": 1, + "12137": 1, + "12140": 1, + "12141": 1, + "12142": 2, + "12144": 2, + "12145": 3, + "12146": 1, + "12147": 1, + "12149": 1, + "12152": 4, + "12154": 1, + "12155": 1, + "12157": 1, + "12159": 1, + "12163": 1, + "12165": 2, + "12167": 2, + "12171": 2, + "12175": 2, + "12181": 1, + "12182": 1, + "12183": 1, + "12188": 1, + "12200": 1, + "12204": 1, + "12208": 2, + "12209": 2, + "12210": 1, + "12211": 1, + "12213": 2, + "12214": 3, + "12216": 1, + "12219": 1, + "12220": 2, + "12222": 2, + "12223": 3, + "12224": 1, + "12225": 2, + "12226": 2, + "12228": 1, + "12229": 1, + "12230": 1, + "12231": 3, + "12232": 3, + "12233": 1, + "12234": 3, + "12235": 2, + "12236": 4, + "12239": 2, + "12240": 2, + "12241": 1, + "12242": 1, + "12243": 1, + "12244": 2, + "12245": 1, + "12246": 4, + "12247": 2, + "12248": 4, + "12249": 2, + "12250": 2, + "12251": 3, + "12252": 2, + "12255": 1, + "12256": 5, + "12257": 6, + "12258": 1, + "12260": 5, + "12261": 1, + "12262": 2, + "12263": 8, + "12264": 1, + "12265": 4, + "12266": 2, + "12267": 2, + "12268": 5, + "12269": 3, + "12270": 3, + "12271": 6, + "12272": 3, + "12273": 3, + "12274": 1, + "12275": 4, + "12276": 5, + "12277": 4, + "12278": 4, + "12279": 4, + "12280": 4, + "12281": 2, + "12282": 2, + "12283": 2, + "12284": 5, + "12285": 2, + "12286": 1, + "12287": 3, + "12288": 2, + "12289": 5, + "12290": 5, + "12291": 4, + "12292": 3, + "12293": 6, + "12294": 7, + "12295": 7, + "12296": 4, + "12297": 6, + "12298": 5, + "12299": 4, + "12300": 3, + "12301": 4, + "12302": 4, + "12303": 2, + "12304": 5, + "12305": 2, + "12306": 3, + "12307": 1, + "12308": 5, + "12309": 2, + "12310": 4, + "12311": 2, + "12312": 1, + "12313": 2, + "12314": 1, + "12315": 2, + "12316": 3, + "12317": 7, + "12318": 4, + "12319": 1, + "12320": 5, + "12321": 2, + "12322": 4, + "12323": 2, + "12324": 5, + "12325": 2, + "12326": 2, + "12327": 3, + "12328": 4, + "12329": 2, + "12330": 2, + "12331": 4, + "12332": 3, + "12333": 3, + "12334": 1, + "12335": 2, + "12337": 1, + "12338": 3, + "12339": 2, + "12340": 3, + "12342": 4, + "12343": 1, + "12344": 2, + "12345": 1, + "12347": 1, + "12348": 2, + "12350": 4, + "12351": 4, + "12353": 2, + "12357": 1, + "12359": 1, + "12360": 1, + "12361": 1, + "12362": 1, + "12364": 1, + "12365": 1, + "12366": 1, + "12367": 1, + "12368": 1, + "12371": 1, + "12373": 2, + "12374": 1, + "12376": 2, + "12382": 2, + "12384": 1, + "12385": 1, + "12390": 1, + "12402": 1, + "12403": 1, + "12408": 1, + "12409": 1, + "12410": 1, + "12411": 1, + "12412": 1, + "12413": 1, + "12414": 1, + "12415": 1, + "12416": 1, + "12418": 2, + "12419": 2, + "12425": 1, + "12426": 1, + "12427": 1, + "12430": 1, + "12431": 1, + "12432": 3, + "12435": 1, + "12436": 1, + "12437": 1, + "12438": 1, + "12441": 3, + "12442": 2, + "12443": 1, + "12445": 1, + "12446": 1, + "12448": 1, + "12449": 1, + "12450": 1, + "12451": 1, + "12455": 3, + "12458": 1, + "12461": 1, + "12462": 1, + "12465": 1, + "12466": 2, + "12468": 2, + "12469": 1, + "12470": 2, + "12473": 3, + "12474": 1, + "12479": 1, + "12481": 1, + "12482": 1, + "12486": 1, + "12487": 2, + "12492": 2, + "12499": 1, + "12502": 1, + "12503": 2, + "12504": 2, + "12505": 2, + "12506": 2, + "12507": 1, + "12508": 2, + "12509": 1, + "12510": 1, + "12511": 1, + "12513": 1, + "12515": 1, + "12516": 2, + "12517": 2, + "12520": 3, + "12521": 1, + "12523": 3, + "12524": 1, + "12525": 2, + "12527": 1, + "12528": 1, + "12529": 1, + "12530": 1, + "12532": 1, + "12533": 2, + "12536": 1, + "12537": 2, + "12539": 1, + "12542": 2, + "12544": 1, + "12546": 2, + "12547": 1, + "12548": 1, + "12549": 2, + "12550": 2, + "12552": 1, + "12554": 2, + "12556": 2, + "12559": 2, + "12562": 2, + "12565": 1, + "12566": 1, + "12568": 1, + "12569": 1, + "12571": 3, + "12572": 1, + "12573": 1, + "12575": 1, + "12576": 1, + "12577": 2, + "12578": 1, + "12580": 1, + "12581": 2, + "12582": 1, + "12583": 2, + "12585": 1, + "12586": 1, + "12591": 1, + "12594": 1, + "12597": 1, + "12598": 1, + "12600": 2, + "12601": 2, + "12602": 2, + "12603": 1, + "12604": 1, + "12607": 1, + "12612": 1, + "12616": 1, + "12619": 1, + "12624": 2, + "12629": 1, + "12633": 1, + "12637": 1, + "12638": 2, + "12641": 2, + "12644": 2, + "12645": 1, + "12648": 1, + "12649": 2, + "12650": 1, + "12651": 3, + "12652": 2, + "12654": 1, + "12655": 1, + "12657": 1, + "12658": 1, + "12659": 1, + "12660": 1, + "12664": 1, + "12665": 1, + "12668": 1, + "12672": 1, + "12675": 1, + "12676": 1, + "12679": 1, + "12680": 2, + "12681": 2, + "12682": 1, + "12685": 1, + "12686": 1, + "12689": 1, + "12698": 1, + "12699": 1, + "12702": 1, + "12706": 1, + "12707": 2, + "12711": 1, + "12715": 1, + "12717": 1, + "12719": 1, + "12720": 1, + "12724": 1, + "12725": 1, + "12726": 2, + "12728": 1, + "12730": 1, + "12732": 1, + "12733": 3, + "12736": 1, + "12738": 1, + "12744": 1, + "12746": 1, + "12747": 1, + "12750": 1, + "12751": 1, + "12753": 1, + "12757": 1, + "12759": 2, + "12761": 1, + "12770": 1, + "12771": 1, + "12779": 1, + "12781": 2, + "12783": 1, + "12784": 3, + "12789": 1, + "12795": 1, + "12798": 2, + "12799": 2, + "12800": 1, + "12801": 1, + "12802": 1, + "12806": 1, + "12807": 1, + "12810": 1, + "12811": 1, + "12815": 2, + "12817": 1, + "12820": 1, + "12823": 2, + "12824": 1, + "12825": 1, + "12826": 2, + "12829": 1, + "12830": 2, + "12831": 2, + "12834": 1, + "12836": 1, + "12837": 1, + "12838": 1, + "12841": 2, + "12844": 2, + "12845": 2, + "12846": 1, + "12849": 1, + "12852": 1, + "12853": 2, + "12855": 1, + "12858": 3, + "12859": 2, + "12863": 1, + "12865": 1, + "12868": 1, + "12869": 1, + "12871": 2, + "12873": 1, + "12874": 1, + "12875": 1, + "12876": 2, + "12878": 1, + "12883": 1, + "12884": 1, + "12887": 1, + "12888": 2, + "12889": 2, + "12890": 2, + "12891": 1, + "12892": 3, + "12893": 1, + "12894": 2, + "12895": 1, + "12896": 1, + "12898": 1, + "12899": 4, + "12900": 2, + "12901": 2, + "12902": 3, + "12904": 1, + "12906": 1, + "12908": 1, + "12909": 1, + "12910": 2, + "12911": 6, + "12912": 1, + "12914": 1, + "12915": 1, + "12916": 1, + "12919": 1, + "12920": 1, + "12922": 1, + "12923": 1, + "12925": 1, + "12926": 1, + "12928": 1, + "12929": 2, + "12930": 4, + "12931": 1, + "12936": 1, + "12940": 2, + "12941": 2, + "12943": 1, + "12944": 1, + "12948": 1, + "12949": 1, + "12951": 1, + "12954": 2, + "12956": 1, + "12959": 2, + "12960": 1, + "12962": 1, + "12965": 1, + "12977": 1, + "12984": 1, + "12988": 1, + "12990": 1, + "12997": 1, + "13004": 1, + "13017": 1, + "13025": 1, + "13028": 1, + "13031": 2, + "13032": 1, + "13033": 1, + "13035": 4, + "13038": 2, + "13039": 3, + "13040": 2, + "13041": 3, + "13042": 1, + "13043": 1, + "13044": 1, + "13045": 1, + "13047": 2, + "13065": 1, + "13072": 1, + "13079": 1, + "13080": 1, + "13085": 1, + "13099": 1, + "13100": 1, + "13108": 1, + "13110": 2, + "13113": 1, + "13116": 1, + "13117": 1, + "13132": 1, + "13145": 1, + "13162": 1, + "13163": 1, + "13164": 1, + "13165": 1, + "13172": 1, + "13176": 1, + "13184": 1, + "13189": 1, + "13192": 1, + "13195": 1, + "13198": 1, + "13206": 1, + "13214": 1, + "13216": 1, + "13220": 1, + "13222": 1, + "13224": 1, + "13225": 1, + "13226": 1, + "13231": 1, + "13233": 1, + "13238": 1, + "13239": 1, + "13245": 1, + "13258": 1, + "13262": 1, + "13272": 1, + "13274": 1, + "13278": 1, + "13281": 1, + "13289": 1, + "13293": 1, + "13299": 1, + "13301": 3, + "13303": 1, + "13304": 1, + "13312": 1, + "13313": 1, + "13314": 1, + "13317": 1, + "13319": 1, + "13321": 2, + "13323": 1, + "13325": 1, + "13326": 1, + "13336": 2, + "13337": 1, + "13343": 1, + "13344": 1, + "13345": 1, + "13348": 1, + "13352": 1, + "13353": 1, + "13359": 1, + "13360": 1, + "13362": 1, + "13365": 1, + "13369": 1, + "13370": 1, + "13372": 2, + "13376": 1, + "13378": 1, + "13380": 1, + "13394": 1, + "13399": 1, + "13401": 1, + "13409": 1, + "13412": 1, + "13413": 1, + "13424": 1, + "13428": 1, + "13459": 1, + "13480": 2, + "13492": 1, + "13496": 1, + "13513": 1, + "13541": 3, + "13545": 1, + "13551": 1, + "14094": 1 + }, + "started": "2020-09-07T18:47:31.345Z", + "trafficStats": { + "incomingCompressionRatio": 0.38294537353515623, + "incomingOctetsAppLevel": 32768000, + "incomingOctetsWebSocketLevel": 12548354, + "incomingOctetsWireLevel": 12556354, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0006375338151920165, + "outgoingCompressionRatio": 0.3857490234375, + "outgoingOctetsAppLevel": 32768000, + "outgoingOctetsWebSocketLevel": 12640224, + "outgoingOctetsWireLevel": 12838754, + "outgoingWebSocketFrames": 49888, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.01570620900389107, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 48888, + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 4, + "3": 2, + "4": 3, + "5": 1, + "6": 3, + "7": 5, + "8": 4, + "9": 2, + "10": 4, + "11": 3, + "12": 4, + "13": 1, + "14": 3, + "16": 2, + "17": 1, + "18": 1, + "19": 4, + "20": 5, + "21": 2, + "22": 5, + "24": 1, + "25": 4, + "26": 6, + "27": 3, + "28": 2, + "29": 4, + "30": 6, + "31": 1, + "32": 1, + "33": 2, + "34": 4, + "35": 3, + "36": 4, + "37": 4, + "38": 2, + "39": 1, + "40": 3, + "41": 3, + "42": 2, + "43": 3, + "44": 3, + "45": 2, + "46": 3, + "47": 4, + "48": 7, + "49": 3, + "50": 5, + "51": 6, + "52": 2, + "53": 2, + "54": 3, + "55": 2, + "56": 1, + "57": 4, + "59": 4, + "60": 3, + "61": 2, + "62": 4, + "63": 3, + "64": 4, + "65": 2, + "66": 5, + "67": 8, + "68": 7, + "69": 8, + "70": 4, + "71": 2, + "72": 3, + "73": 5, + "74": 4, + "75": 2, + "76": 4, + "77": 4, + "78": 4, + "79": 6, + "80": 7, + "81": 2, + "82": 3, + "83": 7, + "84": 4, + "85": 3, + "86": 4, + "87": 3, + "88": 5, + "89": 5, + "90": 4, + "91": 6, + "92": 5, + "93": 3, + "94": 3, + "95": 4, + "96": 8, + "97": 7, + "98": 8, + "99": 2, + "100": 9, + "101": 6, + "102": 8, + "103": 2, + "104": 8, + "105": 4, + "106": 5, + "107": 6, + "108": 9, + "109": 7, + "110": 4, + "111": 10, + "112": 7, + "113": 9, + "114": 6, + "115": 6, + "116": 8, + "117": 5, + "118": 9, + "119": 2, + "120": 3, + "121": 6, + "122": 6, + "123": 6, + "124": 6, + "125": 2, + "126": 2, + "127": 5, + "130": 6, + "131": 7, + "132": 11, + "133": 6, + "134": 6, + "135": 5, + "136": 7, + "137": 6, + "138": 6, + "139": 7, + "140": 6, + "141": 2, + "142": 14, + "143": 7, + "144": 6, + "145": 9, + "146": 4, + "147": 5, + "148": 6, + "149": 5, + "150": 3, + "151": 7, + "152": 1, + "153": 5, + "154": 6, + "155": 4, + "156": 4, + "157": 6, + "158": 4, + "159": 7, + "160": 2, + "161": 5, + "162": 4, + "163": 2, + "164": 3, + "165": 7, + "166": 6, + "167": 3, + "168": 4, + "169": 4, + "170": 3, + "171": 7, + "172": 4, + "173": 3, + "174": 3, + "175": 3, + "176": 2, + "177": 3, + "178": 3, + "179": 1, + "180": 2, + "182": 2, + "183": 4, + "184": 3, + "185": 4, + "186": 4, + "187": 1, + "188": 2, + "189": 3, + "190": 5, + "191": 5, + "192": 4, + "193": 3, + "194": 4, + "195": 3, + "196": 4, + "197": 2, + "198": 3, + "199": 6, + "200": 6, + "201": 3, + "202": 5, + "203": 5, + "204": 5, + "205": 4, + "206": 3, + "207": 1, + "208": 4, + "209": 3, + "210": 2, + "211": 5, + "212": 3, + "213": 2, + "214": 1, + "215": 3, + "216": 2, + "217": 4, + "218": 2, + "221": 4, + "222": 3, + "223": 2, + "224": 2, + "225": 6, + "226": 2, + "227": 7, + "228": 4, + "229": 1, + "230": 4, + "231": 3, + "232": 4, + "233": 5, + "234": 1, + "235": 1, + "236": 4, + "238": 2, + "240": 4, + "241": 1, + "242": 2, + "243": 4, + "244": 1, + "245": 3, + "246": 1, + "247": 5, + "248": 3, + "249": 4, + "250": 2, + "251": 5, + "252": 3, + "253": 2, + "254": 5, + "255": 4, + "256": 4, + "257": 1, + "258": 1, + "259": 3, + "260": 48888 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333530266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888233040a9e30ec" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "33040a9e" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_3_14.html b/autobahn/client/tungstenite_case_12_3_14.html new file mode 100644 index 0000000..cee42a4 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_14.html @@ -0,0 +1,1265 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.3.14 : Pass - 12894 ms @ 2020-09-07T18:47:38.231Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=351&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: hckmHtxXmoac0y1WDBfwGQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: KvnptG1FMPWe2NEiJLZHKs8ia6M=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
24229124229
24231124231
24240124240
24241124241
24242124242
24243248486
24244124244
24248248496
24256124256
24258248516
24262124262
24268124268
24269124269
24270124270
24282124282
24296372888
24299124299
24303124303
24306124306
24313124313
24314124314
24316124316
24318124318
24322124322
24347124347
24354124354
24371124371
24374124374
24381124381
24384124384
24389248778
24390124390
24392124392
24393248786
24394373182
24395248790
24396124396
24397248794
24398248796
24399124399
24400124400
24401248802
24402124402
24405124405
24406124406
24408124408
24409124409
24410248820
24412124412
24413124413
24415124415
24417124417
24418248836
24419248838
24420248840
24421124421
24422124422
24423373269
24424248848
24425124425
24426248852
24427248854
24428248856
24429124429
24432248864
24433124433
24434497736
24435248870
24436124436
24438124438
24439373317
24443124443
24445124445
24447124447
24449124449
24450124450
24451248902
24454248908
24455124455
24458124458
24460124460
24461124461
24462248924
24463124463
24464124464
24468248936
24470248940
24473248946
24476124476
24477373431
24480124480
24483124483
24484248968
24485248970
24486248972
24487248974
24491248982
24492124492
24493248986
24494124494
24496248992
24497248994
24499124499
24500249000
24501124501
24502124502
24503373509
24504498016
24505124505
24506373518
24507373521
245086147048
24510124510
24511124511
245125122560
24513124513
24514498056
24515124515
245165122580
24517249034
24518124518
24519373557
24521249042
24522249044
24525124525
24526124526
24527249054
24528124528
24529124529
24532249064
245335122665
24534373602
24535124535
24536249072
24539249078
245426147252
24543373629
24544124544
24545124545
24546249092
24547249094
24548249096
24549124549
24552124552
24553249106
24554124554
24555373665
24556249112
24557124557
24558249116
24562249124
24563124563
24564124564
24565124565
24566249132
24568124568
24570124570
24571124571
24572124572
24574124574
24575373725
24576124576
24579124579
24583124583
24585124585
24586124586
24589249178
24591124591
24596124596
24598124598
24604124604
24609124609
24612124612
24619124619
24624124624
24627124627
24629124629
24636124636
24641124641
24642124642
24643249286
24644124644
24645124645
24646124646
24647249294
24651124651
24656124656
24658124658
24670249340
24672124672
24676249352
24680124680
24685124685
24688124688
24690124690
24693249386
24694124694
24695374085
24701124701
24703124703
24705249410
24706374118
24710249420
24711374133
24714124714
24715124715
24716124716
24717249434
24719124719
24720249440
24723124723
24724249448
24725124725
24727124727
24729249458
24735124735
24739124739
24743124743
24745498980
24746124746
24747124747
24748124748
24749124749
24751124751
24754124754
24755124755
24759124759
24762124762
24766124766
24769124769
24772374316
24774249548
24775249550
24779124779
24780249560
24781249562
24782124782
24785124785
24790249580
24791124791
24792249584
24794124794
24796124796
24799124799
24800124800
24801124801
24802124802
24803124803
24804124804
24805124805
24806124806
24808124808
24809124809
24812124812
24813124813
24814249628
24821124821
24825124825
24826249652
24829124829
24830124830
24831124831
24832249664
24833124833
24834124834
24835124835
24837124837
24838249676
24839124839
24841249682
24843124843
24846124846
24852124852
24859124859
24860124860
24861124861
24866124866
24870249740
24871249742
24876124876
24877124877
24880124880
24881124881
24885249770
24887124887
24893124893
24896124896
24899124899
24915249830
24916124916
24917124917
24918124918
24919124919
24930124930
24936124936
24938124938
24939124939
24945124945
24947124947
24950249900
24955124955
24959124959
24963124963
24967124967
24970124970
24972374916
24973124973
24976124976
24977249954
24978249956
24984124984
24986249972
24988249976
24990124990
24995124995
24996249992
24997124997
24998124998
25000125000
25001125001
25002125002
25003125003
25004125004
25005375015
25007125007
25009250018
25011125011
25013125013
25014125014
25016125016
25018125018
25023125023
25024125024
25027125027
25028125028
25029250058
25031125031
25033250066
25035250070
25036125036
25037250074
25039250078
25040250080
25041250082
25042250084
250444100176
25047125047
25048125048
25050125050
25051250102
25052125052
25053250106
25054125054
25055250110
25056125056
25059125059
25060125060
25064250128
25065125065
25066375198
25068125068
25069125069
25071250142
25072250144
25073125073
25076250152
25079125079
25080125080
25081250162
25082250164
25083125083
25084125084
25085125085
25086125086
25087250174
25088125088
25089250178
25090125090
25091125091
25093125093
25095125095
25096250192
25101125101
25103125103
25105125105
25108125108
25112125112
25113125113
25114250228
25116125116
25118125118
25119125119
25121250242
25122125122
25125250250
25127125127
25128125128
25129125129
25131125131
25132250264
25133125133
251344100536
25135125135
25136250272
25137125137
25139125139
25140250280
25141375423
25142125142
25143125143
25144125144
25146250292
25147250294
25148125148
25152125152
25155125155
25167125167
25170125170
25179125179
25187125187
25189125189
25190125190
25191125191
25195125195
25198125198
25199125199
25202125202
25204125204
25213125213
25214125214
25216125216
25224250448
25236125236
25240125240
25241125241
25248125248
25250250500
25253125253
25261125261
25266125266
25267125267
25272125272
25276125276
25288125288
25295125295
25296125296
25299125299
25300125300
25301125301
25304125304
25310125310
25316125316
25320125320
25321125321
25324125324
25325125325
25327250654
25328125328
25330125330
25331125331
25334250668
25335125335
25340125340
25342125342
25343125343
25345125345
25346250692
25347125347
25348125348
25350125350
25351125351
25354125354
25357125357
25363376089
25365125365
25368125368
25369125369
25371125371
25373250746
25376125376
25378125378
25380125380
25384125384
25385125385
25389250778
25391125391
25393125393
25411125411
25412125412
25415125415
25419125419
25420125420
25421125421
25424250848
25426125426
25429125429
25433125433
25435250870
25444250888
25445125445
25448125448
25456250912
25461125461
25462125462
25463125463
25464250928
25465125465
25466125466
254684101872
25471250942
25472250944
25473250946
25476125476
25479125479
25481125481
25482125482
25485125485
25489125489
25490125490
25491250982
25496125496
25500125500
25504125504
25508125508
25510125510
25513125513
25519125519
25527125527
25529125529
25530125530
25540125540
25542125542
25550125550
25552125552
25553125553
25557125557
25569251138
25576125576
25578125578
25582125582
25584251168
25588125588
25589251178
25591125591
25592251184
25594125594
25596125596
25597125597
25600125600
25603125603
25605125605
25607125607
25609125609
25610251220
25613125613
25614251228
25615251230
25617125617
25618251236
25619125619
25621125621
25622125622
25623251246
25624125624
25625251250
256264102504
25629125629
25633376899
25634125634
25635125635
256364102544
25637125637
25638125638
25640251280
25641125641
25643125643
25644251288
256455128225
25646125646
25647125647
25648125648
25650125650
25651125651
25652125652
25655376965
25656251312
25658251316
25659125659
25660251320
25661125661
25663125663
25664251328
25666376998
25667125667
25668125668
25669125669
25670377010
25672251344
25673125673
25675125675
25677125677
25678125678
25679125679
25685125685
25686125686
25687125687
25688251376
25690125690
25693125693
25696125696
25697251394
25699125699
25700125700
257026154212
25704251408
25707251414
25710125710
25713125713
25714251428
25716125716
25719125719
25720125720
25721125721
25724125724
25725125725
25726251452
25727125727
25728251456
25732125732
25734125734
25736251472
25739125739
25741125741
25744125744
25746377238
25750125750
25757251514
25758125758
25764125764
25768125768
25777125777
25781125781
25784125784
25787125787
25793125793
25795251590
25797125797
25798251596
25814125814
25817125817
25821125821
25822125822
25826125826
25827125827
25838125838
25842125842
25866125866
25873125873
25881125881
25883125883
25888125888
25902125902
25921125921
25927125927
25942125942
25951125951
25960125960
25961125961
25973251946
25975125975
25993125993
25997125997
26002126002
26007126007
26008126008
26012252024
26013126013
26022126022
26024252048
26025252050
26028126028
26029126029
26031126031
26037126037
26038126038
26044126044
26045126045
260464104184
26047126047
26048126048
26056252112
26057378171
26058126058
26062126062
26063252126
26067252134
26071126071
26074126074
26077126077
26083126083
26096126096
26098126098
26106126106
26107252214
26121126121
26124126124
26133126133
26139126139
26145252290
26146126146
26151126151
26158126158
26159126159
26163126163
26170126170
26171126171
26175126175
26179126179
26838126838
Total100225075607
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
236
3412
428
5210
6318
7214
10110
11444
12112
13226
14342
15230
17234
18118
19238
20120
21121
22488
23123
24372
25375
26378
27127
28256
29129
30390
31131
32396
33266
34134
353105
37274
38276
39278
40280
413123
42284
43143
44288
453135
463138
47294
483144
505250
514204
523156
535265
543162
552110
563168
575285
58158
592118
60160
612122
63163
643192
655325
664264
673201
683204
693207
70170
715355
72172
734292
742148
754300
766456
77177
784312
793237
803240
814324
825410
833249
84184
854340
862172
878696
882176
89189
909810
915455
928736
937651
945470
954380
964384
976582
984392
994396
1004400
1016606
1025510
1035515
1042208
1051105
1067742
1074428
1086648
1094436
1104440
1115555
1127784
1133339
1143342
1154460
1167812
1172234
1181118
1204480
1215605
1223366
1236738
1246744
1257875
1266756
12791143
13081040
131101310
1322264
1335665
1343402
13581080
1362272
1376822
1387966
1396834
1406840
1415705
1421142
1433429
144101440
14581160
1464584
1475735
1485740
1495745
15091350
1514604
1523456
15371071
1546924
1552310
1566936
1575785
1586948
1594636
1606960
16191449
162101620
1632326
1646984
1655825
1664664
16781336
1683504
1691169
1703510
17161026
1721172
17371211
17481392
1753525
1765880
17771239
1781178
17961074
1804720
18181448
1825910
1835915
18461104
18581480
1863558
1874748
1885940
18971323
19071330
19171337
19271344
19361158
1945970
1955975
1965980
19761182
19871386
19971393
20071400
2013603
20251010
20391827
2043612
20571435
20691854
20751035
20871456
20961254
21051050
21161266
2122424
2132426
21471498
2153645
2161216
21771519
21861308
2192438
2204880
2213663
22251110
2231223
2244896
2253675
2264904
22792043
2282456
22971603
2304920
2314924
2321232
2332466
2342468
2352470
2371237
23851190
2391239
2404960
24151205
2424968
2431243
2442488
2454980
24661476
2471247
2481248
24951245
2502500
2513753
2522504
2533759
2541254
2551255
25661536
25741028
2582516
2592518
2609808125501060
Total9908325644606
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
098081
21000
81
Total99082
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333531266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882987ed2d59b96
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3938376564326435
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_3_14.json b/autobahn/client/tungstenite_case_12_3_14.json new file mode 100644 index 0000000..4ececab --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_14.json @@ -0,0 +1,1112 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 351, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 12894, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=351&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: hckmHtxXmoac0y1WDBfwGQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: KvnptG1FMPWe2NEiJLZHKs8ia6M=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.3.14", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "24229": 1, + "24231": 1, + "24240": 1, + "24241": 1, + "24242": 1, + "24243": 2, + "24244": 1, + "24248": 2, + "24256": 1, + "24258": 2, + "24262": 1, + "24268": 1, + "24269": 1, + "24270": 1, + "24282": 1, + "24296": 3, + "24299": 1, + "24303": 1, + "24306": 1, + "24313": 1, + "24314": 1, + "24316": 1, + "24318": 1, + "24322": 1, + "24347": 1, + "24354": 1, + "24371": 1, + "24374": 1, + "24381": 1, + "24384": 1, + "24389": 2, + "24390": 1, + "24392": 1, + "24393": 2, + "24394": 3, + "24395": 2, + "24396": 1, + "24397": 2, + "24398": 2, + "24399": 1, + "24400": 1, + "24401": 2, + "24402": 1, + "24405": 1, + "24406": 1, + "24408": 1, + "24409": 1, + "24410": 2, + "24412": 1, + "24413": 1, + "24415": 1, + "24417": 1, + "24418": 2, + "24419": 2, + "24420": 2, + "24421": 1, + "24422": 1, + "24423": 3, + "24424": 2, + "24425": 1, + "24426": 2, + "24427": 2, + "24428": 2, + "24429": 1, + "24432": 2, + "24433": 1, + "24434": 4, + "24435": 2, + "24436": 1, + "24438": 1, + "24439": 3, + "24443": 1, + "24445": 1, + "24447": 1, + "24449": 1, + "24450": 1, + "24451": 2, + "24454": 2, + "24455": 1, + "24458": 1, + "24460": 1, + "24461": 1, + "24462": 2, + "24463": 1, + "24464": 1, + "24468": 2, + "24470": 2, + "24473": 2, + "24476": 1, + "24477": 3, + "24480": 1, + "24483": 1, + "24484": 2, + "24485": 2, + "24486": 2, + "24487": 2, + "24491": 2, + "24492": 1, + "24493": 2, + "24494": 1, + "24496": 2, + "24497": 2, + "24499": 1, + "24500": 2, + "24501": 1, + "24502": 1, + "24503": 3, + "24504": 4, + "24505": 1, + "24506": 3, + "24507": 3, + "24508": 6, + "24510": 1, + "24511": 1, + "24512": 5, + "24513": 1, + "24514": 4, + "24515": 1, + "24516": 5, + "24517": 2, + "24518": 1, + "24519": 3, + "24521": 2, + "24522": 2, + "24525": 1, + "24526": 1, + "24527": 2, + "24528": 1, + "24529": 1, + "24532": 2, + "24533": 5, + "24534": 3, + "24535": 1, + "24536": 2, + "24539": 2, + "24542": 6, + "24543": 3, + "24544": 1, + "24545": 1, + "24546": 2, + "24547": 2, + "24548": 2, + "24549": 1, + "24552": 1, + "24553": 2, + "24554": 1, + "24555": 3, + "24556": 2, + "24557": 1, + "24558": 2, + "24562": 2, + "24563": 1, + "24564": 1, + "24565": 1, + "24566": 2, + "24568": 1, + "24570": 1, + "24571": 1, + "24572": 1, + "24574": 1, + "24575": 3, + "24576": 1, + "24579": 1, + "24583": 1, + "24585": 1, + "24586": 1, + "24589": 2, + "24591": 1, + "24596": 1, + "24598": 1, + "24604": 1, + "24609": 1, + "24612": 1, + "24619": 1, + "24624": 1, + "24627": 1, + "24629": 1, + "24636": 1, + "24641": 1, + "24642": 1, + "24643": 2, + "24644": 1, + "24645": 1, + "24646": 1, + "24647": 2, + "24651": 1, + "24656": 1, + "24658": 1, + "24670": 2, + "24672": 1, + "24676": 2, + "24680": 1, + "24685": 1, + "24688": 1, + "24690": 1, + "24693": 2, + "24694": 1, + "24695": 3, + "24701": 1, + "24703": 1, + "24705": 2, + "24706": 3, + "24710": 2, + "24711": 3, + "24714": 1, + "24715": 1, + "24716": 1, + "24717": 2, + "24719": 1, + "24720": 2, + "24723": 1, + "24724": 2, + "24725": 1, + "24727": 1, + "24729": 2, + "24735": 1, + "24739": 1, + "24743": 1, + "24745": 4, + "24746": 1, + "24747": 1, + "24748": 1, + "24749": 1, + "24751": 1, + "24754": 1, + "24755": 1, + "24759": 1, + "24762": 1, + "24766": 1, + "24769": 1, + "24772": 3, + "24774": 2, + "24775": 2, + "24779": 1, + "24780": 2, + "24781": 2, + "24782": 1, + "24785": 1, + "24790": 2, + "24791": 1, + "24792": 2, + "24794": 1, + "24796": 1, + "24799": 1, + "24800": 1, + "24801": 1, + "24802": 1, + "24803": 1, + "24804": 1, + "24805": 1, + "24806": 1, + "24808": 1, + "24809": 1, + "24812": 1, + "24813": 1, + "24814": 2, + "24821": 1, + "24825": 1, + "24826": 2, + "24829": 1, + "24830": 1, + "24831": 1, + "24832": 2, + "24833": 1, + "24834": 1, + "24835": 1, + "24837": 1, + "24838": 2, + "24839": 1, + "24841": 2, + "24843": 1, + "24846": 1, + "24852": 1, + "24859": 1, + "24860": 1, + "24861": 1, + "24866": 1, + "24870": 2, + "24871": 2, + "24876": 1, + "24877": 1, + "24880": 1, + "24881": 1, + "24885": 2, + "24887": 1, + "24893": 1, + "24896": 1, + "24899": 1, + "24915": 2, + "24916": 1, + "24917": 1, + "24918": 1, + "24919": 1, + "24930": 1, + "24936": 1, + "24938": 1, + "24939": 1, + "24945": 1, + "24947": 1, + "24950": 2, + "24955": 1, + "24959": 1, + "24963": 1, + "24967": 1, + "24970": 1, + "24972": 3, + "24973": 1, + "24976": 1, + "24977": 2, + "24978": 2, + "24984": 1, + "24986": 2, + "24988": 2, + "24990": 1, + "24995": 1, + "24996": 2, + "24997": 1, + "24998": 1, + "25000": 1, + "25001": 1, + "25002": 1, + "25003": 1, + "25004": 1, + "25005": 3, + "25007": 1, + "25009": 2, + "25011": 1, + "25013": 1, + "25014": 1, + "25016": 1, + "25018": 1, + "25023": 1, + "25024": 1, + "25027": 1, + "25028": 1, + "25029": 2, + "25031": 1, + "25033": 2, + "25035": 2, + "25036": 1, + "25037": 2, + "25039": 2, + "25040": 2, + "25041": 2, + "25042": 2, + "25044": 4, + "25047": 1, + "25048": 1, + "25050": 1, + "25051": 2, + "25052": 1, + "25053": 2, + "25054": 1, + "25055": 2, + "25056": 1, + "25059": 1, + "25060": 1, + "25064": 2, + "25065": 1, + "25066": 3, + "25068": 1, + "25069": 1, + "25071": 2, + "25072": 2, + "25073": 1, + "25076": 2, + "25079": 1, + "25080": 1, + "25081": 2, + "25082": 2, + "25083": 1, + "25084": 1, + "25085": 1, + "25086": 1, + "25087": 2, + "25088": 1, + "25089": 2, + "25090": 1, + "25091": 1, + "25093": 1, + "25095": 1, + "25096": 2, + "25101": 1, + "25103": 1, + "25105": 1, + "25108": 1, + "25112": 1, + "25113": 1, + "25114": 2, + "25116": 1, + "25118": 1, + "25119": 1, + "25121": 2, + "25122": 1, + "25125": 2, + "25127": 1, + "25128": 1, + "25129": 1, + "25131": 1, + "25132": 2, + "25133": 1, + "25134": 4, + "25135": 1, + "25136": 2, + "25137": 1, + "25139": 1, + "25140": 2, + "25141": 3, + "25142": 1, + "25143": 1, + "25144": 1, + "25146": 2, + "25147": 2, + "25148": 1, + "25152": 1, + "25155": 1, + "25167": 1, + "25170": 1, + "25179": 1, + "25187": 1, + "25189": 1, + "25190": 1, + "25191": 1, + "25195": 1, + "25198": 1, + "25199": 1, + "25202": 1, + "25204": 1, + "25213": 1, + "25214": 1, + "25216": 1, + "25224": 2, + "25236": 1, + "25240": 1, + "25241": 1, + "25248": 1, + "25250": 2, + "25253": 1, + "25261": 1, + "25266": 1, + "25267": 1, + "25272": 1, + "25276": 1, + "25288": 1, + "25295": 1, + "25296": 1, + "25299": 1, + "25300": 1, + "25301": 1, + "25304": 1, + "25310": 1, + "25316": 1, + "25320": 1, + "25321": 1, + "25324": 1, + "25325": 1, + "25327": 2, + "25328": 1, + "25330": 1, + "25331": 1, + "25334": 2, + "25335": 1, + "25340": 1, + "25342": 1, + "25343": 1, + "25345": 1, + "25346": 2, + "25347": 1, + "25348": 1, + "25350": 1, + "25351": 1, + "25354": 1, + "25357": 1, + "25363": 3, + "25365": 1, + "25368": 1, + "25369": 1, + "25371": 1, + "25373": 2, + "25376": 1, + "25378": 1, + "25380": 1, + "25384": 1, + "25385": 1, + "25389": 2, + "25391": 1, + "25393": 1, + "25411": 1, + "25412": 1, + "25415": 1, + "25419": 1, + "25420": 1, + "25421": 1, + "25424": 2, + "25426": 1, + "25429": 1, + "25433": 1, + "25435": 2, + "25444": 2, + "25445": 1, + "25448": 1, + "25456": 2, + "25461": 1, + "25462": 1, + "25463": 1, + "25464": 2, + "25465": 1, + "25466": 1, + "25468": 4, + "25471": 2, + "25472": 2, + "25473": 2, + "25476": 1, + "25479": 1, + "25481": 1, + "25482": 1, + "25485": 1, + "25489": 1, + "25490": 1, + "25491": 2, + "25496": 1, + "25500": 1, + "25504": 1, + "25508": 1, + "25510": 1, + "25513": 1, + "25519": 1, + "25527": 1, + "25529": 1, + "25530": 1, + "25540": 1, + "25542": 1, + "25550": 1, + "25552": 1, + "25553": 1, + "25557": 1, + "25569": 2, + "25576": 1, + "25578": 1, + "25582": 1, + "25584": 2, + "25588": 1, + "25589": 2, + "25591": 1, + "25592": 2, + "25594": 1, + "25596": 1, + "25597": 1, + "25600": 1, + "25603": 1, + "25605": 1, + "25607": 1, + "25609": 1, + "25610": 2, + "25613": 1, + "25614": 2, + "25615": 2, + "25617": 1, + "25618": 2, + "25619": 1, + "25621": 1, + "25622": 1, + "25623": 2, + "25624": 1, + "25625": 2, + "25626": 4, + "25629": 1, + "25633": 3, + "25634": 1, + "25635": 1, + "25636": 4, + "25637": 1, + "25638": 1, + "25640": 2, + "25641": 1, + "25643": 1, + "25644": 2, + "25645": 5, + "25646": 1, + "25647": 1, + "25648": 1, + "25650": 1, + "25651": 1, + "25652": 1, + "25655": 3, + "25656": 2, + "25658": 2, + "25659": 1, + "25660": 2, + "25661": 1, + "25663": 1, + "25664": 2, + "25666": 3, + "25667": 1, + "25668": 1, + "25669": 1, + "25670": 3, + "25672": 2, + "25673": 1, + "25675": 1, + "25677": 1, + "25678": 1, + "25679": 1, + "25685": 1, + "25686": 1, + "25687": 1, + "25688": 2, + "25690": 1, + "25693": 1, + "25696": 1, + "25697": 2, + "25699": 1, + "25700": 1, + "25702": 6, + "25704": 2, + "25707": 2, + "25710": 1, + "25713": 1, + "25714": 2, + "25716": 1, + "25719": 1, + "25720": 1, + "25721": 1, + "25724": 1, + "25725": 1, + "25726": 2, + "25727": 1, + "25728": 2, + "25732": 1, + "25734": 1, + "25736": 2, + "25739": 1, + "25741": 1, + "25744": 1, + "25746": 3, + "25750": 1, + "25757": 2, + "25758": 1, + "25764": 1, + "25768": 1, + "25777": 1, + "25781": 1, + "25784": 1, + "25787": 1, + "25793": 1, + "25795": 2, + "25797": 1, + "25798": 2, + "25814": 1, + "25817": 1, + "25821": 1, + "25822": 1, + "25826": 1, + "25827": 1, + "25838": 1, + "25842": 1, + "25866": 1, + "25873": 1, + "25881": 1, + "25883": 1, + "25888": 1, + "25902": 1, + "25921": 1, + "25927": 1, + "25942": 1, + "25951": 1, + "25960": 1, + "25961": 1, + "25973": 2, + "25975": 1, + "25993": 1, + "25997": 1, + "26002": 1, + "26007": 1, + "26008": 1, + "26012": 2, + "26013": 1, + "26022": 1, + "26024": 2, + "26025": 2, + "26028": 1, + "26029": 1, + "26031": 1, + "26037": 1, + "26038": 1, + "26044": 1, + "26045": 1, + "26046": 4, + "26047": 1, + "26048": 1, + "26056": 2, + "26057": 3, + "26058": 1, + "26062": 1, + "26063": 2, + "26067": 2, + "26071": 1, + "26074": 1, + "26077": 1, + "26083": 1, + "26096": 1, + "26098": 1, + "26106": 1, + "26107": 2, + "26121": 1, + "26124": 1, + "26133": 1, + "26139": 1, + "26145": 2, + "26146": 1, + "26151": 1, + "26158": 1, + "26159": 1, + "26163": 1, + "26170": 1, + "26171": 1, + "26175": 1, + "26179": 1, + "26838": 1 + }, + "started": "2020-09-07T18:47:38.231Z", + "trafficStats": { + "incomingCompressionRatio": 0.3824972839355469, + "incomingOctetsAppLevel": 65536000, + "incomingOctetsWebSocketLevel": 25067342, + "incomingOctetsWireLevel": 25075342, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0003191403380541902, + "outgoingCompressionRatio": 0.38526641845703125, + "outgoingOctetsAppLevel": 65536000, + "outgoingOctetsWebSocketLevel": 25248820, + "outgoingOctetsWireLevel": 25644350, + "outgoingWebSocketFrames": 99081, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.01566528653616288, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 98081, + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 3, + "3": 4, + "4": 2, + "5": 2, + "6": 3, + "7": 2, + "10": 1, + "11": 4, + "12": 1, + "13": 2, + "14": 3, + "15": 2, + "17": 2, + "18": 1, + "19": 2, + "20": 1, + "21": 1, + "22": 4, + "23": 1, + "24": 3, + "25": 3, + "26": 3, + "27": 1, + "28": 2, + "29": 1, + "30": 3, + "31": 1, + "32": 3, + "33": 2, + "34": 1, + "35": 3, + "37": 2, + "38": 2, + "39": 2, + "40": 2, + "41": 3, + "42": 2, + "43": 1, + "44": 2, + "45": 3, + "46": 3, + "47": 2, + "48": 3, + "50": 5, + "51": 4, + "52": 3, + "53": 5, + "54": 3, + "55": 2, + "56": 3, + "57": 5, + "58": 1, + "59": 2, + "60": 1, + "61": 2, + "63": 1, + "64": 3, + "65": 5, + "66": 4, + "67": 3, + "68": 3, + "69": 3, + "70": 1, + "71": 5, + "72": 1, + "73": 4, + "74": 2, + "75": 4, + "76": 6, + "77": 1, + "78": 4, + "79": 3, + "80": 3, + "81": 4, + "82": 5, + "83": 3, + "84": 1, + "85": 4, + "86": 2, + "87": 8, + "88": 2, + "89": 1, + "90": 9, + "91": 5, + "92": 8, + "93": 7, + "94": 5, + "95": 4, + "96": 4, + "97": 6, + "98": 4, + "99": 4, + "100": 4, + "101": 6, + "102": 5, + "103": 5, + "104": 2, + "105": 1, + "106": 7, + "107": 4, + "108": 6, + "109": 4, + "110": 4, + "111": 5, + "112": 7, + "113": 3, + "114": 3, + "115": 4, + "116": 7, + "117": 2, + "118": 1, + "120": 4, + "121": 5, + "122": 3, + "123": 6, + "124": 6, + "125": 7, + "126": 6, + "127": 9, + "130": 8, + "131": 10, + "132": 2, + "133": 5, + "134": 3, + "135": 8, + "136": 2, + "137": 6, + "138": 7, + "139": 6, + "140": 6, + "141": 5, + "142": 1, + "143": 3, + "144": 10, + "145": 8, + "146": 4, + "147": 5, + "148": 5, + "149": 5, + "150": 9, + "151": 4, + "152": 3, + "153": 7, + "154": 6, + "155": 2, + "156": 6, + "157": 5, + "158": 6, + "159": 4, + "160": 6, + "161": 9, + "162": 10, + "163": 2, + "164": 6, + "165": 5, + "166": 4, + "167": 8, + "168": 3, + "169": 1, + "170": 3, + "171": 6, + "172": 1, + "173": 7, + "174": 8, + "175": 3, + "176": 5, + "177": 7, + "178": 1, + "179": 6, + "180": 4, + "181": 8, + "182": 5, + "183": 5, + "184": 6, + "185": 8, + "186": 3, + "187": 4, + "188": 5, + "189": 7, + "190": 7, + "191": 7, + "192": 7, + "193": 6, + "194": 5, + "195": 5, + "196": 5, + "197": 6, + "198": 7, + "199": 7, + "200": 7, + "201": 3, + "202": 5, + "203": 9, + "204": 3, + "205": 7, + "206": 9, + "207": 5, + "208": 7, + "209": 6, + "210": 5, + "211": 6, + "212": 2, + "213": 2, + "214": 7, + "215": 3, + "216": 1, + "217": 7, + "218": 6, + "219": 2, + "220": 4, + "221": 3, + "222": 5, + "223": 1, + "224": 4, + "225": 3, + "226": 4, + "227": 9, + "228": 2, + "229": 7, + "230": 4, + "231": 4, + "232": 1, + "233": 2, + "234": 2, + "235": 2, + "237": 1, + "238": 5, + "239": 1, + "240": 4, + "241": 5, + "242": 4, + "243": 1, + "244": 2, + "245": 4, + "246": 6, + "247": 1, + "248": 1, + "249": 5, + "250": 2, + "251": 3, + "252": 2, + "253": 3, + "254": 1, + "255": 1, + "256": 6, + "257": 4, + "258": 2, + "259": 2, + "260": 98081 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333531266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882987ed2d59b96" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "987ed2d5" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_3_15.html b/autobahn/client/tungstenite_case_12_3_15.html new file mode 100644 index 0000000..d873479 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_15.html @@ -0,0 +1,1270 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.3.15 : Pass - 27971 ms @ 2020-09-07T18:47:51.125Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=352&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: MQmXnNDCXUwhQRGoB9z+tQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: M/B9hdpL3S2v1FwL5eEIu9QhQ0Y=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
49176149176
49194149194
49195149195
49196149196
49197298394
49199149199
49200149200
49204149204
49208149208
49213149213
49219149219
49221149221
49225149225
49229298458
49231149231
49232149232
49234149234
49235149235
49237298474
492413147723
49242149242
49245149245
49246298492
49248149248
49251149251
492524197008
49253149253
49256298512
49260149260
49261298522
492623147786
49263149263
492654197060
492673147801
49268149268
492714197084
49272149272
49273298546
49274298548
49275149275
49276149276
49277298554
49278298556
49279149279
49280298560
49281149281
492823147846
49283149283
492843147852
49285298570
492864197144
49288149288
49289298578
49292298584
49293149293
49294149294
492953147885
49296149296
49297149297
49299298598
49301149301
493025246510
49303298606
49305149305
49306149306
49307149307
49308298616
49309298618
49311149311
49312298624
493133147939
493143147942
49315149315
49318298636
49319149319
49320298640
49321298642
49322149322
49323149323
49324149324
49325298650
493274197308
49329298658
493303147990
49331298662
49332149332
493333147999
49334149334
49335298670
49336298672
493373148011
493394197356
49340298680
49341298682
49342149342
49344149344
49345298690
49346149346
49347149347
49348149348
49349149349
49351149351
493524197408
49354149354
49355149355
49356149356
49357149357
49359149359
49367149367
49368149368
493693148107
49371149371
49374149374
49380149380
49381149381
493874197548
49389149389
49390149390
49392149392
49395149395
49396298792
49399149399
49401149401
49410149410
49413149413
49414298828
49416298832
49418298836
49421149421
49422149422
49423149423
49425149425
49429149429
49437149437
49438149438
49440149440
49441298882
49442149442
49446298892
49449149449
494503148350
49452149452
49453149453
49455149455
49460149460
49462149462
49467298934
49469149469
49471149471
49473149473
49476149476
49480149480
49481149481
49484149484
49485149485
49486149486
49487149487
49492149492
49494149494
49495149495
49496149496
49499149499
49503149503
49505149505
495063148518
49507149507
49511149511
49516149516
49520299040
495223148566
49524299048
49525299050
49526299052
495275247635
49528149528
49530299060
495323148596
49533149533
49534149534
495353148605
49536149536
49537299074
49538299076
49539299078
495403148620
49541149541
49542149542
49543299086
49544149544
49545149545
49546299092
49547149547
49548149548
49551149551
49552149552
49557149557
49558149558
49559149559
49575149575
49576149576
49581149581
49590149590
49598149598
49605299210
49609149609
49611149611
49620149620
49622149622
49624149624
49639149639
49642149642
49643149643
49644149644
49666299332
49668299336
49673299346
49678149678
49681299362
49683149683
49686149686
49688149688
49691149691
49695149695
49696149696
49697149697
49698149698
49699149699
49706149706
49710149710
49712149712
49719149719
49720149720
49721149721
49722149722
49728149728
49729149729
49731149731
49733149733
49734149734
49737149737
49739149739
49742299484
49746149746
49750149750
49751299502
49753149753
49756149756
49761299522
49762149762
49765149765
49769299538
49770149770
49771149771
49772149772
49775149775
49776299552
49782149782
49783149783
49785149785
49798149798
49799149799
49800149800
49801299602
49807149807
49808299616
49809149809
49810149810
49813149813
49814149814
49820149820
49823149823
49825299650
49828149828
49830149830
49831149831
49833149833
49836149836
49844149844
49867149867
49870149870
49887149887
49895149895
49906149906
49909149909
49913149913
49929149929
49933149933
49946149946
49961149961
49962149962
49981149981
49982149982
49984149984
49988149988
49994149994
49999149999
50000150000
50001150001
500052100010
50010150010
50011150011
50012150012
500132100026
50014150014
50015150015
50017150017
50030150030
50041150041
50045150045
50047150047
50048150048
50052150052
50053150053
50075150075
50077150077
50082150082
50088150088
50092150092
50093150093
500962100192
50102150102
501053150315
50106150106
50118150118
50127150127
50139150139
50145150145
50146150146
50149150149
50152150152
50155150155
50161150161
50163150163
50168150168
50171150171
50180150180
50184150184
50186150186
501912100382
501942100388
50200150200
50201150201
50202150202
50207150207
50210150210
50212150212
50219150219
50220150220
50223150223
50224150224
502412100482
50249150249
502582100516
50261150261
50266150266
50268150268
50273150273
50276150276
50278150278
502842100568
50286150286
50291150291
50293150293
50296150296
50298150298
50302150302
50315150315
50317150317
50322150322
50323150323
50324150324
50326150326
50328150328
50335150335
50338150338
50342150342
50343150343
503472100694
50348150348
50349150349
50350150350
503512100702
50354150354
503555251775
50356150356
50358150358
50359150359
503612100722
50363150363
503644201456
503652100730
503663151098
503673151101
503682100736
50370150370
50372150372
503732100746
50374150374
50375150375
503762100752
50377150377
503782100756
503793151137
503813151143
503822100764
503832100766
503842100768
50386150386
50389150389
50390150390
503923151176
50393150393
50394150394
50396150396
50397150397
503982100796
50399150399
504002100800
504013151203
50402150402
504032100806
504042100808
50406150406
504074201628
504083151224
50410150410
504113151233
50412150412
50414150414
50418150418
50419150419
50420150420
50422150422
504252100850
50427150427
50428150428
50429150429
504302100860
50434150434
504362100872
50441150441
50444150444
50449150449
50450150450
50451150451
50453150453
50460150460
50463150463
50464150464
504662100932
50470150470
504742100948
504762100952
50479150479
504803151440
50483150483
50484150484
50487150487
50488150488
50497150497
50508150508
505132101026
50514150514
505192101038
50521150521
50522150522
50523150523
50525150525
505292101058
50530150530
50531150531
505322101064
50537150537
50539150539
505402101080
50541150541
50544150544
50545150545
50546150546
50548150548
50549150549
50550150550
50554150554
505572101114
50560150560
50561150561
50562150562
50563150563
505642101128
50565150565
50570150570
50573150573
50574150574
50576150576
505802101160
50581150581
505852101170
50586150586
505872101174
50588150588
50589150589
505922101184
50593150593
50594150594
50595150595
50599150599
506022101204
50607150607
506082101216
506092101218
506102101220
50611150611
50612150612
506182101236
50620150620
50621150621
506233151869
506262101252
50628150628
506322101264
50640150640
50641150641
50648150648
50650150650
506512101302
50652150652
50656150656
506572101314
50658150658
50661150661
506652101330
50669150669
50678150678
50679150679
50682150682
50683150683
50684150684
506862101372
50692150692
50696150696
506982101396
50708150708
50712150712
50714150714
50718150718
50719150719
50721150721
507222101444
50725150725
50727150727
50731150731
50733150733
507342101468
50735150735
50736150736
50740150740
50748150748
50753150753
50756150756
50757150757
507612101522
50764150764
507653152295
507662101532
507692101538
507703152310
507723152316
50773150773
50775150775
50778150778
507792101558
50781150781
50784150784
507852101570
50787150787
50788150788
507892101578
507902101580
50792150792
50796150796
50798150798
507993152397
508003152400
50801150801
508062101612
508083152424
508092101618
50810150810
508113152433
508122101624
50814150814
508152101630
50816150816
50817150817
508183152454
508192101638
508252101650
50826150826
50829150829
50835150835
50836150836
50839150839
50840150840
50852150852
50853150853
50856150856
50857150857
50859150859
50860150860
50864150864
508662101732
50868150868
50869150869
50870150870
508762101752
50877150877
50882150882
50884150884
50886150886
50892150892
50893150893
50896150896
50897150897
50900150900
50905150905
50909150909
50917150917
50918150918
50919150919
50925150925
50927150927
50932150932
50933150933
50937150937
50939150939
50940150940
50943150943
509452101890
50953150953
509582101916
50960150960
50963150963
509642101928
50972150972
509732101946
50974150974
509772101954
509783152934
50979150979
50980150980
50982150982
50983150983
50987150987
50988150988
50989150989
50991150991
50992150992
50995150995
50999150999
51000151000
51001151001
51002151002
510072102014
51010151010
51011151011
51017151017
51018151018
51021151021
510222102044
510282102056
51033151033
51034151034
510352102070
51039151039
51040151040
510452102090
510462102092
51048151048
510494204196
51050151050
510522102104
510532102106
51055151055
51056151056
51059151059
510603153180
51061151061
510622102124
51063151063
51064151064
51066151066
510672102134
51068151068
51069151069
51073151073
51075151075
51079151079
510802102160
51085151085
51087151087
510882102176
51090151090
510922102184
51093151093
51096151096
51097151097
510992102198
51101151101
51104151104
51106151106
51107151107
51110151110
51113151113
511142102228
511172102234
511192102238
51126151126
51127151127
51128151128
51129151129
511322102264
51134151134
51140151140
51153151153
51369151369
Total100250136673
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
224
3618
428
5420
6424
717
8540
9327
10330
11111
12560
14228
157105
16232
17234
18472
196114
205100
215105
22244
235115
247168
25250
26378
278216
286168
296174
30130
314124
327224
335165
344136
355175
365180
376222
386228
394156
403120
416246
427294
43286
4412528
454180
464184
476282
489432
493147
507350
516306
524208
538424
546324
557385
569504
577399
585290
594236
605300
615305
623186
639567
646384
656390
664264
672134
6810680
696414
703210
712142
723216
735365
744296
752150
763228
773231
78178
793237
805400
818648
822164
837581
843252
852170
863258
876522
887616
894356
908720
915455
925460
938744
945470
953285
965480
97197
982196
997693
1006600
1013303
1022204
1032206
1041104
1056630
1062212
1073321
1081108
1096654
1102220
1114444
1134452
1148912
1154460
1166696
1172234
1185590
1198952
120101200
1216726
1223366
1235615
1244496
1254500
1266756
1275635
13091170
1314524
1326792
1334532
134101340
1353405
1365680
1371137
1382276
1393417
1403420
1415705
1426852
1435715
1445720
1452290
1466876
1473441
14871036
1496894
1501150
1514604
1523456
1533459
1546924
1553465
1563468
15781256
1583474
1592318
1602320
1612322
16271134
1632326
1646984
1653495
1663498
1672334
1683504
1704680
1713513
1722344
1731173
1752350
1762352
1771177
1792358
1802360
1814724
1822364
1833549
1842368
1853555
1863558
1871187
1894756
19061140
1924768
1931193
1943582
1953585
1963588
1975985
1982396
1995995
2001200
20161206
2021202
2033609
2041204
2052410
2061206
2071207
2081208
2092418
2104840
2113633
2123636
21351065
21451070
2152430
2162432
2182436
2194876
2202440
2211221
22251110
2231223
2243672
22551125
2262452
2274908
2282456
2293687
23051150
2313693
23251160
2333699
23481872
2352470
2362472
2372474
23851190
2392478
24051200
2411241
24261452
24371701
24461464
24551225
2462492
24751235
2484992
2493747
2503750
25161506
25261512
2532506
2543762
25551275
25771799
2583774
2592518
26019677251160720
Total19777451280781
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
0196772
21000
81
Total197773
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333532266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882bf09ea91bce1
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6266303965613931
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_3_15.json b/autobahn/client/tungstenite_case_12_3_15.json new file mode 100644 index 0000000..6de9299 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_15.json @@ -0,0 +1,1117 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 352, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 27971, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=352&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: MQmXnNDCXUwhQRGoB9z+tQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: M/B9hdpL3S2v1FwL5eEIu9QhQ0Y=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.3.15", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "49176": 1, + "49194": 1, + "49195": 1, + "49196": 1, + "49197": 2, + "49199": 1, + "49200": 1, + "49204": 1, + "49208": 1, + "49213": 1, + "49219": 1, + "49221": 1, + "49225": 1, + "49229": 2, + "49231": 1, + "49232": 1, + "49234": 1, + "49235": 1, + "49237": 2, + "49241": 3, + "49242": 1, + "49245": 1, + "49246": 2, + "49248": 1, + "49251": 1, + "49252": 4, + "49253": 1, + "49256": 2, + "49260": 1, + "49261": 2, + "49262": 3, + "49263": 1, + "49265": 4, + "49267": 3, + "49268": 1, + "49271": 4, + "49272": 1, + "49273": 2, + "49274": 2, + "49275": 1, + "49276": 1, + "49277": 2, + "49278": 2, + "49279": 1, + "49280": 2, + "49281": 1, + "49282": 3, + "49283": 1, + "49284": 3, + "49285": 2, + "49286": 4, + "49288": 1, + "49289": 2, + "49292": 2, + "49293": 1, + "49294": 1, + "49295": 3, + "49296": 1, + "49297": 1, + "49299": 2, + "49301": 1, + "49302": 5, + "49303": 2, + "49305": 1, + "49306": 1, + "49307": 1, + "49308": 2, + "49309": 2, + "49311": 1, + "49312": 2, + "49313": 3, + "49314": 3, + "49315": 1, + "49318": 2, + "49319": 1, + "49320": 2, + "49321": 2, + "49322": 1, + "49323": 1, + "49324": 1, + "49325": 2, + "49327": 4, + "49329": 2, + "49330": 3, + "49331": 2, + "49332": 1, + "49333": 3, + "49334": 1, + "49335": 2, + "49336": 2, + "49337": 3, + "49339": 4, + "49340": 2, + "49341": 2, + "49342": 1, + "49344": 1, + "49345": 2, + "49346": 1, + "49347": 1, + "49348": 1, + "49349": 1, + "49351": 1, + "49352": 4, + "49354": 1, + "49355": 1, + "49356": 1, + "49357": 1, + "49359": 1, + "49367": 1, + "49368": 1, + "49369": 3, + "49371": 1, + "49374": 1, + "49380": 1, + "49381": 1, + "49387": 4, + "49389": 1, + "49390": 1, + "49392": 1, + "49395": 1, + "49396": 2, + "49399": 1, + "49401": 1, + "49410": 1, + "49413": 1, + "49414": 2, + "49416": 2, + "49418": 2, + "49421": 1, + "49422": 1, + "49423": 1, + "49425": 1, + "49429": 1, + "49437": 1, + "49438": 1, + "49440": 1, + "49441": 2, + "49442": 1, + "49446": 2, + "49449": 1, + "49450": 3, + "49452": 1, + "49453": 1, + "49455": 1, + "49460": 1, + "49462": 1, + "49467": 2, + "49469": 1, + "49471": 1, + "49473": 1, + "49476": 1, + "49480": 1, + "49481": 1, + "49484": 1, + "49485": 1, + "49486": 1, + "49487": 1, + "49492": 1, + "49494": 1, + "49495": 1, + "49496": 1, + "49499": 1, + "49503": 1, + "49505": 1, + "49506": 3, + "49507": 1, + "49511": 1, + "49516": 1, + "49520": 2, + "49522": 3, + "49524": 2, + "49525": 2, + "49526": 2, + "49527": 5, + "49528": 1, + "49530": 2, + "49532": 3, + "49533": 1, + "49534": 1, + "49535": 3, + "49536": 1, + "49537": 2, + "49538": 2, + "49539": 2, + "49540": 3, + "49541": 1, + "49542": 1, + "49543": 2, + "49544": 1, + "49545": 1, + "49546": 2, + "49547": 1, + "49548": 1, + "49551": 1, + "49552": 1, + "49557": 1, + "49558": 1, + "49559": 1, + "49575": 1, + "49576": 1, + "49581": 1, + "49590": 1, + "49598": 1, + "49605": 2, + "49609": 1, + "49611": 1, + "49620": 1, + "49622": 1, + "49624": 1, + "49639": 1, + "49642": 1, + "49643": 1, + "49644": 1, + "49666": 2, + "49668": 2, + "49673": 2, + "49678": 1, + "49681": 2, + "49683": 1, + "49686": 1, + "49688": 1, + "49691": 1, + "49695": 1, + "49696": 1, + "49697": 1, + "49698": 1, + "49699": 1, + "49706": 1, + "49710": 1, + "49712": 1, + "49719": 1, + "49720": 1, + "49721": 1, + "49722": 1, + "49728": 1, + "49729": 1, + "49731": 1, + "49733": 1, + "49734": 1, + "49737": 1, + "49739": 1, + "49742": 2, + "49746": 1, + "49750": 1, + "49751": 2, + "49753": 1, + "49756": 1, + "49761": 2, + "49762": 1, + "49765": 1, + "49769": 2, + "49770": 1, + "49771": 1, + "49772": 1, + "49775": 1, + "49776": 2, + "49782": 1, + "49783": 1, + "49785": 1, + "49798": 1, + "49799": 1, + "49800": 1, + "49801": 2, + "49807": 1, + "49808": 2, + "49809": 1, + "49810": 1, + "49813": 1, + "49814": 1, + "49820": 1, + "49823": 1, + "49825": 2, + "49828": 1, + "49830": 1, + "49831": 1, + "49833": 1, + "49836": 1, + "49844": 1, + "49867": 1, + "49870": 1, + "49887": 1, + "49895": 1, + "49906": 1, + "49909": 1, + "49913": 1, + "49929": 1, + "49933": 1, + "49946": 1, + "49961": 1, + "49962": 1, + "49981": 1, + "49982": 1, + "49984": 1, + "49988": 1, + "49994": 1, + "49999": 1, + "50000": 1, + "50001": 1, + "50005": 2, + "50010": 1, + "50011": 1, + "50012": 1, + "50013": 2, + "50014": 1, + "50015": 1, + "50017": 1, + "50030": 1, + "50041": 1, + "50045": 1, + "50047": 1, + "50048": 1, + "50052": 1, + "50053": 1, + "50075": 1, + "50077": 1, + "50082": 1, + "50088": 1, + "50092": 1, + "50093": 1, + "50096": 2, + "50102": 1, + "50105": 3, + "50106": 1, + "50118": 1, + "50127": 1, + "50139": 1, + "50145": 1, + "50146": 1, + "50149": 1, + "50152": 1, + "50155": 1, + "50161": 1, + "50163": 1, + "50168": 1, + "50171": 1, + "50180": 1, + "50184": 1, + "50186": 1, + "50191": 2, + "50194": 2, + "50200": 1, + "50201": 1, + "50202": 1, + "50207": 1, + "50210": 1, + "50212": 1, + "50219": 1, + "50220": 1, + "50223": 1, + "50224": 1, + "50241": 2, + "50249": 1, + "50258": 2, + "50261": 1, + "50266": 1, + "50268": 1, + "50273": 1, + "50276": 1, + "50278": 1, + "50284": 2, + "50286": 1, + "50291": 1, + "50293": 1, + "50296": 1, + "50298": 1, + "50302": 1, + "50315": 1, + "50317": 1, + "50322": 1, + "50323": 1, + "50324": 1, + "50326": 1, + "50328": 1, + "50335": 1, + "50338": 1, + "50342": 1, + "50343": 1, + "50347": 2, + "50348": 1, + "50349": 1, + "50350": 1, + "50351": 2, + "50354": 1, + "50355": 5, + "50356": 1, + "50358": 1, + "50359": 1, + "50361": 2, + "50363": 1, + "50364": 4, + "50365": 2, + "50366": 3, + "50367": 3, + "50368": 2, + "50370": 1, + "50372": 1, + "50373": 2, + "50374": 1, + "50375": 1, + "50376": 2, + "50377": 1, + "50378": 2, + "50379": 3, + "50381": 3, + "50382": 2, + "50383": 2, + "50384": 2, + "50386": 1, + "50389": 1, + "50390": 1, + "50392": 3, + "50393": 1, + "50394": 1, + "50396": 1, + "50397": 1, + "50398": 2, + "50399": 1, + "50400": 2, + "50401": 3, + "50402": 1, + "50403": 2, + "50404": 2, + "50406": 1, + "50407": 4, + "50408": 3, + "50410": 1, + "50411": 3, + "50412": 1, + "50414": 1, + "50418": 1, + "50419": 1, + "50420": 1, + "50422": 1, + "50425": 2, + "50427": 1, + "50428": 1, + "50429": 1, + "50430": 2, + "50434": 1, + "50436": 2, + "50441": 1, + "50444": 1, + "50449": 1, + "50450": 1, + "50451": 1, + "50453": 1, + "50460": 1, + "50463": 1, + "50464": 1, + "50466": 2, + "50470": 1, + "50474": 2, + "50476": 2, + "50479": 1, + "50480": 3, + "50483": 1, + "50484": 1, + "50487": 1, + "50488": 1, + "50497": 1, + "50508": 1, + "50513": 2, + "50514": 1, + "50519": 2, + "50521": 1, + "50522": 1, + "50523": 1, + "50525": 1, + "50529": 2, + "50530": 1, + "50531": 1, + "50532": 2, + "50537": 1, + "50539": 1, + "50540": 2, + "50541": 1, + "50544": 1, + "50545": 1, + "50546": 1, + "50548": 1, + "50549": 1, + "50550": 1, + "50554": 1, + "50557": 2, + "50560": 1, + "50561": 1, + "50562": 1, + "50563": 1, + "50564": 2, + "50565": 1, + "50570": 1, + "50573": 1, + "50574": 1, + "50576": 1, + "50580": 2, + "50581": 1, + "50585": 2, + "50586": 1, + "50587": 2, + "50588": 1, + "50589": 1, + "50592": 2, + "50593": 1, + "50594": 1, + "50595": 1, + "50599": 1, + "50602": 2, + "50607": 1, + "50608": 2, + "50609": 2, + "50610": 2, + "50611": 1, + "50612": 1, + "50618": 2, + "50620": 1, + "50621": 1, + "50623": 3, + "50626": 2, + "50628": 1, + "50632": 2, + "50640": 1, + "50641": 1, + "50648": 1, + "50650": 1, + "50651": 2, + "50652": 1, + "50656": 1, + "50657": 2, + "50658": 1, + "50661": 1, + "50665": 2, + "50669": 1, + "50678": 1, + "50679": 1, + "50682": 1, + "50683": 1, + "50684": 1, + "50686": 2, + "50692": 1, + "50696": 1, + "50698": 2, + "50708": 1, + "50712": 1, + "50714": 1, + "50718": 1, + "50719": 1, + "50721": 1, + "50722": 2, + "50725": 1, + "50727": 1, + "50731": 1, + "50733": 1, + "50734": 2, + "50735": 1, + "50736": 1, + "50740": 1, + "50748": 1, + "50753": 1, + "50756": 1, + "50757": 1, + "50761": 2, + "50764": 1, + "50765": 3, + "50766": 2, + "50769": 2, + "50770": 3, + "50772": 3, + "50773": 1, + "50775": 1, + "50778": 1, + "50779": 2, + "50781": 1, + "50784": 1, + "50785": 2, + "50787": 1, + "50788": 1, + "50789": 2, + "50790": 2, + "50792": 1, + "50796": 1, + "50798": 1, + "50799": 3, + "50800": 3, + "50801": 1, + "50806": 2, + "50808": 3, + "50809": 2, + "50810": 1, + "50811": 3, + "50812": 2, + "50814": 1, + "50815": 2, + "50816": 1, + "50817": 1, + "50818": 3, + "50819": 2, + "50825": 2, + "50826": 1, + "50829": 1, + "50835": 1, + "50836": 1, + "50839": 1, + "50840": 1, + "50852": 1, + "50853": 1, + "50856": 1, + "50857": 1, + "50859": 1, + "50860": 1, + "50864": 1, + "50866": 2, + "50868": 1, + "50869": 1, + "50870": 1, + "50876": 2, + "50877": 1, + "50882": 1, + "50884": 1, + "50886": 1, + "50892": 1, + "50893": 1, + "50896": 1, + "50897": 1, + "50900": 1, + "50905": 1, + "50909": 1, + "50917": 1, + "50918": 1, + "50919": 1, + "50925": 1, + "50927": 1, + "50932": 1, + "50933": 1, + "50937": 1, + "50939": 1, + "50940": 1, + "50943": 1, + "50945": 2, + "50953": 1, + "50958": 2, + "50960": 1, + "50963": 1, + "50964": 2, + "50972": 1, + "50973": 2, + "50974": 1, + "50977": 2, + "50978": 3, + "50979": 1, + "50980": 1, + "50982": 1, + "50983": 1, + "50987": 1, + "50988": 1, + "50989": 1, + "50991": 1, + "50992": 1, + "50995": 1, + "50999": 1, + "51000": 1, + "51001": 1, + "51002": 1, + "51007": 2, + "51010": 1, + "51011": 1, + "51017": 1, + "51018": 1, + "51021": 1, + "51022": 2, + "51028": 2, + "51033": 1, + "51034": 1, + "51035": 2, + "51039": 1, + "51040": 1, + "51045": 2, + "51046": 2, + "51048": 1, + "51049": 4, + "51050": 1, + "51052": 2, + "51053": 2, + "51055": 1, + "51056": 1, + "51059": 1, + "51060": 3, + "51061": 1, + "51062": 2, + "51063": 1, + "51064": 1, + "51066": 1, + "51067": 2, + "51068": 1, + "51069": 1, + "51073": 1, + "51075": 1, + "51079": 1, + "51080": 2, + "51085": 1, + "51087": 1, + "51088": 2, + "51090": 1, + "51092": 2, + "51093": 1, + "51096": 1, + "51097": 1, + "51099": 2, + "51101": 1, + "51104": 1, + "51106": 1, + "51107": 1, + "51110": 1, + "51113": 1, + "51114": 2, + "51117": 2, + "51119": 2, + "51126": 1, + "51127": 1, + "51128": 1, + "51129": 1, + "51132": 2, + "51134": 1, + "51140": 1, + "51153": 1, + "51369": 1 + }, + "started": "2020-09-07T18:47:51.125Z", + "trafficStats": { + "incomingCompressionRatio": 0.3824494018554688, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 50128408, + "incomingOctetsWireLevel": 50136408, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.00015959014696816223, + "outgoingCompressionRatio": 0.38521256256103514, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 50490581, + "outgoingOctetsWireLevel": 51280525, + "outgoingWebSocketFrames": 197772, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.01564537354006681, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 196772, + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 2, + "3": 6, + "4": 2, + "5": 4, + "6": 4, + "7": 1, + "8": 5, + "9": 3, + "10": 3, + "11": 1, + "12": 5, + "14": 2, + "15": 7, + "16": 2, + "17": 2, + "18": 4, + "19": 6, + "20": 5, + "21": 5, + "22": 2, + "23": 5, + "24": 7, + "25": 2, + "26": 3, + "27": 8, + "28": 6, + "29": 6, + "30": 1, + "31": 4, + "32": 7, + "33": 5, + "34": 4, + "35": 5, + "36": 5, + "37": 6, + "38": 6, + "39": 4, + "40": 3, + "41": 6, + "42": 7, + "43": 2, + "44": 12, + "45": 4, + "46": 4, + "47": 6, + "48": 9, + "49": 3, + "50": 7, + "51": 6, + "52": 4, + "53": 8, + "54": 6, + "55": 7, + "56": 9, + "57": 7, + "58": 5, + "59": 4, + "60": 5, + "61": 5, + "62": 3, + "63": 9, + "64": 6, + "65": 6, + "66": 4, + "67": 2, + "68": 10, + "69": 6, + "70": 3, + "71": 2, + "72": 3, + "73": 5, + "74": 4, + "75": 2, + "76": 3, + "77": 3, + "78": 1, + "79": 3, + "80": 5, + "81": 8, + "82": 2, + "83": 7, + "84": 3, + "85": 2, + "86": 3, + "87": 6, + "88": 7, + "89": 4, + "90": 8, + "91": 5, + "92": 5, + "93": 8, + "94": 5, + "95": 3, + "96": 5, + "97": 1, + "98": 2, + "99": 7, + "100": 6, + "101": 3, + "102": 2, + "103": 2, + "104": 1, + "105": 6, + "106": 2, + "107": 3, + "108": 1, + "109": 6, + "110": 2, + "111": 4, + "113": 4, + "114": 8, + "115": 4, + "116": 6, + "117": 2, + "118": 5, + "119": 8, + "120": 10, + "121": 6, + "122": 3, + "123": 5, + "124": 4, + "125": 4, + "126": 6, + "127": 5, + "130": 9, + "131": 4, + "132": 6, + "133": 4, + "134": 10, + "135": 3, + "136": 5, + "137": 1, + "138": 2, + "139": 3, + "140": 3, + "141": 5, + "142": 6, + "143": 5, + "144": 5, + "145": 2, + "146": 6, + "147": 3, + "148": 7, + "149": 6, + "150": 1, + "151": 4, + "152": 3, + "153": 3, + "154": 6, + "155": 3, + "156": 3, + "157": 8, + "158": 3, + "159": 2, + "160": 2, + "161": 2, + "162": 7, + "163": 2, + "164": 6, + "165": 3, + "166": 3, + "167": 2, + "168": 3, + "170": 4, + "171": 3, + "172": 2, + "173": 1, + "175": 2, + "176": 2, + "177": 1, + "179": 2, + "180": 2, + "181": 4, + "182": 2, + "183": 3, + "184": 2, + "185": 3, + "186": 3, + "187": 1, + "189": 4, + "190": 6, + "192": 4, + "193": 1, + "194": 3, + "195": 3, + "196": 3, + "197": 5, + "198": 2, + "199": 5, + "200": 1, + "201": 6, + "202": 1, + "203": 3, + "204": 1, + "205": 2, + "206": 1, + "207": 1, + "208": 1, + "209": 2, + "210": 4, + "211": 3, + "212": 3, + "213": 5, + "214": 5, + "215": 2, + "216": 2, + "218": 2, + "219": 4, + "220": 2, + "221": 1, + "222": 5, + "223": 1, + "224": 3, + "225": 5, + "226": 2, + "227": 4, + "228": 2, + "229": 3, + "230": 5, + "231": 3, + "232": 5, + "233": 3, + "234": 8, + "235": 2, + "236": 2, + "237": 2, + "238": 5, + "239": 2, + "240": 5, + "241": 1, + "242": 6, + "243": 7, + "244": 6, + "245": 5, + "246": 2, + "247": 5, + "248": 4, + "249": 3, + "250": 3, + "251": 6, + "252": 6, + "253": 2, + "254": 3, + "255": 5, + "257": 7, + "258": 3, + "259": 2, + "260": 196772 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333532266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882bf09ea91bce1" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "bf09ea91" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_3_16.html b/autobahn/client/tungstenite_case_12_3_16.html new file mode 100644 index 0000000..8fa7e0c --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_16.html @@ -0,0 +1,1615 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.3.16 : Pass - 29760 ms @ 2020-09-07T18:48:19.097Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=353&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: HA6C7eUwLYmas1TPUx4Unw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Gm4WCC1c99E9TQ9fJCpXFpOCqMg=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
16534116534
32768132768
49176149176
49194149194
49195149195
49196149196
49197298394
49199149199
49200149200
49204149204
49208149208
49213149213
49219149219
49221149221
49225149225
49229298458
49231149231
49232149232
49234149234
49235149235
49237298474
492413147723
49242149242
49245149245
49246298492
49248149248
49251149251
492524197008
49253149253
49256298512
49260149260
49261298522
492623147786
49263149263
492654197060
492673147801
49268149268
492714197084
49272149272
49273298546
49274298548
49275149275
49276149276
49277298554
49278298556
49279149279
49280298560
49281149281
492823147846
49283149283
492843147852
49285298570
492864197144
49288149288
49289298578
49292298584
49293149293
49294149294
492953147885
49296149296
49297149297
49299298598
49301149301
493024197208
49303298606
49305149305
49306149306
49307149307
49308298616
49309298618
49311149311
49312298624
493133147939
493143147942
49315149315
49318298636
49319149319
49320298640
49321298642
49322149322
49323149323
49324149324
49325298650
493274197308
49329298658
493303147990
49331298662
49332149332
493333147999
49334149334
49335298670
49336298672
493373148011
493394197356
49340298680
49341298682
49342149342
49344149344
49345298690
49346149346
49347149347
49348149348
49349149349
49351149351
493524197408
49354149354
49355149355
49356149356
49357149357
49359149359
49367149367
49368149368
493693148107
49371149371
49374149374
49380149380
49381149381
493874197548
49389149389
49390149390
49392149392
49395149395
49396298792
49399149399
49401149401
49410149410
49413149413
49414298828
49416298832
49418298836
49421149421
49422149422
49423149423
49425149425
49429149429
49437149437
49438149438
49440149440
49441298882
49442149442
49446298892
49449149449
494503148350
49452149452
49453149453
49455149455
49460149460
49462149462
49467298934
49469149469
49471149471
49473149473
49476149476
49480149480
49481149481
49484149484
49485149485
49486149486
49487149487
49492149492
49494149494
49495149495
49496149496
49499149499
49503149503
49505149505
495063148518
49507149507
49511149511
49516149516
49520299040
495223148566
49524299048
49525299050
49526299052
495275247635
49528149528
49530299060
495323148596
49533149533
49534149534
495353148605
49536149536
49537299074
49538299076
49539299078
495403148620
49541149541
49542149542
49543299086
49544149544
49545149545
49546299092
49547149547
49548149548
49551149551
49552149552
49557149557
49558149558
49559149559
49575149575
49576149576
49581149581
49590149590
49598149598
49605299210
49609149609
49611149611
49620149620
49622149622
49624149624
49639149639
49642149642
49643149643
49644149644
49666299332
49668299336
49673299346
49678149678
49681299362
49683149683
49686149686
49688149688
49691149691
49695149695
49696149696
49697149697
49698149698
49699149699
49706149706
49710149710
49712149712
49719149719
49720149720
49721149721
49722149722
49728149728
49729149729
49731149731
49733149733
49734149734
49737149737
49739149739
49742299484
49746149746
49750149750
49751299502
49753149753
49756149756
49761299522
49762149762
49765149765
49769299538
49770149770
49771149771
49772149772
49775149775
49776299552
49782149782
49783149783
49785149785
49798149798
49799149799
49800149800
49801299602
49807149807
49808299616
49809149809
49810149810
49813149813
49814149814
49820149820
49823149823
49825299650
49828149828
49830149830
49831149831
49833149833
49836149836
49844149844
49867149867
49870149870
49887149887
49895149895
49906149906
49909149909
49913149913
49929149929
49933149933
49946149946
49961149961
49962149962
49981149981
49982149982
49984149984
49988149988
49994149994
49999149999
50000150000
50001150001
500052100010
50010150010
50011150011
50012150012
500132100026
50014150014
50015150015
50017150017
50030150030
50041150041
50045150045
50047150047
50048150048
50052150052
50053150053
50075150075
50077150077
50082150082
50088150088
50092150092
50093150093
500962100192
50102150102
501053150315
50106150106
50118150118
50127150127
50139150139
50145150145
50146150146
50149150149
50152150152
50155150155
50161150161
50163150163
50168150168
50171150171
50180150180
50184150184
50186150186
501912100382
501942100388
50200150200
50201150201
50202150202
50207150207
50210150210
50212150212
50219150219
50220150220
50223150223
50224150224
502412100482
50249150249
502582100516
50261150261
50266150266
50268150268
50273150273
50276150276
50278150278
502842100568
50286150286
50291150291
50293150293
50296150296
50298150298
50302150302
50315150315
50317150317
50322150322
50323150323
50324150324
50326150326
50328150328
50335150335
50338150338
50342150342
50343150343
503472100694
50348150348
50349150349
50350150350
503512100702
50354150354
503555251775
50356150356
50358150358
50359150359
503612100722
50363150363
503644201456
503652100730
503663151098
503673151101
503682100736
50370150370
50372150372
503732100746
50374150374
50375150375
503762100752
50377150377
503782100756
503793151137
503813151143
503822100764
503832100766
503842100768
50386150386
50389150389
50390150390
503923151176
50393150393
50394150394
50396150396
50397150397
503982100796
50399150399
504002100800
504013151203
50402150402
504032100806
504042100808
50406150406
504074201628
504083151224
50410150410
504113151233
50412150412
50414150414
50418150418
50419150419
50420150420
50422150422
504252100850
50427150427
50428150428
50429150429
504302100860
50434150434
504362100872
50441150441
50444150444
50449150449
50450150450
50451150451
50453150453
50460150460
50463150463
50464150464
504662100932
50470150470
504742100948
504762100952
50479150479
504803151440
50483150483
50484150484
50487150487
50488150488
50497150497
50508150508
505132101026
50514150514
505192101038
50521150521
50522150522
50523150523
50525150525
505292101058
50530150530
50531150531
505322101064
50537150537
50539150539
505402101080
50541150541
50544150544
50545150545
50546150546
50548150548
50549150549
50550150550
50554150554
505572101114
50560150560
50561150561
50562150562
50563150563
505642101128
50565150565
50570150570
50573150573
50574150574
50576150576
505802101160
50581150581
505852101170
50586150586
505872101174
50588150588
50589150589
505922101184
50593150593
50594150594
50595150595
50599150599
506022101204
50607150607
506082101216
506092101218
506102101220
50611150611
50612150612
506182101236
50620150620
50621150621
506233151869
506262101252
50628150628
506322101264
50640150640
50641150641
50648150648
50650150650
506512101302
50652150652
50656150656
506572101314
50658150658
50661150661
506652101330
50669150669
50678150678
50679150679
50682150682
50683150683
50684150684
506862101372
50692150692
50696150696
506982101396
50708150708
50712150712
50714150714
50718150718
50719150719
50721150721
507222101444
50725150725
50727150727
50731150731
50733150733
507342101468
50735150735
50736150736
50740150740
50748150748
50753150753
50756150756
50757150757
507612101522
50764150764
507653152295
507662101532
507692101538
507703152310
507723152316
50773150773
50775150775
50778150778
507792101558
50781150781
50784150784
507852101570
50787150787
50788150788
507892101578
507902101580
50792150792
50796150796
50798150798
507993152397
508003152400
50801150801
508062101612
508083152424
508092101618
50810150810
508113152433
508122101624
50814150814
508152101630
50816150816
50817150817
508183152454
508192101638
508252101650
50826150826
50829150829
50835150835
50836150836
50839150839
50840150840
50852150852
50853150853
50856150856
50857150857
50859150859
50860150860
50864150864
508662101732
50868150868
50869150869
50870150870
508762101752
50877150877
50882150882
50884150884
50886150886
50892150892
50893150893
50896150896
50897150897
50900150900
50905150905
50909150909
50917150917
50918150918
50919150919
50925150925
50927150927
50932150932
50933150933
50937150937
50939150939
50940150940
50943150943
509452101890
50953150953
509582101916
50960150960
50963150963
509642101928
50972150972
509732101946
50974150974
509772101954
509783152934
50979150979
50980150980
50982150982
50983150983
50987150987
50988150988
50989150989
50991150991
50992150992
50995150995
50999150999
51000151000
51001151001
51002151002
510072102014
51010151010
51011151011
51017151017
51018151018
51021151021
510222102044
510282102056
51033151033
51034151034
510352102070
51039151039
51040151040
510452102090
510462102092
51048151048
510494204196
51050151050
510522102104
510532102106
51055151055
51056151056
51059151059
510603153180
51061151061
510622102124
51063151063
51064151064
51066151066
510672102134
51068151068
51069151069
51073151073
51075151075
51079151079
510802102160
51085151085
51087151087
510882102176
51090151090
510922102184
51093151093
51096151096
51097151097
510992102198
51101151101
51104151104
51106151106
51107151107
51110151110
51113151113
511142102228
511172102234
511192102238
51126151126
51127151127
51128151128
51129151129
511322102264
51134151134
51140151140
51153151153
51369151369
Total100350136673
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
326
414
6212
717
818
919
10110
12112
14228
16116
17117
18118
19119
20120
21363
23123
24248
25125
26126
27127
28128
30130
31131
32132
33266
34134
35135
37274
38276
39139
40140
41141
42284
443132
45145
474188
48296
49149
50150
51151
532106
54154
55155
562112
572114
58158
592118
61161
633189
643192
65165
67167
68168
69169
75175
77177
80180
812162
82182
83183
882176
903270
91191
94194
97197
992198
1001100
1011101
1061106
1071107
1131113
1143342
1151115
1162232
1181118
1191119
1204480
1211121
1222244
1231123
1251125
1261126
1272254
1303390
1312262
1321132
1331133
1351135
1361136
1371137
1381138
1391139
1411141
1421142
1431143
1461146
1482296
1492298
1511151
1543462
1551155
1562312
1573471
1591159
1601160
1622324
1631163
1643492
1652330
1662332
1672334
1681168
1703510
1721172
1751175
1771177
1812362
1833549
1841184
1851185
1861186
1891189
1921192
1941194
1952390
1972394
2021202
2032406
2142428
2191219
2221222
2251225
2261226
2301230
2321232
2331233
2341234
2371237
2422484
2431243
2471247
2511251
2522504
2571257
2631263
2761276
2801280
2851285
2941294
2951295
2961296
2971297
2991299
3021302
3031303
3061306
3151315
3171317
3191319
3221322
3261326
3311331
3351335
3431343
3441344
3512702
3581358
3672734
3731373
3741374
3811381
3882776
3901390
3921392
3991399
4021402
4031403
4042808
4071407
4091409
4131413
4191419
4321432
4351435
4371437
4381438
4411441
4462892
4501450
4521452
4541454
4551455
4572914
4621462
4631463
4651465
4661466
4691469
4721472
4741474
4752950
4761476
4782956
4791479
4801480
48131443
4821482
4841484
4852970
4861486
48731461
4882976
4892978
49031470
4921492
4942988
49631488
4971497
49831494
49941996
50031500
5011501
5021502
50342012
5041504
50521010
5061506
5071507
5081508
5101510
51131533
51352565
5141514
5151515
51621032
5171517
5181518
51921038
52021040
52221044
5231523
52631578
52952645
5301530
5311531
5321532
53321066
5341534
53521070
53721074
53831614
5391539
54021080
54142164
54231626
54352715
54521090
54642184
54721094
5491549
55021100
55121102
55221104
55521110
5561556
5571557
55842232
5591559
5601560
56121122
56221124
56321126
56431692
56621132
56721134
56821136
56921138
57031710
57121142
57221144
5731573
57421148
57521150
57621152
57731731
57821156
57931737
58021160
5811581
58263492
58342332
58421168
5851585
5861586
58731761
58831764
59031770
5911591
5921592
59331779
59421188
59552975
59731791
5981598
6001600
60142404
60221204
60321206
60442416
6051605
60631818
60721214
60831824
60921218
61031830
61221224
61331839
6151615
61621232
6171617
61963714
6201620
6211621
62331869
6241624
62531875
62731881
62842512
6291629
6301630
63121262
63231896
63331899
63453170
63531905
63721274
63831914
63921278
64042560
64121282
64253210
64321286
6441644
64521290
64653230
64721294
64831944
65121302
65231956
6531653
65421308
65521310
65631968
6571657
6581658
6591659
6601660
66142644
6621662
66421328
6651665
6671667
66932007
6701670
6721672
67321346
67432022
67621352
6771677
6781678
6801680
6821682
6831683
6851685
6871687
6881688
69221384
6931693
6941694
6961696
6981698
6991699
70121402
70232106
7041704
7051705
7071707
7081708
70921418
7101710
7111711
7121712
71321426
7201720
7211721
72221444
72332169
72421448
7251725
72621452
7281728
7301730
7321732
73421468
7361736
7371737
73921478
7401740
74221484
74632238
7481748
75521510
75632268
75732271
7581758
7601760
7621762
7631763
76421528
7651765
7661766
76721534
77021540
7711771
77332319
7751775
77821556
7791779
78021560
7811781
7821782
78521570
7881788
78932367
79032370
7921792
79321586
79421588
79721594
79821596
7991799
8011801
80221604
8031803
80432412
80532415
80621612
8071807
8081808
80921618
81021620
81121622
81243248
8131813
81443256
8151815
81632448
81843272
82032460
82154105
82221644
82343292
82432472
82543300
82643304
82721654
82821656
83032490
8311831
8321832
83332499
83521670
83621672
83821676
8391839
8401840
8411841
84221684
8431843
8441844
8451845
85021700
8511851
8521852
85332559
85421708
8551855
8561856
85721714
85832574
85921718
8601860
86132583
86221724
86343452
8641864
8651865
86621732
86921738
87043480
8711871
8731873
8741874
8771877
8781878
8791879
8801880
8811881
8841884
8851885
88621772
8881888
88943556
8901890
89121782
8921892
8931893
8941894
8951895
8961896
8971897
8981898
90021800
9011901
90243608
9061906
90932727
91032730
9111911
91221824
9131913
91432742
9151915
91621832
91921838
9201920
9211921
92232766
9231923
9241924
9251925
92621852
9271927
93021860
9321932
9361936
93921878
9401940
9471947
9531953
9541954
9571957
9581958
96021920
9621962
9641964
9651965
96732901
96921938
9711971
9721972
97321946
9781978
9801980
98132943
9821982
98321966
9871987
9891989
9921992
99521990
9971997
9981998
100022000
100211002
100322006
100511005
100633018
100722014
100822016
101011010
101311013
101622032
101711017
101811018
101933057
102011020
102111021
102211022
102511025
10284875650121168
Total4975850689623
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
048756
21000
81
Total49757
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333533266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88822cdc61562f34
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3263646336313536
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_3_16.json b/autobahn/client/tungstenite_case_12_3_16.json new file mode 100644 index 0000000..7cc75e9 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_16.json @@ -0,0 +1,1462 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 353, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 29760, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=353&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: HA6C7eUwLYmas1TPUx4Unw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Gm4WCC1c99E9TQ9fJCpXFpOCqMg=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.3.16", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "16534": 1, + "32768": 1, + "49176": 1, + "49194": 1, + "49195": 1, + "49196": 1, + "49197": 2, + "49199": 1, + "49200": 1, + "49204": 1, + "49208": 1, + "49213": 1, + "49219": 1, + "49221": 1, + "49225": 1, + "49229": 2, + "49231": 1, + "49232": 1, + "49234": 1, + "49235": 1, + "49237": 2, + "49241": 3, + "49242": 1, + "49245": 1, + "49246": 2, + "49248": 1, + "49251": 1, + "49252": 4, + "49253": 1, + "49256": 2, + "49260": 1, + "49261": 2, + "49262": 3, + "49263": 1, + "49265": 4, + "49267": 3, + "49268": 1, + "49271": 4, + "49272": 1, + "49273": 2, + "49274": 2, + "49275": 1, + "49276": 1, + "49277": 2, + "49278": 2, + "49279": 1, + "49280": 2, + "49281": 1, + "49282": 3, + "49283": 1, + "49284": 3, + "49285": 2, + "49286": 4, + "49288": 1, + "49289": 2, + "49292": 2, + "49293": 1, + "49294": 1, + "49295": 3, + "49296": 1, + "49297": 1, + "49299": 2, + "49301": 1, + "49302": 4, + "49303": 2, + "49305": 1, + "49306": 1, + "49307": 1, + "49308": 2, + "49309": 2, + "49311": 1, + "49312": 2, + "49313": 3, + "49314": 3, + "49315": 1, + "49318": 2, + "49319": 1, + "49320": 2, + "49321": 2, + "49322": 1, + "49323": 1, + "49324": 1, + "49325": 2, + "49327": 4, + "49329": 2, + "49330": 3, + "49331": 2, + "49332": 1, + "49333": 3, + "49334": 1, + "49335": 2, + "49336": 2, + "49337": 3, + "49339": 4, + "49340": 2, + "49341": 2, + "49342": 1, + "49344": 1, + "49345": 2, + "49346": 1, + "49347": 1, + "49348": 1, + "49349": 1, + "49351": 1, + "49352": 4, + "49354": 1, + "49355": 1, + "49356": 1, + "49357": 1, + "49359": 1, + "49367": 1, + "49368": 1, + "49369": 3, + "49371": 1, + "49374": 1, + "49380": 1, + "49381": 1, + "49387": 4, + "49389": 1, + "49390": 1, + "49392": 1, + "49395": 1, + "49396": 2, + "49399": 1, + "49401": 1, + "49410": 1, + "49413": 1, + "49414": 2, + "49416": 2, + "49418": 2, + "49421": 1, + "49422": 1, + "49423": 1, + "49425": 1, + "49429": 1, + "49437": 1, + "49438": 1, + "49440": 1, + "49441": 2, + "49442": 1, + "49446": 2, + "49449": 1, + "49450": 3, + "49452": 1, + "49453": 1, + "49455": 1, + "49460": 1, + "49462": 1, + "49467": 2, + "49469": 1, + "49471": 1, + "49473": 1, + "49476": 1, + "49480": 1, + "49481": 1, + "49484": 1, + "49485": 1, + "49486": 1, + "49487": 1, + "49492": 1, + "49494": 1, + "49495": 1, + "49496": 1, + "49499": 1, + "49503": 1, + "49505": 1, + "49506": 3, + "49507": 1, + "49511": 1, + "49516": 1, + "49520": 2, + "49522": 3, + "49524": 2, + "49525": 2, + "49526": 2, + "49527": 5, + "49528": 1, + "49530": 2, + "49532": 3, + "49533": 1, + "49534": 1, + "49535": 3, + "49536": 1, + "49537": 2, + "49538": 2, + "49539": 2, + "49540": 3, + "49541": 1, + "49542": 1, + "49543": 2, + "49544": 1, + "49545": 1, + "49546": 2, + "49547": 1, + "49548": 1, + "49551": 1, + "49552": 1, + "49557": 1, + "49558": 1, + "49559": 1, + "49575": 1, + "49576": 1, + "49581": 1, + "49590": 1, + "49598": 1, + "49605": 2, + "49609": 1, + "49611": 1, + "49620": 1, + "49622": 1, + "49624": 1, + "49639": 1, + "49642": 1, + "49643": 1, + "49644": 1, + "49666": 2, + "49668": 2, + "49673": 2, + "49678": 1, + "49681": 2, + "49683": 1, + "49686": 1, + "49688": 1, + "49691": 1, + "49695": 1, + "49696": 1, + "49697": 1, + "49698": 1, + "49699": 1, + "49706": 1, + "49710": 1, + "49712": 1, + "49719": 1, + "49720": 1, + "49721": 1, + "49722": 1, + "49728": 1, + "49729": 1, + "49731": 1, + "49733": 1, + "49734": 1, + "49737": 1, + "49739": 1, + "49742": 2, + "49746": 1, + "49750": 1, + "49751": 2, + "49753": 1, + "49756": 1, + "49761": 2, + "49762": 1, + "49765": 1, + "49769": 2, + "49770": 1, + "49771": 1, + "49772": 1, + "49775": 1, + "49776": 2, + "49782": 1, + "49783": 1, + "49785": 1, + "49798": 1, + "49799": 1, + "49800": 1, + "49801": 2, + "49807": 1, + "49808": 2, + "49809": 1, + "49810": 1, + "49813": 1, + "49814": 1, + "49820": 1, + "49823": 1, + "49825": 2, + "49828": 1, + "49830": 1, + "49831": 1, + "49833": 1, + "49836": 1, + "49844": 1, + "49867": 1, + "49870": 1, + "49887": 1, + "49895": 1, + "49906": 1, + "49909": 1, + "49913": 1, + "49929": 1, + "49933": 1, + "49946": 1, + "49961": 1, + "49962": 1, + "49981": 1, + "49982": 1, + "49984": 1, + "49988": 1, + "49994": 1, + "49999": 1, + "50000": 1, + "50001": 1, + "50005": 2, + "50010": 1, + "50011": 1, + "50012": 1, + "50013": 2, + "50014": 1, + "50015": 1, + "50017": 1, + "50030": 1, + "50041": 1, + "50045": 1, + "50047": 1, + "50048": 1, + "50052": 1, + "50053": 1, + "50075": 1, + "50077": 1, + "50082": 1, + "50088": 1, + "50092": 1, + "50093": 1, + "50096": 2, + "50102": 1, + "50105": 3, + "50106": 1, + "50118": 1, + "50127": 1, + "50139": 1, + "50145": 1, + "50146": 1, + "50149": 1, + "50152": 1, + "50155": 1, + "50161": 1, + "50163": 1, + "50168": 1, + "50171": 1, + "50180": 1, + "50184": 1, + "50186": 1, + "50191": 2, + "50194": 2, + "50200": 1, + "50201": 1, + "50202": 1, + "50207": 1, + "50210": 1, + "50212": 1, + "50219": 1, + "50220": 1, + "50223": 1, + "50224": 1, + "50241": 2, + "50249": 1, + "50258": 2, + "50261": 1, + "50266": 1, + "50268": 1, + "50273": 1, + "50276": 1, + "50278": 1, + "50284": 2, + "50286": 1, + "50291": 1, + "50293": 1, + "50296": 1, + "50298": 1, + "50302": 1, + "50315": 1, + "50317": 1, + "50322": 1, + "50323": 1, + "50324": 1, + "50326": 1, + "50328": 1, + "50335": 1, + "50338": 1, + "50342": 1, + "50343": 1, + "50347": 2, + "50348": 1, + "50349": 1, + "50350": 1, + "50351": 2, + "50354": 1, + "50355": 5, + "50356": 1, + "50358": 1, + "50359": 1, + "50361": 2, + "50363": 1, + "50364": 4, + "50365": 2, + "50366": 3, + "50367": 3, + "50368": 2, + "50370": 1, + "50372": 1, + "50373": 2, + "50374": 1, + "50375": 1, + "50376": 2, + "50377": 1, + "50378": 2, + "50379": 3, + "50381": 3, + "50382": 2, + "50383": 2, + "50384": 2, + "50386": 1, + "50389": 1, + "50390": 1, + "50392": 3, + "50393": 1, + "50394": 1, + "50396": 1, + "50397": 1, + "50398": 2, + "50399": 1, + "50400": 2, + "50401": 3, + "50402": 1, + "50403": 2, + "50404": 2, + "50406": 1, + "50407": 4, + "50408": 3, + "50410": 1, + "50411": 3, + "50412": 1, + "50414": 1, + "50418": 1, + "50419": 1, + "50420": 1, + "50422": 1, + "50425": 2, + "50427": 1, + "50428": 1, + "50429": 1, + "50430": 2, + "50434": 1, + "50436": 2, + "50441": 1, + "50444": 1, + "50449": 1, + "50450": 1, + "50451": 1, + "50453": 1, + "50460": 1, + "50463": 1, + "50464": 1, + "50466": 2, + "50470": 1, + "50474": 2, + "50476": 2, + "50479": 1, + "50480": 3, + "50483": 1, + "50484": 1, + "50487": 1, + "50488": 1, + "50497": 1, + "50508": 1, + "50513": 2, + "50514": 1, + "50519": 2, + "50521": 1, + "50522": 1, + "50523": 1, + "50525": 1, + "50529": 2, + "50530": 1, + "50531": 1, + "50532": 2, + "50537": 1, + "50539": 1, + "50540": 2, + "50541": 1, + "50544": 1, + "50545": 1, + "50546": 1, + "50548": 1, + "50549": 1, + "50550": 1, + "50554": 1, + "50557": 2, + "50560": 1, + "50561": 1, + "50562": 1, + "50563": 1, + "50564": 2, + "50565": 1, + "50570": 1, + "50573": 1, + "50574": 1, + "50576": 1, + "50580": 2, + "50581": 1, + "50585": 2, + "50586": 1, + "50587": 2, + "50588": 1, + "50589": 1, + "50592": 2, + "50593": 1, + "50594": 1, + "50595": 1, + "50599": 1, + "50602": 2, + "50607": 1, + "50608": 2, + "50609": 2, + "50610": 2, + "50611": 1, + "50612": 1, + "50618": 2, + "50620": 1, + "50621": 1, + "50623": 3, + "50626": 2, + "50628": 1, + "50632": 2, + "50640": 1, + "50641": 1, + "50648": 1, + "50650": 1, + "50651": 2, + "50652": 1, + "50656": 1, + "50657": 2, + "50658": 1, + "50661": 1, + "50665": 2, + "50669": 1, + "50678": 1, + "50679": 1, + "50682": 1, + "50683": 1, + "50684": 1, + "50686": 2, + "50692": 1, + "50696": 1, + "50698": 2, + "50708": 1, + "50712": 1, + "50714": 1, + "50718": 1, + "50719": 1, + "50721": 1, + "50722": 2, + "50725": 1, + "50727": 1, + "50731": 1, + "50733": 1, + "50734": 2, + "50735": 1, + "50736": 1, + "50740": 1, + "50748": 1, + "50753": 1, + "50756": 1, + "50757": 1, + "50761": 2, + "50764": 1, + "50765": 3, + "50766": 2, + "50769": 2, + "50770": 3, + "50772": 3, + "50773": 1, + "50775": 1, + "50778": 1, + "50779": 2, + "50781": 1, + "50784": 1, + "50785": 2, + "50787": 1, + "50788": 1, + "50789": 2, + "50790": 2, + "50792": 1, + "50796": 1, + "50798": 1, + "50799": 3, + "50800": 3, + "50801": 1, + "50806": 2, + "50808": 3, + "50809": 2, + "50810": 1, + "50811": 3, + "50812": 2, + "50814": 1, + "50815": 2, + "50816": 1, + "50817": 1, + "50818": 3, + "50819": 2, + "50825": 2, + "50826": 1, + "50829": 1, + "50835": 1, + "50836": 1, + "50839": 1, + "50840": 1, + "50852": 1, + "50853": 1, + "50856": 1, + "50857": 1, + "50859": 1, + "50860": 1, + "50864": 1, + "50866": 2, + "50868": 1, + "50869": 1, + "50870": 1, + "50876": 2, + "50877": 1, + "50882": 1, + "50884": 1, + "50886": 1, + "50892": 1, + "50893": 1, + "50896": 1, + "50897": 1, + "50900": 1, + "50905": 1, + "50909": 1, + "50917": 1, + "50918": 1, + "50919": 1, + "50925": 1, + "50927": 1, + "50932": 1, + "50933": 1, + "50937": 1, + "50939": 1, + "50940": 1, + "50943": 1, + "50945": 2, + "50953": 1, + "50958": 2, + "50960": 1, + "50963": 1, + "50964": 2, + "50972": 1, + "50973": 2, + "50974": 1, + "50977": 2, + "50978": 3, + "50979": 1, + "50980": 1, + "50982": 1, + "50983": 1, + "50987": 1, + "50988": 1, + "50989": 1, + "50991": 1, + "50992": 1, + "50995": 1, + "50999": 1, + "51000": 1, + "51001": 1, + "51002": 1, + "51007": 2, + "51010": 1, + "51011": 1, + "51017": 1, + "51018": 1, + "51021": 1, + "51022": 2, + "51028": 2, + "51033": 1, + "51034": 1, + "51035": 2, + "51039": 1, + "51040": 1, + "51045": 2, + "51046": 2, + "51048": 1, + "51049": 4, + "51050": 1, + "51052": 2, + "51053": 2, + "51055": 1, + "51056": 1, + "51059": 1, + "51060": 3, + "51061": 1, + "51062": 2, + "51063": 1, + "51064": 1, + "51066": 1, + "51067": 2, + "51068": 1, + "51069": 1, + "51073": 1, + "51075": 1, + "51079": 1, + "51080": 2, + "51085": 1, + "51087": 1, + "51088": 2, + "51090": 1, + "51092": 2, + "51093": 1, + "51096": 1, + "51097": 1, + "51099": 2, + "51101": 1, + "51104": 1, + "51106": 1, + "51107": 1, + "51110": 1, + "51113": 1, + "51114": 2, + "51117": 2, + "51119": 2, + "51126": 1, + "51127": 1, + "51128": 1, + "51129": 1, + "51132": 2, + "51134": 1, + "51140": 1, + "51153": 1, + "51369": 1 + }, + "started": "2020-09-07T18:48:19.097Z", + "trafficStats": { + "incomingCompressionRatio": 0.3824494018554688, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 50128408, + "incomingOctetsWireLevel": 50136408, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.00015959014696816223, + "outgoingCompressionRatio": 0.38521256256103514, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 50490581, + "outgoingOctetsWireLevel": 50689367, + "outgoingWebSocketFrames": 49756, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.003937090761542237, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 48756, + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "3": 2, + "4": 1, + "6": 2, + "7": 1, + "8": 1, + "9": 1, + "10": 1, + "12": 1, + "14": 2, + "16": 1, + "17": 1, + "18": 1, + "19": 1, + "20": 1, + "21": 3, + "23": 1, + "24": 2, + "25": 1, + "26": 1, + "27": 1, + "28": 1, + "30": 1, + "31": 1, + "32": 1, + "33": 2, + "34": 1, + "35": 1, + "37": 2, + "38": 2, + "39": 1, + "40": 1, + "41": 1, + "42": 2, + "44": 3, + "45": 1, + "47": 4, + "48": 2, + "49": 1, + "50": 1, + "51": 1, + "53": 2, + "54": 1, + "55": 1, + "56": 2, + "57": 2, + "58": 1, + "59": 2, + "61": 1, + "63": 3, + "64": 3, + "65": 1, + "67": 1, + "68": 1, + "69": 1, + "75": 1, + "77": 1, + "80": 1, + "81": 2, + "82": 1, + "83": 1, + "88": 2, + "90": 3, + "91": 1, + "94": 1, + "97": 1, + "99": 2, + "100": 1, + "101": 1, + "106": 1, + "107": 1, + "113": 1, + "114": 3, + "115": 1, + "116": 2, + "118": 1, + "119": 1, + "120": 4, + "121": 1, + "122": 2, + "123": 1, + "125": 1, + "126": 1, + "127": 2, + "130": 3, + "131": 2, + "132": 1, + "133": 1, + "135": 1, + "136": 1, + "137": 1, + "138": 1, + "139": 1, + "141": 1, + "142": 1, + "143": 1, + "146": 1, + "148": 2, + "149": 2, + "151": 1, + "154": 3, + "155": 1, + "156": 2, + "157": 3, + "159": 1, + "160": 1, + "162": 2, + "163": 1, + "164": 3, + "165": 2, + "166": 2, + "167": 2, + "168": 1, + "170": 3, + "172": 1, + "175": 1, + "177": 1, + "181": 2, + "183": 3, + "184": 1, + "185": 1, + "186": 1, + "189": 1, + "192": 1, + "194": 1, + "195": 2, + "197": 2, + "202": 1, + "203": 2, + "214": 2, + "219": 1, + "222": 1, + "225": 1, + "226": 1, + "230": 1, + "232": 1, + "233": 1, + "234": 1, + "237": 1, + "242": 2, + "243": 1, + "247": 1, + "251": 1, + "252": 2, + "257": 1, + "263": 1, + "276": 1, + "280": 1, + "285": 1, + "294": 1, + "295": 1, + "296": 1, + "297": 1, + "299": 1, + "302": 1, + "303": 1, + "306": 1, + "315": 1, + "317": 1, + "319": 1, + "322": 1, + "326": 1, + "331": 1, + "335": 1, + "343": 1, + "344": 1, + "351": 2, + "358": 1, + "367": 2, + "373": 1, + "374": 1, + "381": 1, + "388": 2, + "390": 1, + "392": 1, + "399": 1, + "402": 1, + "403": 1, + "404": 2, + "407": 1, + "409": 1, + "413": 1, + "419": 1, + "432": 1, + "435": 1, + "437": 1, + "438": 1, + "441": 1, + "446": 2, + "450": 1, + "452": 1, + "454": 1, + "455": 1, + "457": 2, + "462": 1, + "463": 1, + "465": 1, + "466": 1, + "469": 1, + "472": 1, + "474": 1, + "475": 2, + "476": 1, + "478": 2, + "479": 1, + "480": 1, + "481": 3, + "482": 1, + "484": 1, + "485": 2, + "486": 1, + "487": 3, + "488": 2, + "489": 2, + "490": 3, + "492": 1, + "494": 2, + "496": 3, + "497": 1, + "498": 3, + "499": 4, + "500": 3, + "501": 1, + "502": 1, + "503": 4, + "504": 1, + "505": 2, + "506": 1, + "507": 1, + "508": 1, + "510": 1, + "511": 3, + "513": 5, + "514": 1, + "515": 1, + "516": 2, + "517": 1, + "518": 1, + "519": 2, + "520": 2, + "522": 2, + "523": 1, + "526": 3, + "529": 5, + "530": 1, + "531": 1, + "532": 1, + "533": 2, + "534": 1, + "535": 2, + "537": 2, + "538": 3, + "539": 1, + "540": 2, + "541": 4, + "542": 3, + "543": 5, + "545": 2, + "546": 4, + "547": 2, + "549": 1, + "550": 2, + "551": 2, + "552": 2, + "555": 2, + "556": 1, + "557": 1, + "558": 4, + "559": 1, + "560": 1, + "561": 2, + "562": 2, + "563": 2, + "564": 3, + "566": 2, + "567": 2, + "568": 2, + "569": 2, + "570": 3, + "571": 2, + "572": 2, + "573": 1, + "574": 2, + "575": 2, + "576": 2, + "577": 3, + "578": 2, + "579": 3, + "580": 2, + "581": 1, + "582": 6, + "583": 4, + "584": 2, + "585": 1, + "586": 1, + "587": 3, + "588": 3, + "590": 3, + "591": 1, + "592": 1, + "593": 3, + "594": 2, + "595": 5, + "597": 3, + "598": 1, + "600": 1, + "601": 4, + "602": 2, + "603": 2, + "604": 4, + "605": 1, + "606": 3, + "607": 2, + "608": 3, + "609": 2, + "610": 3, + "612": 2, + "613": 3, + "615": 1, + "616": 2, + "617": 1, + "619": 6, + "620": 1, + "621": 1, + "623": 3, + "624": 1, + "625": 3, + "627": 3, + "628": 4, + "629": 1, + "630": 1, + "631": 2, + "632": 3, + "633": 3, + "634": 5, + "635": 3, + "637": 2, + "638": 3, + "639": 2, + "640": 4, + "641": 2, + "642": 5, + "643": 2, + "644": 1, + "645": 2, + "646": 5, + "647": 2, + "648": 3, + "651": 2, + "652": 3, + "653": 1, + "654": 2, + "655": 2, + "656": 3, + "657": 1, + "658": 1, + "659": 1, + "660": 1, + "661": 4, + "662": 1, + "664": 2, + "665": 1, + "667": 1, + "669": 3, + "670": 1, + "672": 1, + "673": 2, + "674": 3, + "676": 2, + "677": 1, + "678": 1, + "680": 1, + "682": 1, + "683": 1, + "685": 1, + "687": 1, + "688": 1, + "692": 2, + "693": 1, + "694": 1, + "696": 1, + "698": 1, + "699": 1, + "701": 2, + "702": 3, + "704": 1, + "705": 1, + "707": 1, + "708": 1, + "709": 2, + "710": 1, + "711": 1, + "712": 1, + "713": 2, + "720": 1, + "721": 1, + "722": 2, + "723": 3, + "724": 2, + "725": 1, + "726": 2, + "728": 1, + "730": 1, + "732": 1, + "734": 2, + "736": 1, + "737": 1, + "739": 2, + "740": 1, + "742": 2, + "746": 3, + "748": 1, + "755": 2, + "756": 3, + "757": 3, + "758": 1, + "760": 1, + "762": 1, + "763": 1, + "764": 2, + "765": 1, + "766": 1, + "767": 2, + "770": 2, + "771": 1, + "773": 3, + "775": 1, + "778": 2, + "779": 1, + "780": 2, + "781": 1, + "782": 1, + "785": 2, + "788": 1, + "789": 3, + "790": 3, + "792": 1, + "793": 2, + "794": 2, + "797": 2, + "798": 2, + "799": 1, + "801": 1, + "802": 2, + "803": 1, + "804": 3, + "805": 3, + "806": 2, + "807": 1, + "808": 1, + "809": 2, + "810": 2, + "811": 2, + "812": 4, + "813": 1, + "814": 4, + "815": 1, + "816": 3, + "818": 4, + "820": 3, + "821": 5, + "822": 2, + "823": 4, + "824": 3, + "825": 4, + "826": 4, + "827": 2, + "828": 2, + "830": 3, + "831": 1, + "832": 1, + "833": 3, + "835": 2, + "836": 2, + "838": 2, + "839": 1, + "840": 1, + "841": 1, + "842": 2, + "843": 1, + "844": 1, + "845": 1, + "850": 2, + "851": 1, + "852": 1, + "853": 3, + "854": 2, + "855": 1, + "856": 1, + "857": 2, + "858": 3, + "859": 2, + "860": 1, + "861": 3, + "862": 2, + "863": 4, + "864": 1, + "865": 1, + "866": 2, + "869": 2, + "870": 4, + "871": 1, + "873": 1, + "874": 1, + "877": 1, + "878": 1, + "879": 1, + "880": 1, + "881": 1, + "884": 1, + "885": 1, + "886": 2, + "888": 1, + "889": 4, + "890": 1, + "891": 2, + "892": 1, + "893": 1, + "894": 1, + "895": 1, + "896": 1, + "897": 1, + "898": 1, + "900": 2, + "901": 1, + "902": 4, + "906": 1, + "909": 3, + "910": 3, + "911": 1, + "912": 2, + "913": 1, + "914": 3, + "915": 1, + "916": 2, + "919": 2, + "920": 1, + "921": 1, + "922": 3, + "923": 1, + "924": 1, + "925": 1, + "926": 2, + "927": 1, + "930": 2, + "932": 1, + "936": 1, + "939": 2, + "940": 1, + "947": 1, + "953": 1, + "954": 1, + "957": 1, + "958": 1, + "960": 2, + "962": 1, + "964": 1, + "965": 1, + "967": 3, + "969": 2, + "971": 1, + "972": 1, + "973": 2, + "978": 1, + "980": 1, + "981": 3, + "982": 1, + "983": 2, + "987": 1, + "989": 1, + "992": 1, + "995": 2, + "997": 1, + "998": 1, + "1000": 2, + "1002": 1, + "1003": 2, + "1005": 1, + "1006": 3, + "1007": 2, + "1008": 2, + "1010": 1, + "1013": 1, + "1016": 2, + "1017": 1, + "1018": 1, + "1019": 3, + "1020": 1, + "1021": 1, + "1022": 1, + "1025": 1, + "1028": 48756 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333533266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88822cdc61562f34" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "2cdc6156" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_3_17.html b/autobahn/client/tungstenite_case_12_3_17.html new file mode 100644 index 0000000..40e4095 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_17.html @@ -0,0 +1,1742 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.3.17 : Pass - 28231 ms @ 2020-09-07T18:48:48.858Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=354&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ZEuqRiHPVq7zTQG+Az0KPA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: ITkBgGTB9NOdF5Nwkx2CeS1mrOc=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
16599116599
32768132768
49176149176
49194149194
49195149195
49196149196
49197298394
49199149199
49200149200
49204149204
49208149208
49213149213
49219149219
49221149221
49225149225
49229298458
49231149231
49232149232
49234149234
49235149235
49237298474
492413147723
49242149242
49245149245
49246298492
49248149248
49251149251
492524197008
49253149253
49256298512
49260149260
49261298522
492623147786
49263149263
492654197060
492673147801
49268149268
492714197084
49272149272
49273298546
49274298548
49275149275
49276149276
49277298554
49278298556
49279149279
49280298560
49281149281
492823147846
49283149283
492843147852
49285298570
492864197144
49288149288
49289298578
49292298584
49293149293
49294149294
492953147885
49296149296
49297149297
49299298598
49301149301
493025246510
49303298606
49305149305
49306149306
49307149307
49308298616
49309298618
49311149311
49312298624
493133147939
493143147942
49315149315
49318298636
49319149319
49320298640
49321298642
49322149322
49323149323
49324149324
49325298650
493274197308
49329298658
493303147990
49331298662
49332149332
493333147999
49334149334
49335298670
49336298672
493373148011
493394197356
49340298680
49341298682
49342149342
49344149344
49345298690
49346149346
49347149347
49348149348
49349149349
49351149351
493524197408
49354149354
49355149355
49356149356
49357149357
49359149359
49368149368
493693148107
49371149371
49374149374
49380149380
49381149381
493874197548
49389149389
49390149390
49392149392
49395149395
49396298792
49399149399
49401149401
49410149410
49413149413
49414298828
49416298832
49418298836
49421149421
49422149422
49423149423
49425149425
49429149429
49437149437
49438149438
49440149440
49441298882
49442149442
49446298892
49449149449
494503148350
49452149452
49453149453
49455149455
49460149460
49462149462
49467298934
49469149469
49471149471
49473149473
49476149476
49480149480
49481149481
49484149484
49485149485
49486149486
49487149487
49492149492
49494149494
49495149495
49496149496
49499149499
49503149503
49505149505
495063148518
49507149507
49511149511
49516149516
49520299040
495223148566
49524299048
49525299050
49526299052
495275247635
49528149528
49530299060
495323148596
49533149533
49534149534
495353148605
49536149536
49537299074
49538299076
49539299078
495403148620
49541149541
49542149542
49543299086
49544149544
49545149545
49546299092
49547149547
49548149548
49551149551
49552149552
49557149557
49558149558
49559149559
49575149575
49576149576
49581149581
49590149590
49598149598
49605299210
49609149609
49611149611
49620149620
49622149622
49624149624
49639149639
49642149642
49643149643
49644149644
49666299332
49668299336
49673299346
49678149678
49681299362
49683149683
49686149686
49688149688
49691149691
49695149695
49696149696
49697149697
49698149698
49699149699
49706149706
49710149710
49712149712
49719149719
49720149720
49721149721
49722149722
49728149728
49729149729
49731149731
49733149733
49734149734
49737149737
49739149739
49742299484
49746149746
49750149750
49751299502
49753149753
49756149756
49761299522
49762149762
49765149765
49769299538
49770149770
49771149771
49772149772
49775149775
49776299552
49782149782
49783149783
49785149785
49798149798
49799149799
49800149800
49801299602
49807149807
49808299616
49809149809
49810149810
49813149813
49814149814
49820149820
49823149823
49825299650
49828149828
49830149830
49831149831
49833149833
49836149836
49844149844
49867149867
49870149870
49887149887
49895149895
49906149906
49909149909
49913149913
49929149929
49933149933
49946149946
49961149961
49962149962
49981149981
49982149982
49984149984
49988149988
49994149994
49999149999
50000150000
50001150001
500052100010
50010150010
50011150011
50012150012
500132100026
50014150014
50015150015
50017150017
50030150030
50041150041
50045150045
50047150047
50048150048
50052150052
50053150053
50075150075
50077150077
50082150082
50088150088
50092150092
50093150093
500962100192
50102150102
501053150315
50106150106
50118150118
50127150127
50139150139
50145150145
50146150146
50149150149
50152150152
50155150155
50161150161
50163150163
50168150168
50171150171
50180150180
50184150184
50186150186
501912100382
501942100388
50200150200
50201150201
50202150202
50207150207
50210150210
50212150212
50219150219
50220150220
50223150223
50224150224
502412100482
50249150249
502582100516
50261150261
50266150266
50268150268
50273150273
50276150276
50278150278
502842100568
50286150286
50291150291
50293150293
50296150296
50298150298
50302150302
50315150315
50317150317
50322150322
50323150323
50324150324
50326150326
50328150328
50335150335
50338150338
50342150342
50343150343
503472100694
50348150348
50349150349
50350150350
503512100702
50354150354
503555251775
50356150356
50358150358
50359150359
503612100722
50363150363
503644201456
503652100730
503663151098
503673151101
503682100736
50370150370
50372150372
503732100746
50374150374
50375150375
503762100752
50377150377
503782100756
503793151137
503813151143
503822100764
503832100766
503842100768
50386150386
50389150389
50390150390
503923151176
50393150393
50394150394
50396150396
50397150397
503982100796
50399150399
504002100800
504013151203
50402150402
504032100806
504042100808
50406150406
504074201628
504083151224
50410150410
504113151233
50412150412
50414150414
50418150418
50419150419
50420150420
50422150422
504252100850
50427150427
50428150428
50429150429
504302100860
50434150434
504362100872
50441150441
50444150444
50449150449
50450150450
50451150451
50453150453
50460150460
50463150463
50464150464
504662100932
50470150470
504742100948
504762100952
50479150479
504803151440
50483150483
50484150484
50487150487
50488150488
50497150497
50508150508
505132101026
50514150514
505192101038
50521150521
50522150522
50523150523
50525150525
505292101058
50530150530
50531150531
505322101064
50537150537
50539150539
505402101080
50541150541
50544150544
50545150545
50546150546
50548150548
50549150549
50550150550
50554150554
505572101114
50560150560
50561150561
50562150562
50563150563
505642101128
50565150565
50570150570
50573150573
50574150574
50576150576
505802101160
50581150581
505852101170
50586150586
505872101174
50588150588
50589150589
505922101184
50593150593
50594150594
50595150595
50599150599
506022101204
50607150607
506082101216
506092101218
506102101220
50611150611
50612150612
506182101236
50620150620
50621150621
506233151869
506262101252
50628150628
506322101264
50640150640
50641150641
50648150648
50650150650
506512101302
50652150652
50656150656
506572101314
50658150658
50661150661
506652101330
50669150669
50678150678
50679150679
50682150682
50683150683
50684150684
506862101372
50692150692
50696150696
506982101396
50708150708
50712150712
50714150714
50718150718
50719150719
50721150721
507222101444
50725150725
50727150727
50731150731
50733150733
507342101468
50735150735
50736150736
50740150740
50748150748
50753150753
50756150756
50757150757
507612101522
50764150764
507653152295
507662101532
507692101538
507703152310
507723152316
50773150773
50775150775
50778150778
507792101558
50781150781
50784150784
507852101570
50787150787
50788150788
507892101578
507902101580
50792150792
50796150796
50798150798
507993152397
508003152400
50801150801
508062101612
508083152424
508092101618
50810150810
508113152433
508122101624
50814150814
508152101630
50816150816
50817150817
508183152454
508192101638
508252101650
50826150826
50829150829
50835150835
50836150836
50839150839
50840150840
50852150852
50853150853
50856150856
50857150857
50859150859
50860150860
50864150864
508662101732
50868150868
50869150869
50870150870
508762101752
50877150877
50882150882
50884150884
50886150886
50892150892
50893150893
50896150896
50897150897
50900150900
50905150905
50909150909
50917150917
50918150918
50919150919
50925150925
50927150927
50932150932
50933150933
50937150937
50939150939
50940150940
50943150943
509452101890
50953150953
509582101916
50960150960
50963150963
509642101928
50972150972
509732101946
50974150974
509772101954
509783152934
50979150979
50980150980
50982150982
50983150983
50987150987
50988150988
50989150989
50991150991
50992150992
50995150995
50999150999
51000151000
51001151001
51002151002
510072102014
51010151010
51011151011
51017151017
51018151018
51021151021
510222102044
510282102056
51033151033
51034151034
510352102070
51039151039
51040151040
510452102090
510462102092
51048151048
510494204196
51050151050
510522102104
510532102106
51055151055
51056151056
51059151059
510603153180
51061151061
510622102124
51063151063
51064151064
51066151066
510672102134
51068151068
51069151069
51073151073
51075151075
51079151079
510802102160
51085151085
51087151087
510882102176
51090151090
510922102184
51093151093
51096151096
51097151097
510992102198
51101151101
51104151104
51106151106
51107151107
51110151110
51113151113
511142102228
511172102234
511192102238
51126151126
51127151127
51128151128
51129151129
511322102264
51134151134
51140151140
51153151153
51369151369
Total100350136673
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
3811381
3991399
4021402
4041404
4071407
4191419
4501450
4571457
4721472
4891489
5071507
5101510
5131513
5141514
5151515
5201520
52931587
5311531
5331533
5341534
54121082
54221084
5431543
5451545
5461546
54721094
5491549
55221104
5551555
5561556
55831674
5591559
5601560
5611561
5631563
56431692
56621132
5671567
5691569
57021140
57121142
5731573
57421148
5751575
5761576
57721154
5781578
57931737
58021160
58231746
58331749
5841584
5851585
5861586
58731761
58821176
59031770
5921592
59321186
59421188
59552975
59721194
6001600
60142404
6021602
60321206
60421208
6051605
60631818
60721214
60831824
60921218
61021220
61221224
61331839
6151615
61621232
6171617
61942476
6201620
6211621
62321246
6241624
6251625
62731881
62842512
6291629
6301630
6311631
63221264
63331899
63421268
63521270
63721274
63821276
63921278
64031920
6411641
64242568
6431643
6441644
64521290
64642584
64721294
64831944
65121302
65231956
6551655
65621312
6571657
6581658
6591659
6601660
66121322
6621662
66421328
6651665
6671667
6691669
6701670
6721672
6731673
67432022
6761676
6771677
6781678
6801680
6821682
6851685
69221384
6931693
6961696
6991699
7011701
70232106
7051705
7071707
7081708
7091709
7101710
7111711
7121712
7221722
7231723
7251725
7301730
7341734
7391739
7401740
7461746
7561756
75721514
7581758
7621762
7631763
7651765
7661766
7671767
7731773
77821556
7851785
78921578
7901790
7931793
7941794
7991799
8021802
8031803
8051805
80621612
8071807
8081808
8091809
8101810
8111811
81243248
8141814
81621632
81821636
82032460
82121642
8221822
82321646
8241824
82532475
82632478
82721654
82821656
8301830
8321832
83321666
83521670
83621672
83821676
8391839
8401840
8411841
84221684
8431843
8451845
85021700
85321706
8541854
8581858
8591859
8611861
8621862
8771877
8811881
8891889
8901890
8941894
8951895
8961896
9061906
9141914
9221922
9241924
9251925
92621852
9391939
9471947
9531953
9581958
9641964
9671967
9721972
9731973
9781978
9801980
98121962
9831983
9951995
9971997
9981998
100022000
100211002
100311003
100511005
100622012
100722014
101311013
101933057
102111021
102511025
102911029
103211032
103411034
103811038
104011040
104211042
104311043
104611046
104711047
104911049
105111051
105211052
105311053
105411054
105611056
105711057
105911059
106011060
106111061
106322126
106422128
106511065
106611066
107011070
108222164
108511085
108711087
108922178
109022180
109111091
109311093
109411094
110111101
110711107
110811108
111411114
111611116
112511125
114011140
114811148
117311173
117511175
117822356
118011180
118311183
118622372
118822376
118911189
119011190
119111191
119211192
119422388
119611196
120511205
120711207
122111221
122611226
123822476
124311243
124911249
125011250
125411254
125611256
125711257
125811258
126111261
126622532
126711267
127111271
127511275
127611276
128111281
128711287
130011300
130411304
130911309
131811318
131911319
132011320
132111321
132311323
132611326
132711327
133011330
133911339
134111341
134311343
134611346
135011350
135511355
135911359
136711367
136811368
137522750
138211382
139122782
139711397
139811398
141222824
141411414
141611416
142711427
142811428
143311433
143711437
145611456
145911459
146111461
146211462
146511465
147022940
147611476
147811478
147911479
148111481
148611486
148711487
148911489
149011490
149311493
149811498
149922998
150011500
150223004
150311503
150411504
150534515
150611506
150811508
150923018
151011510
151134533
151223024
151311513
151434542
151611516
151823036
152034560
152111521
152234566
152346092
152434572
152511525
152611526
152746108
152811528
152923058
153011530
153211532
153534605
153746148
154023080
154111541
154211542
154323086
154411544
154611546
154711547
155034650
155323106
155411554
155611556
155711557
155923118
156123122
156234686
156311563
156423128
156523130
156611566
156746268
156911569
157034710
157423148
157523150
157911579
158111581
158211582
158511585
158623172
158711587
159111591
159223184
159311593
159411594
159623192
159911599
160011600
160111601
160211602
160511605
160634818
160711607
160811608
161211612
161511615
161711617
162111621
162211622
162611626
162823256
163411634
164323286
164711647
164923298
165511655
165611656
165834974
165911659
166211662
166411664
166511665
166611666
166711667
167011670
167711677
167823356
167911679
168011680
168523370
169323386
169711697
170011700
170711707
171111711
171211712
171811718
172211722
172511725
172811728
173311733
173723474
174411744
174511745
174611746
174723494
174823496
175023500
175211752
175611756
175811758
176011760
176111761
176311763
176623532
177023540
177211772
177923558
178023560
178111781
178411784
178823576
179111791
179423588
179511795
179723594
179911799
180311803
180423608
180511805
180611806
180911809
181211812
181311813
181423628
181611816
181711817
181811818
182123642
182223644
182511825
182611826
182835484
182923658
183311833
183411834
183511835
183711837
183835514
183911839
184011840
184223684
184535535
184611846
184723694
184823696
184911849
185011850
185423708
185511855
185711857
186811868
187511875
187611876
187711877
187811878
187911879
188011880
188123762
188223764
188311883
188411884
188523770
188611886
188747548
188811888
188911889
189023780
189323786
189447576
189511895
189711897
189811898
190211902
190311903
190411904
190811908
190911909
191023820
191211912
191335739
191523830
191611916
191711917
192111921
192211922
192423848
192511925
192647704
193335799
193435802
193511935
193623872
193711937
193823876
193911939
194023880
194323886
194411944
194511945
194623892
194711947
195111951
195423908
195611956
196011960
196311963
196411964
197811978
198111981
198423968
198611986
198911989
199123982
199323986
199511995
199711997
200512005
200612006
200712007
201112011
201312013
201612016
201912019
202712027
203012030
203224064
203412034
204024080
204112041
204212042
204412044
204612046
205312053
205612056
205712057
205912059
206012060
206412064
206812068
206912069
207124142
207424148
208212082
208312083
209112091
209224184
209424188
209512095
209748388
209824196
209912099
210012100
210112101
210324206
210412104
210512105
210724214
210812108
210912109
211312113
211412114
211912119
212712127
213012130
213112131
213312133
213812138
214024280
214112141
214412144
214712147
214912149
215012150
215112151
215612156
215712157
216312163
216424328
216512165
216624332
216812168
216912169
217048680
217112171
217212172
217312173
217512175
217612176
217724354
217836534
217924358
218012180
218112181
218312183
218412184
218512185
218612186
218712187
218912189
219012190
219112191
219412194
219624392
219712197
220212202
220312203
220412204
220536615
220812208
221112211
221212212
221312213
221412214
221512215
221812218
222312223
222512225
222912229
223124462
223212232
223312233
223412234
223712237
224012240
224212242
224324486
224512245
225124502
227012270
257012570
41001200049200000
Total1300250542837
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
012000
21000
81
Total13001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333534266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882bc05bfa1bfed
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6263303562666131
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_3_17.json b/autobahn/client/tungstenite_case_12_3_17.json new file mode 100644 index 0000000..e49ff5b --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_17.json @@ -0,0 +1,1589 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 354, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 28231, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=354&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ZEuqRiHPVq7zTQG+Az0KPA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: ITkBgGTB9NOdF5Nwkx2CeS1mrOc=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.3.17", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "16599": 1, + "32768": 1, + "49176": 1, + "49194": 1, + "49195": 1, + "49196": 1, + "49197": 2, + "49199": 1, + "49200": 1, + "49204": 1, + "49208": 1, + "49213": 1, + "49219": 1, + "49221": 1, + "49225": 1, + "49229": 2, + "49231": 1, + "49232": 1, + "49234": 1, + "49235": 1, + "49237": 2, + "49241": 3, + "49242": 1, + "49245": 1, + "49246": 2, + "49248": 1, + "49251": 1, + "49252": 4, + "49253": 1, + "49256": 2, + "49260": 1, + "49261": 2, + "49262": 3, + "49263": 1, + "49265": 4, + "49267": 3, + "49268": 1, + "49271": 4, + "49272": 1, + "49273": 2, + "49274": 2, + "49275": 1, + "49276": 1, + "49277": 2, + "49278": 2, + "49279": 1, + "49280": 2, + "49281": 1, + "49282": 3, + "49283": 1, + "49284": 3, + "49285": 2, + "49286": 4, + "49288": 1, + "49289": 2, + "49292": 2, + "49293": 1, + "49294": 1, + "49295": 3, + "49296": 1, + "49297": 1, + "49299": 2, + "49301": 1, + "49302": 5, + "49303": 2, + "49305": 1, + "49306": 1, + "49307": 1, + "49308": 2, + "49309": 2, + "49311": 1, + "49312": 2, + "49313": 3, + "49314": 3, + "49315": 1, + "49318": 2, + "49319": 1, + "49320": 2, + "49321": 2, + "49322": 1, + "49323": 1, + "49324": 1, + "49325": 2, + "49327": 4, + "49329": 2, + "49330": 3, + "49331": 2, + "49332": 1, + "49333": 3, + "49334": 1, + "49335": 2, + "49336": 2, + "49337": 3, + "49339": 4, + "49340": 2, + "49341": 2, + "49342": 1, + "49344": 1, + "49345": 2, + "49346": 1, + "49347": 1, + "49348": 1, + "49349": 1, + "49351": 1, + "49352": 4, + "49354": 1, + "49355": 1, + "49356": 1, + "49357": 1, + "49359": 1, + "49368": 1, + "49369": 3, + "49371": 1, + "49374": 1, + "49380": 1, + "49381": 1, + "49387": 4, + "49389": 1, + "49390": 1, + "49392": 1, + "49395": 1, + "49396": 2, + "49399": 1, + "49401": 1, + "49410": 1, + "49413": 1, + "49414": 2, + "49416": 2, + "49418": 2, + "49421": 1, + "49422": 1, + "49423": 1, + "49425": 1, + "49429": 1, + "49437": 1, + "49438": 1, + "49440": 1, + "49441": 2, + "49442": 1, + "49446": 2, + "49449": 1, + "49450": 3, + "49452": 1, + "49453": 1, + "49455": 1, + "49460": 1, + "49462": 1, + "49467": 2, + "49469": 1, + "49471": 1, + "49473": 1, + "49476": 1, + "49480": 1, + "49481": 1, + "49484": 1, + "49485": 1, + "49486": 1, + "49487": 1, + "49492": 1, + "49494": 1, + "49495": 1, + "49496": 1, + "49499": 1, + "49503": 1, + "49505": 1, + "49506": 3, + "49507": 1, + "49511": 1, + "49516": 1, + "49520": 2, + "49522": 3, + "49524": 2, + "49525": 2, + "49526": 2, + "49527": 5, + "49528": 1, + "49530": 2, + "49532": 3, + "49533": 1, + "49534": 1, + "49535": 3, + "49536": 1, + "49537": 2, + "49538": 2, + "49539": 2, + "49540": 3, + "49541": 1, + "49542": 1, + "49543": 2, + "49544": 1, + "49545": 1, + "49546": 2, + "49547": 1, + "49548": 1, + "49551": 1, + "49552": 1, + "49557": 1, + "49558": 1, + "49559": 1, + "49575": 1, + "49576": 1, + "49581": 1, + "49590": 1, + "49598": 1, + "49605": 2, + "49609": 1, + "49611": 1, + "49620": 1, + "49622": 1, + "49624": 1, + "49639": 1, + "49642": 1, + "49643": 1, + "49644": 1, + "49666": 2, + "49668": 2, + "49673": 2, + "49678": 1, + "49681": 2, + "49683": 1, + "49686": 1, + "49688": 1, + "49691": 1, + "49695": 1, + "49696": 1, + "49697": 1, + "49698": 1, + "49699": 1, + "49706": 1, + "49710": 1, + "49712": 1, + "49719": 1, + "49720": 1, + "49721": 1, + "49722": 1, + "49728": 1, + "49729": 1, + "49731": 1, + "49733": 1, + "49734": 1, + "49737": 1, + "49739": 1, + "49742": 2, + "49746": 1, + "49750": 1, + "49751": 2, + "49753": 1, + "49756": 1, + "49761": 2, + "49762": 1, + "49765": 1, + "49769": 2, + "49770": 1, + "49771": 1, + "49772": 1, + "49775": 1, + "49776": 2, + "49782": 1, + "49783": 1, + "49785": 1, + "49798": 1, + "49799": 1, + "49800": 1, + "49801": 2, + "49807": 1, + "49808": 2, + "49809": 1, + "49810": 1, + "49813": 1, + "49814": 1, + "49820": 1, + "49823": 1, + "49825": 2, + "49828": 1, + "49830": 1, + "49831": 1, + "49833": 1, + "49836": 1, + "49844": 1, + "49867": 1, + "49870": 1, + "49887": 1, + "49895": 1, + "49906": 1, + "49909": 1, + "49913": 1, + "49929": 1, + "49933": 1, + "49946": 1, + "49961": 1, + "49962": 1, + "49981": 1, + "49982": 1, + "49984": 1, + "49988": 1, + "49994": 1, + "49999": 1, + "50000": 1, + "50001": 1, + "50005": 2, + "50010": 1, + "50011": 1, + "50012": 1, + "50013": 2, + "50014": 1, + "50015": 1, + "50017": 1, + "50030": 1, + "50041": 1, + "50045": 1, + "50047": 1, + "50048": 1, + "50052": 1, + "50053": 1, + "50075": 1, + "50077": 1, + "50082": 1, + "50088": 1, + "50092": 1, + "50093": 1, + "50096": 2, + "50102": 1, + "50105": 3, + "50106": 1, + "50118": 1, + "50127": 1, + "50139": 1, + "50145": 1, + "50146": 1, + "50149": 1, + "50152": 1, + "50155": 1, + "50161": 1, + "50163": 1, + "50168": 1, + "50171": 1, + "50180": 1, + "50184": 1, + "50186": 1, + "50191": 2, + "50194": 2, + "50200": 1, + "50201": 1, + "50202": 1, + "50207": 1, + "50210": 1, + "50212": 1, + "50219": 1, + "50220": 1, + "50223": 1, + "50224": 1, + "50241": 2, + "50249": 1, + "50258": 2, + "50261": 1, + "50266": 1, + "50268": 1, + "50273": 1, + "50276": 1, + "50278": 1, + "50284": 2, + "50286": 1, + "50291": 1, + "50293": 1, + "50296": 1, + "50298": 1, + "50302": 1, + "50315": 1, + "50317": 1, + "50322": 1, + "50323": 1, + "50324": 1, + "50326": 1, + "50328": 1, + "50335": 1, + "50338": 1, + "50342": 1, + "50343": 1, + "50347": 2, + "50348": 1, + "50349": 1, + "50350": 1, + "50351": 2, + "50354": 1, + "50355": 5, + "50356": 1, + "50358": 1, + "50359": 1, + "50361": 2, + "50363": 1, + "50364": 4, + "50365": 2, + "50366": 3, + "50367": 3, + "50368": 2, + "50370": 1, + "50372": 1, + "50373": 2, + "50374": 1, + "50375": 1, + "50376": 2, + "50377": 1, + "50378": 2, + "50379": 3, + "50381": 3, + "50382": 2, + "50383": 2, + "50384": 2, + "50386": 1, + "50389": 1, + "50390": 1, + "50392": 3, + "50393": 1, + "50394": 1, + "50396": 1, + "50397": 1, + "50398": 2, + "50399": 1, + "50400": 2, + "50401": 3, + "50402": 1, + "50403": 2, + "50404": 2, + "50406": 1, + "50407": 4, + "50408": 3, + "50410": 1, + "50411": 3, + "50412": 1, + "50414": 1, + "50418": 1, + "50419": 1, + "50420": 1, + "50422": 1, + "50425": 2, + "50427": 1, + "50428": 1, + "50429": 1, + "50430": 2, + "50434": 1, + "50436": 2, + "50441": 1, + "50444": 1, + "50449": 1, + "50450": 1, + "50451": 1, + "50453": 1, + "50460": 1, + "50463": 1, + "50464": 1, + "50466": 2, + "50470": 1, + "50474": 2, + "50476": 2, + "50479": 1, + "50480": 3, + "50483": 1, + "50484": 1, + "50487": 1, + "50488": 1, + "50497": 1, + "50508": 1, + "50513": 2, + "50514": 1, + "50519": 2, + "50521": 1, + "50522": 1, + "50523": 1, + "50525": 1, + "50529": 2, + "50530": 1, + "50531": 1, + "50532": 2, + "50537": 1, + "50539": 1, + "50540": 2, + "50541": 1, + "50544": 1, + "50545": 1, + "50546": 1, + "50548": 1, + "50549": 1, + "50550": 1, + "50554": 1, + "50557": 2, + "50560": 1, + "50561": 1, + "50562": 1, + "50563": 1, + "50564": 2, + "50565": 1, + "50570": 1, + "50573": 1, + "50574": 1, + "50576": 1, + "50580": 2, + "50581": 1, + "50585": 2, + "50586": 1, + "50587": 2, + "50588": 1, + "50589": 1, + "50592": 2, + "50593": 1, + "50594": 1, + "50595": 1, + "50599": 1, + "50602": 2, + "50607": 1, + "50608": 2, + "50609": 2, + "50610": 2, + "50611": 1, + "50612": 1, + "50618": 2, + "50620": 1, + "50621": 1, + "50623": 3, + "50626": 2, + "50628": 1, + "50632": 2, + "50640": 1, + "50641": 1, + "50648": 1, + "50650": 1, + "50651": 2, + "50652": 1, + "50656": 1, + "50657": 2, + "50658": 1, + "50661": 1, + "50665": 2, + "50669": 1, + "50678": 1, + "50679": 1, + "50682": 1, + "50683": 1, + "50684": 1, + "50686": 2, + "50692": 1, + "50696": 1, + "50698": 2, + "50708": 1, + "50712": 1, + "50714": 1, + "50718": 1, + "50719": 1, + "50721": 1, + "50722": 2, + "50725": 1, + "50727": 1, + "50731": 1, + "50733": 1, + "50734": 2, + "50735": 1, + "50736": 1, + "50740": 1, + "50748": 1, + "50753": 1, + "50756": 1, + "50757": 1, + "50761": 2, + "50764": 1, + "50765": 3, + "50766": 2, + "50769": 2, + "50770": 3, + "50772": 3, + "50773": 1, + "50775": 1, + "50778": 1, + "50779": 2, + "50781": 1, + "50784": 1, + "50785": 2, + "50787": 1, + "50788": 1, + "50789": 2, + "50790": 2, + "50792": 1, + "50796": 1, + "50798": 1, + "50799": 3, + "50800": 3, + "50801": 1, + "50806": 2, + "50808": 3, + "50809": 2, + "50810": 1, + "50811": 3, + "50812": 2, + "50814": 1, + "50815": 2, + "50816": 1, + "50817": 1, + "50818": 3, + "50819": 2, + "50825": 2, + "50826": 1, + "50829": 1, + "50835": 1, + "50836": 1, + "50839": 1, + "50840": 1, + "50852": 1, + "50853": 1, + "50856": 1, + "50857": 1, + "50859": 1, + "50860": 1, + "50864": 1, + "50866": 2, + "50868": 1, + "50869": 1, + "50870": 1, + "50876": 2, + "50877": 1, + "50882": 1, + "50884": 1, + "50886": 1, + "50892": 1, + "50893": 1, + "50896": 1, + "50897": 1, + "50900": 1, + "50905": 1, + "50909": 1, + "50917": 1, + "50918": 1, + "50919": 1, + "50925": 1, + "50927": 1, + "50932": 1, + "50933": 1, + "50937": 1, + "50939": 1, + "50940": 1, + "50943": 1, + "50945": 2, + "50953": 1, + "50958": 2, + "50960": 1, + "50963": 1, + "50964": 2, + "50972": 1, + "50973": 2, + "50974": 1, + "50977": 2, + "50978": 3, + "50979": 1, + "50980": 1, + "50982": 1, + "50983": 1, + "50987": 1, + "50988": 1, + "50989": 1, + "50991": 1, + "50992": 1, + "50995": 1, + "50999": 1, + "51000": 1, + "51001": 1, + "51002": 1, + "51007": 2, + "51010": 1, + "51011": 1, + "51017": 1, + "51018": 1, + "51021": 1, + "51022": 2, + "51028": 2, + "51033": 1, + "51034": 1, + "51035": 2, + "51039": 1, + "51040": 1, + "51045": 2, + "51046": 2, + "51048": 1, + "51049": 4, + "51050": 1, + "51052": 2, + "51053": 2, + "51055": 1, + "51056": 1, + "51059": 1, + "51060": 3, + "51061": 1, + "51062": 2, + "51063": 1, + "51064": 1, + "51066": 1, + "51067": 2, + "51068": 1, + "51069": 1, + "51073": 1, + "51075": 1, + "51079": 1, + "51080": 2, + "51085": 1, + "51087": 1, + "51088": 2, + "51090": 1, + "51092": 2, + "51093": 1, + "51096": 1, + "51097": 1, + "51099": 2, + "51101": 1, + "51104": 1, + "51106": 1, + "51107": 1, + "51110": 1, + "51113": 1, + "51114": 2, + "51117": 2, + "51119": 2, + "51126": 1, + "51127": 1, + "51128": 1, + "51129": 1, + "51132": 2, + "51134": 1, + "51140": 1, + "51153": 1, + "51369": 1 + }, + "started": "2020-09-07T18:48:48.858Z", + "trafficStats": { + "incomingCompressionRatio": 0.3824494018554688, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 50128408, + "incomingOctetsWireLevel": 50136408, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.00015959014696816223, + "outgoingCompressionRatio": 0.38521256256103514, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 50490581, + "outgoingOctetsWireLevel": 50542581, + "outgoingWebSocketFrames": 13000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0010298950610213814, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 12000, + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "381": 1, + "399": 1, + "402": 1, + "404": 1, + "407": 1, + "419": 1, + "450": 1, + "457": 1, + "472": 1, + "489": 1, + "507": 1, + "510": 1, + "513": 1, + "514": 1, + "515": 1, + "520": 1, + "529": 3, + "531": 1, + "533": 1, + "534": 1, + "541": 2, + "542": 2, + "543": 1, + "545": 1, + "546": 1, + "547": 2, + "549": 1, + "552": 2, + "555": 1, + "556": 1, + "558": 3, + "559": 1, + "560": 1, + "561": 1, + "563": 1, + "564": 3, + "566": 2, + "567": 1, + "569": 1, + "570": 2, + "571": 2, + "573": 1, + "574": 2, + "575": 1, + "576": 1, + "577": 2, + "578": 1, + "579": 3, + "580": 2, + "582": 3, + "583": 3, + "584": 1, + "585": 1, + "586": 1, + "587": 3, + "588": 2, + "590": 3, + "592": 1, + "593": 2, + "594": 2, + "595": 5, + "597": 2, + "600": 1, + "601": 4, + "602": 1, + "603": 2, + "604": 2, + "605": 1, + "606": 3, + "607": 2, + "608": 3, + "609": 2, + "610": 2, + "612": 2, + "613": 3, + "615": 1, + "616": 2, + "617": 1, + "619": 4, + "620": 1, + "621": 1, + "623": 2, + "624": 1, + "625": 1, + "627": 3, + "628": 4, + "629": 1, + "630": 1, + "631": 1, + "632": 2, + "633": 3, + "634": 2, + "635": 2, + "637": 2, + "638": 2, + "639": 2, + "640": 3, + "641": 1, + "642": 4, + "643": 1, + "644": 1, + "645": 2, + "646": 4, + "647": 2, + "648": 3, + "651": 2, + "652": 3, + "655": 1, + "656": 2, + "657": 1, + "658": 1, + "659": 1, + "660": 1, + "661": 2, + "662": 1, + "664": 2, + "665": 1, + "667": 1, + "669": 1, + "670": 1, + "672": 1, + "673": 1, + "674": 3, + "676": 1, + "677": 1, + "678": 1, + "680": 1, + "682": 1, + "685": 1, + "692": 2, + "693": 1, + "696": 1, + "699": 1, + "701": 1, + "702": 3, + "705": 1, + "707": 1, + "708": 1, + "709": 1, + "710": 1, + "711": 1, + "712": 1, + "722": 1, + "723": 1, + "725": 1, + "730": 1, + "734": 1, + "739": 1, + "740": 1, + "746": 1, + "756": 1, + "757": 2, + "758": 1, + "762": 1, + "763": 1, + "765": 1, + "766": 1, + "767": 1, + "773": 1, + "778": 2, + "785": 1, + "789": 2, + "790": 1, + "793": 1, + "794": 1, + "799": 1, + "802": 1, + "803": 1, + "805": 1, + "806": 2, + "807": 1, + "808": 1, + "809": 1, + "810": 1, + "811": 1, + "812": 4, + "814": 1, + "816": 2, + "818": 2, + "820": 3, + "821": 2, + "822": 1, + "823": 2, + "824": 1, + "825": 3, + "826": 3, + "827": 2, + "828": 2, + "830": 1, + "832": 1, + "833": 2, + "835": 2, + "836": 2, + "838": 2, + "839": 1, + "840": 1, + "841": 1, + "842": 2, + "843": 1, + "845": 1, + "850": 2, + "853": 2, + "854": 1, + "858": 1, + "859": 1, + "861": 1, + "862": 1, + "877": 1, + "881": 1, + "889": 1, + "890": 1, + "894": 1, + "895": 1, + "896": 1, + "906": 1, + "914": 1, + "922": 1, + "924": 1, + "925": 1, + "926": 2, + "939": 1, + "947": 1, + "953": 1, + "958": 1, + "964": 1, + "967": 1, + "972": 1, + "973": 1, + "978": 1, + "980": 1, + "981": 2, + "983": 1, + "995": 1, + "997": 1, + "998": 1, + "1000": 2, + "1002": 1, + "1003": 1, + "1005": 1, + "1006": 2, + "1007": 2, + "1013": 1, + "1019": 3, + "1021": 1, + "1025": 1, + "1029": 1, + "1032": 1, + "1034": 1, + "1038": 1, + "1040": 1, + "1042": 1, + "1043": 1, + "1046": 1, + "1047": 1, + "1049": 1, + "1051": 1, + "1052": 1, + "1053": 1, + "1054": 1, + "1056": 1, + "1057": 1, + "1059": 1, + "1060": 1, + "1061": 1, + "1063": 2, + "1064": 2, + "1065": 1, + "1066": 1, + "1070": 1, + "1082": 2, + "1085": 1, + "1087": 1, + "1089": 2, + "1090": 2, + "1091": 1, + "1093": 1, + "1094": 1, + "1101": 1, + "1107": 1, + "1108": 1, + "1114": 1, + "1116": 1, + "1125": 1, + "1140": 1, + "1148": 1, + "1173": 1, + "1175": 1, + "1178": 2, + "1180": 1, + "1183": 1, + "1186": 2, + "1188": 2, + "1189": 1, + "1190": 1, + "1191": 1, + "1192": 1, + "1194": 2, + "1196": 1, + "1205": 1, + "1207": 1, + "1221": 1, + "1226": 1, + "1238": 2, + "1243": 1, + "1249": 1, + "1250": 1, + "1254": 1, + "1256": 1, + "1257": 1, + "1258": 1, + "1261": 1, + "1266": 2, + "1267": 1, + "1271": 1, + "1275": 1, + "1276": 1, + "1281": 1, + "1287": 1, + "1300": 1, + "1304": 1, + "1309": 1, + "1318": 1, + "1319": 1, + "1320": 1, + "1321": 1, + "1323": 1, + "1326": 1, + "1327": 1, + "1330": 1, + "1339": 1, + "1341": 1, + "1343": 1, + "1346": 1, + "1350": 1, + "1355": 1, + "1359": 1, + "1367": 1, + "1368": 1, + "1375": 2, + "1382": 1, + "1391": 2, + "1397": 1, + "1398": 1, + "1412": 2, + "1414": 1, + "1416": 1, + "1427": 1, + "1428": 1, + "1433": 1, + "1437": 1, + "1456": 1, + "1459": 1, + "1461": 1, + "1462": 1, + "1465": 1, + "1470": 2, + "1476": 1, + "1478": 1, + "1479": 1, + "1481": 1, + "1486": 1, + "1487": 1, + "1489": 1, + "1490": 1, + "1493": 1, + "1498": 1, + "1499": 2, + "1500": 1, + "1502": 2, + "1503": 1, + "1504": 1, + "1505": 3, + "1506": 1, + "1508": 1, + "1509": 2, + "1510": 1, + "1511": 3, + "1512": 2, + "1513": 1, + "1514": 3, + "1516": 1, + "1518": 2, + "1520": 3, + "1521": 1, + "1522": 3, + "1523": 4, + "1524": 3, + "1525": 1, + "1526": 1, + "1527": 4, + "1528": 1, + "1529": 2, + "1530": 1, + "1532": 1, + "1535": 3, + "1537": 4, + "1540": 2, + "1541": 1, + "1542": 1, + "1543": 2, + "1544": 1, + "1546": 1, + "1547": 1, + "1550": 3, + "1553": 2, + "1554": 1, + "1556": 1, + "1557": 1, + "1559": 2, + "1561": 2, + "1562": 3, + "1563": 1, + "1564": 2, + "1565": 2, + "1566": 1, + "1567": 4, + "1569": 1, + "1570": 3, + "1574": 2, + "1575": 2, + "1579": 1, + "1581": 1, + "1582": 1, + "1585": 1, + "1586": 2, + "1587": 1, + "1591": 1, + "1592": 2, + "1593": 1, + "1594": 1, + "1596": 2, + "1599": 1, + "1600": 1, + "1601": 1, + "1602": 1, + "1605": 1, + "1606": 3, + "1607": 1, + "1608": 1, + "1612": 1, + "1615": 1, + "1617": 1, + "1621": 1, + "1622": 1, + "1626": 1, + "1628": 2, + "1634": 1, + "1643": 2, + "1647": 1, + "1649": 2, + "1655": 1, + "1656": 1, + "1658": 3, + "1659": 1, + "1662": 1, + "1664": 1, + "1665": 1, + "1666": 1, + "1667": 1, + "1670": 1, + "1677": 1, + "1678": 2, + "1679": 1, + "1680": 1, + "1685": 2, + "1693": 2, + "1697": 1, + "1700": 1, + "1707": 1, + "1711": 1, + "1712": 1, + "1718": 1, + "1722": 1, + "1725": 1, + "1728": 1, + "1733": 1, + "1737": 2, + "1744": 1, + "1745": 1, + "1746": 1, + "1747": 2, + "1748": 2, + "1750": 2, + "1752": 1, + "1756": 1, + "1758": 1, + "1760": 1, + "1761": 1, + "1763": 1, + "1766": 2, + "1770": 2, + "1772": 1, + "1779": 2, + "1780": 2, + "1781": 1, + "1784": 1, + "1788": 2, + "1791": 1, + "1794": 2, + "1795": 1, + "1797": 2, + "1799": 1, + "1803": 1, + "1804": 2, + "1805": 1, + "1806": 1, + "1809": 1, + "1812": 1, + "1813": 1, + "1814": 2, + "1816": 1, + "1817": 1, + "1818": 1, + "1821": 2, + "1822": 2, + "1825": 1, + "1826": 1, + "1828": 3, + "1829": 2, + "1833": 1, + "1834": 1, + "1835": 1, + "1837": 1, + "1838": 3, + "1839": 1, + "1840": 1, + "1842": 2, + "1845": 3, + "1846": 1, + "1847": 2, + "1848": 2, + "1849": 1, + "1850": 1, + "1854": 2, + "1855": 1, + "1857": 1, + "1868": 1, + "1875": 1, + "1876": 1, + "1877": 1, + "1878": 1, + "1879": 1, + "1880": 1, + "1881": 2, + "1882": 2, + "1883": 1, + "1884": 1, + "1885": 2, + "1886": 1, + "1887": 4, + "1888": 1, + "1889": 1, + "1890": 2, + "1893": 2, + "1894": 4, + "1895": 1, + "1897": 1, + "1898": 1, + "1902": 1, + "1903": 1, + "1904": 1, + "1908": 1, + "1909": 1, + "1910": 2, + "1912": 1, + "1913": 3, + "1915": 2, + "1916": 1, + "1917": 1, + "1921": 1, + "1922": 1, + "1924": 2, + "1925": 1, + "1926": 4, + "1933": 3, + "1934": 3, + "1935": 1, + "1936": 2, + "1937": 1, + "1938": 2, + "1939": 1, + "1940": 2, + "1943": 2, + "1944": 1, + "1945": 1, + "1946": 2, + "1947": 1, + "1951": 1, + "1954": 2, + "1956": 1, + "1960": 1, + "1963": 1, + "1964": 1, + "1978": 1, + "1981": 1, + "1984": 2, + "1986": 1, + "1989": 1, + "1991": 2, + "1993": 2, + "1995": 1, + "1997": 1, + "2005": 1, + "2006": 1, + "2007": 1, + "2011": 1, + "2013": 1, + "2016": 1, + "2019": 1, + "2027": 1, + "2030": 1, + "2032": 2, + "2034": 1, + "2040": 2, + "2041": 1, + "2042": 1, + "2044": 1, + "2046": 1, + "2053": 1, + "2056": 1, + "2057": 1, + "2059": 1, + "2060": 1, + "2064": 1, + "2068": 1, + "2069": 1, + "2071": 2, + "2074": 2, + "2082": 1, + "2083": 1, + "2091": 1, + "2092": 2, + "2094": 2, + "2095": 1, + "2097": 4, + "2098": 2, + "2099": 1, + "2100": 1, + "2101": 1, + "2103": 2, + "2104": 1, + "2105": 1, + "2107": 2, + "2108": 1, + "2109": 1, + "2113": 1, + "2114": 1, + "2119": 1, + "2127": 1, + "2130": 1, + "2131": 1, + "2133": 1, + "2138": 1, + "2140": 2, + "2141": 1, + "2144": 1, + "2147": 1, + "2149": 1, + "2150": 1, + "2151": 1, + "2156": 1, + "2157": 1, + "2163": 1, + "2164": 2, + "2165": 1, + "2166": 2, + "2168": 1, + "2169": 1, + "2170": 4, + "2171": 1, + "2172": 1, + "2173": 1, + "2175": 1, + "2176": 1, + "2177": 2, + "2178": 3, + "2179": 2, + "2180": 1, + "2181": 1, + "2183": 1, + "2184": 1, + "2185": 1, + "2186": 1, + "2187": 1, + "2189": 1, + "2190": 1, + "2191": 1, + "2194": 1, + "2196": 2, + "2197": 1, + "2202": 1, + "2203": 1, + "2204": 1, + "2205": 3, + "2208": 1, + "2211": 1, + "2212": 1, + "2213": 1, + "2214": 1, + "2215": 1, + "2218": 1, + "2223": 1, + "2225": 1, + "2229": 1, + "2231": 2, + "2232": 1, + "2233": 1, + "2234": 1, + "2237": 1, + "2240": 1, + "2242": 1, + "2243": 2, + "2245": 1, + "2251": 2, + "2270": 1, + "2570": 1, + "4100": 12000 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333534266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882bc05bfa1bfed" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "bc05bfa1" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_3_18.html b/autobahn/client/tungstenite_case_12_3_18.html new file mode 100644 index 0000000..64ca902 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_18.html @@ -0,0 +1,1741 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.3.18 : Pass - 27704 ms @ 2020-09-07T18:49:17.090Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=355&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: zCzM9Cg72ByXUjeFDzCvsg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: ERYOX3Bk1YZGxebLVVYoKm8Z7SU=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
49176149176
49194149194
49195149195
49196149196
49197298394
49199149199
49200149200
49204149204
49208149208
49213149213
49219149219
49221149221
49225149225
49229298458
49231149231
49232149232
49234149234
49235149235
49237298474
492413147723
49242149242
49245149245
49246298492
49248149248
49251149251
492524197008
49253149253
49256298512
49260149260
49261298522
492623147786
49263149263
492654197060
492673147801
49268149268
492714197084
49272149272
49273298546
49274298548
49275149275
49276149276
49277298554
49278298556
49279149279
49280298560
49281149281
492823147846
49283149283
492843147852
49285298570
492864197144
49288149288
49289298578
49292298584
49293149293
49294149294
492953147885
49296149296
49297149297
49299298598
49301149301
493025246510
49303298606
49305149305
49306149306
49307149307
49308298616
49309298618
49311149311
49312298624
493133147939
493143147942
49315149315
49318298636
49319149319
49320298640
49321298642
49322149322
49323149323
49324149324
49325298650
493274197308
49329298658
493303147990
49331298662
49332149332
493333147999
49334149334
49335298670
49336298672
493373148011
493394197356
49340298680
49341298682
49342149342
49344149344
49345298690
49346149346
49347149347
49348149348
49349149349
49351149351
493524197408
49354149354
49355149355
49356149356
49357149357
49359149359
49367149367
49368149368
493693148107
49371149371
49374149374
49380149380
49381149381
493874197548
49389149389
49390149390
49392149392
49395149395
49396298792
49399149399
49401149401
49410149410
49413149413
49414298828
49416298832
49418298836
49421149421
49422149422
49423149423
49425149425
49429149429
49437149437
49438149438
49440149440
49441298882
49442149442
49446298892
49449149449
494503148350
49452149452
49453149453
49455149455
49460149460
49462149462
49467298934
49469149469
49471149471
49473149473
49476149476
49480149480
49481149481
49484149484
49485149485
49486149486
49487149487
49492149492
49494149494
49495149495
49496149496
49499149499
49503149503
49505149505
495063148518
49507149507
49511149511
49516149516
49520299040
495223148566
49524299048
49525299050
49526299052
495275247635
49528149528
49530299060
495323148596
49533149533
49534149534
495353148605
49536149536
49537299074
49538299076
49539299078
495403148620
49541149541
49542149542
49543299086
49544149544
49545149545
49546299092
49547149547
49548149548
49551149551
49552149552
49557149557
49558149558
49559149559
49575149575
49576149576
49581149581
49590149590
49598149598
49605299210
49609149609
49611149611
49620149620
49622149622
49624149624
49639149639
49642149642
49643149643
49644149644
49666299332
49668299336
49673299346
49678149678
49681299362
49683149683
49686149686
49688149688
49691149691
49695149695
49696149696
49697149697
49698149698
49699149699
49706149706
49710149710
49712149712
49719149719
49720149720
49721149721
49722149722
49728149728
49729149729
49731149731
49733149733
49734149734
49737149737
49739149739
49742299484
49746149746
49750149750
49751299502
49753149753
49756149756
49761299522
49762149762
49765149765
49769299538
49770149770
49771149771
49772149772
49775149775
49776299552
49782149782
49783149783
49785149785
49798149798
49799149799
49800149800
49801299602
49807149807
49808299616
49809149809
49810149810
49813149813
49814149814
49820149820
49823149823
49825299650
49828149828
49830149830
49831149831
49833149833
49836149836
49844149844
49867149867
49870149870
49887149887
49895149895
49906149906
49909149909
49913149913
49929149929
49933149933
49946149946
49961149961
49962149962
49981149981
49982149982
49984149984
49988149988
49994149994
49999149999
50000150000
50001150001
500052100010
50010150010
50011150011
50012150012
500132100026
50014150014
50015150015
50017150017
50030150030
50041150041
50045150045
50047150047
50048150048
50052150052
50053150053
50075150075
50077150077
50082150082
50088150088
50092150092
50093150093
500962100192
50102150102
501053150315
50106150106
50118150118
50127150127
50139150139
50145150145
50146150146
50149150149
50152150152
50155150155
50161150161
50163150163
50168150168
50171150171
50180150180
50184150184
50186150186
501912100382
501942100388
50200150200
50201150201
50202150202
50207150207
50210150210
50212150212
50219150219
50220150220
50223150223
50224150224
502412100482
50249150249
502582100516
50261150261
50266150266
50268150268
50273150273
50276150276
50278150278
502842100568
50286150286
50291150291
50293150293
50296150296
50298150298
50302150302
50315150315
50317150317
50322150322
50323150323
50324150324
50326150326
50328150328
50335150335
50338150338
50342150342
50343150343
503472100694
50348150348
50349150349
50350150350
503512100702
50354150354
503555251775
50356150356
50358150358
50359150359
503612100722
50363150363
503644201456
503652100730
503663151098
503673151101
503682100736
50370150370
50372150372
503732100746
50374150374
50375150375
503762100752
50377150377
503782100756
503793151137
503813151143
503822100764
503832100766
503842100768
50386150386
50389150389
50390150390
503923151176
50393150393
50394150394
50396150396
50397150397
503982100796
50399150399
504002100800
504013151203
50402150402
504032100806
504042100808
50406150406
504074201628
504083151224
50410150410
504113151233
50412150412
50414150414
50418150418
50419150419
50420150420
50422150422
504252100850
50427150427
50428150428
50429150429
504302100860
50434150434
504362100872
50441150441
50444150444
50449150449
50450150450
50451150451
50453150453
50460150460
50463150463
50464150464
504662100932
50470150470
504742100948
504762100952
50479150479
504803151440
50483150483
50484150484
50487150487
50488150488
50497150497
50508150508
505132101026
50514150514
505192101038
50521150521
50522150522
50523150523
50525150525
505292101058
50530150530
50531150531
505322101064
50537150537
50539150539
505402101080
50541150541
50544150544
50545150545
50546150546
50548150548
50549150549
50550150550
50554150554
505572101114
50560150560
50561150561
50562150562
50563150563
505642101128
50565150565
50570150570
50573150573
50574150574
50576150576
505802101160
50581150581
505852101170
50586150586
505872101174
50588150588
50589150589
505922101184
50593150593
50594150594
50595150595
50599150599
506022101204
50607150607
506082101216
506092101218
506102101220
50611150611
50612150612
506182101236
50620150620
50621150621
506233151869
506262101252
50628150628
506322101264
50640150640
50641150641
50648150648
50650150650
506512101302
50652150652
50656150656
506572101314
50658150658
50661150661
506652101330
50669150669
50678150678
50679150679
50682150682
50683150683
50684150684
506862101372
50692150692
50696150696
506982101396
50708150708
50712150712
50714150714
50718150718
50719150719
50721150721
507222101444
50725150725
50727150727
50731150731
50733150733
507342101468
50735150735
50736150736
50740150740
50748150748
50753150753
50756150756
50757150757
507612101522
50764150764
507653152295
507662101532
507692101538
507703152310
507723152316
50773150773
50775150775
50778150778
507792101558
50781150781
50784150784
507852101570
50787150787
50788150788
507892101578
507902101580
50792150792
50796150796
50798150798
507993152397
508003152400
50801150801
508062101612
508083152424
508092101618
50810150810
508113152433
508122101624
50814150814
508152101630
50816150816
50817150817
508183152454
508192101638
508252101650
50826150826
50829150829
50835150835
50836150836
50839150839
50840150840
50852150852
50853150853
50856150856
50857150857
50859150859
50860150860
50864150864
508662101732
50868150868
50869150869
50870150870
508762101752
50877150877
50882150882
50884150884
50886150886
50892150892
50893150893
50896150896
50897150897
50900150900
50905150905
50909150909
50917150917
50918150918
50919150919
50925150925
50927150927
50932150932
50933150933
50937150937
50939150939
50940150940
50943150943
509452101890
50953150953
509582101916
50960150960
50963150963
509642101928
50972150972
509732101946
50974150974
509772101954
509783152934
50979150979
50980150980
50982150982
50983150983
50987150987
50988150988
50989150989
50991150991
50992150992
50995150995
50999150999
51000151000
51001151001
51002151002
510072102014
51010151010
51011151011
51017151017
51018151018
51021151021
510222102044
510282102056
51033151033
51034151034
510352102070
51039151039
51040151040
510452102090
510462102092
51048151048
510494204196
51050151050
510522102104
510532102106
51055151055
51056151056
51059151059
510603153180
51061151061
510622102124
51063151063
51064151064
51066151066
510672102134
51068151068
51069151069
51073151073
51075151075
51079151079
510802102160
51085151085
51087151087
510882102176
51090151090
510922102184
51093151093
51096151096
51097151097
510992102198
51101151101
51104151104
51106151106
51107151107
51110151110
51113151113
511142102228
511172102234
511192102238
51126151126
51127151127
51128151128
51129151129
511322102264
51134151134
51140151140
51153151153
51369151369
Total100250136673
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
16765116765
16783116783
16786116786
16788116788
16791116791
16803116803
16834116834
16841116841
16856116856
16873116873
16891116891
16894116894
16897116897
16898116898
16899116899
16904116904
16913350739
16915116915
16917116917
16918116918
16925233850
16926233852
16927116927
16929116929
16930116930
16931233862
16933116933
16936233872
16939116939
16940116940
16942350826
16943116943
16944116944
16945116945
16947116947
16948350844
16950233900
16951116951
16953116953
16954233908
16955233910
16957116957
16958233916
16959116959
16960116960
16961233922
16962116962
16963350889
16964233928
16966350898
16967350901
16968116968
16969116969
16970116970
16971350913
16972233944
16974350922
16976116976
16977233954
16978233956
16979584895
16981233962
16984116984
16985467940
16986116986
16987233974
16988233976
16989116989
16990350970
16991233982
16992350976
16993233986
16994233988
16996233992
16997350991
16999116999
17000234000
17001117001
17003468012
17004117004
17005117005
17007234014
17008117008
17009117009
17011351033
17012468048
17013117013
17014117014
17015117015
17016234032
17017351051
17018234036
17019234038
17021234042
17022234044
17023234046
17024351072
17025117025
17026468104
17027117027
17028117028
17029234058
17030468120
17031234062
17032351096
17035234070
17036351108
17039117039
17040234080
17041117041
17042117042
17043117043
17044117044
17045234090
17046117046
17048234096
17049117049
17051117051
17053117053
17054117054
17056117056
17057117057
17058351174
17060117060
17061117061
17062117062
17064117064
17066117066
17069117069
17076234152
17077117077
17080117080
17083117083
17085117085
17086351258
17089117089
17091117091
17092117092
17093117093
17094117094
17095117095
17096117096
17106117106
17107117107
17109117109
17114117114
17118117118
17123117123
17124117124
17130117130
17140117140
17141234282
17142117142
17146117146
17147117147
17149117149
17150117150
17151117151
17157117157
17162234324
17169117169
17173234346
17174117174
17177117177
17178117178
17183117183
17186117186
17187117187
17189117189
17190234380
17191117191
17192117192
17193117193
17194117194
17195117195
17196468784
17198117198
17200234400
17202234404
17204351612
17205234410
17206117206
17207234414
17208117208
17209351627
17210351630
17211234422
17212234424
17214117214
17216117216
17217234434
17219234438
17220234440
17222234444
17223117223
17224117224
17225117225
17226234452
17227117227
17229117229
17234234468
17237234474
17238117238
17242117242
17243117243
17245117245
17246117246
17261117261
17265117265
17273117273
17274117274
17278117278
17279117279
17280117280
17290117290
17298117298
17306117306
17308117308
17309117309
17310234620
17323117323
17331117331
17337117337
17342117342
17348117348
17351117351
17356117356
17357117357
17362117362
17364117364
17365234730
17367117367
17379117379
17381117381
17382117382
17384234768
17386117386
17387117387
17389117389
17390234780
17391234782
17397117397
17403352209
17405117405
17409117409
17413117413
17416117416
17418117418
17422117422
17424117424
17426117426
17427117427
17430117430
17431117431
17433117433
17435117435
17436117436
17437117437
17438117438
17440117440
17441117441
17443117443
17444117444
17445117445
17447234894
17448234896
17449117449
17450117450
17454117454
17466234932
17469117469
17471117471
17473234946
17474234948
17475117475
17477117477
17478117478
17485117485
17491117491
17492117492
17498117498
17500117500
17509117509
17524117524
17532117532
17557117557
17559117559
17562235124
17564117564
17567117567
17570235140
17572235144
17573117573
17574117574
17575117575
17576117576
17578235156
17580117580
17589117589
17591117591
17605117605
17610117610
17622235244
17627117627
17633117633
17634117634
17638117638
17640117640
17641117641
17642117642
17645117645
17650235300
17651117651
17655117655
17659117659
17660117660
17665117665
17671117671
17684117684
17688117688
17693117693
17702117702
17703117703
17704117704
17705117705
17707117707
17710117710
17711117711
17714117714
17723117723
17725117725
17727117727
17730117730
17734117734
17739117739
17743117743
17751117751
17752117752
17759235518
17766117766
17775235550
17781117781
17782117782
17796235592
17798117798
17800117800
17811117811
17812117812
17817117817
17821117821
17840117840
17843117843
17845117845
17846117846
17849117849
17854235708
17860117860
17862117862
17863117863
17865117865
17870117870
17871117871
17873117873
17874117874
17877117877
17882117882
17883235766
17884117884
17886235772
17887117887
17888117888
17889353667
17890117890
17892117892
17893235786
17894117894
17895353685
17896235792
17897117897
17898353694
17900117900
17902235804
17904353712
17905117905
17906353718
17907471628
17908353724
17909117909
17910117910
17911471644
17912117912
17913235826
17914117914
17916117916
17919353757
17921471684
17924235848
17925117925
17926117926
17927235854
17928117928
17930117930
17931117931
17934353802
17937235874
17938117938
17940117940
17941117941
17943235886
17945235890
17946353838
17947117947
17948235896
17949235898
17950117950
17951471804
17953117953
17954353862
17958235916
17959235918
17963117963
17965117965
17966117966
17969117969
17970235940
17971117971
17975117975
17976235952
17977117977
17978117978
17980235960
17983117983
17984117984
17985117985
17986117986
17989117989
17990353970
17991117991
17992117992
17996117996
17999117999
18001118001
18005118005
18006118006
18010118010
18012236024
18018118018
18027236054
18031118031
18033236066
18039118039
18040118040
18042354126
18043118043
18046118046
18048118048
18049118049
18050118050
18051118051
18054118054
18061118061
18062236124
18063118063
18064118064
18069236138
18077236154
18081118081
18084118084
18091118091
18095118095
18096118096
18102118102
18106118106
18109118109
18112118112
18117118117
18121236242
18128118128
18129118129
18130118130
18131236262
18132236264
18134236268
18136118136
18140118140
18142118142
18144118144
18145118145
18147118147
18150236300
18154236308
18156118156
18163236326
18164236328
18165118165
18168118168
18172236344
18175118175
18178236356
18179118179
18181236362
18183118183
18187118187
18188236376
18189118189
18190118190
18193118193
18196118196
18197118197
18198236396
18200118200
18201118201
18202118202
18205236410
18206236412
18209118209
18210118210
18212354636
18213236426
18217118217
18218118218
18219118219
18221118221
18222354666
18223118223
18224118224
18226236452
18229354687
18230118230
18231236462
18232236464
18233118233
18234118234
18238236476
18239118239
18241118241
18252118252
18259118259
18260118260
18261118261
18262118262
18263118263
18264118264
18265236530
18266236532
18267118267
18268118268
18269236538
18270118270
18271473084
18272118272
18273118273
18274236548
18277236554
18278473112
18279118279
18281118281
18282118282
18286118286
18287118287
18288118288
18292118292
18293118293
18294236588
18296118296
18297354891
18299236598
18300118300
18301118301
18305118305
18306118306
18308236616
18309118309
18310473240
18317354951
18318354954
18319118319
18320236640
18321118321
18322236644
18323118323
18324236648
18327236654
18328118328
18329118329
18330236660
18331118331
18335118335
18338236676
18340118340
18344118344
18347118347
18348118348
18362118362
18365118365
18368236736
18370118370
18373118373
18375236750
18377236754
18379118379
18381118381
18389118389
18390118390
18391118391
18395118395
18397118397
18400118400
18403118403
18411118411
18414118414
18416236832
18418118418
18424236848
18425118425
18426118426
18428118428
18430118430
18437118437
18440118440
18441118441
18443118443
18444118444
18448118448
18452118452
18453118453
18455236910
18458236916
18466118466
18467118467
18475118475
18476236952
18478236956
18479118479
18481473924
18482236964
18483118483
18484118484
18485118485
18487236974
18488118488
18489118489
18491236982
18492118492
18493118493
18497118497
18498118498
18503118503
18511118511
18514118514
18515118515
18517118517
18522118522
18524237048
18525118525
18528118528
18531118531
18533118533
18534118534
18535118535
18540118540
18541118541
18547118547
18548237096
18549118549
18550237100
18552118552
18553118553
18554474216
18555118555
18556118556
18557118557
18559118559
18560118560
18561237122
18562355686
18563237126
18564118564
18565118565
18567118567
18568118568
18569118569
18570118570
18571118571
18573118573
18574118574
18575118575
18578118578
18580237160
18581118581
18586118586
18587118587
18588118588
18589355767
18592118592
18595118595
18596118596
18597118597
18598118598
18599118599
18602118602
18607118607
18609118609
18613118613
18615237230
18616118616
18617118617
18618118618
18621118621
18624118624
18626118626
18627237254
18629118629
18635237270
18654118654
18954118954
32772100032772000
Total200250498837
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
01000
21000
81
Total2001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333535266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882c6256882c5cd
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6336323536383832
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_3_18.json b/autobahn/client/tungstenite_case_12_3_18.json new file mode 100644 index 0000000..c9c3115 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_18.json @@ -0,0 +1,1588 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 355, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 27704, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=355&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: zCzM9Cg72ByXUjeFDzCvsg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: ERYOX3Bk1YZGxebLVVYoKm8Z7SU=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.3.18", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "49176": 1, + "49194": 1, + "49195": 1, + "49196": 1, + "49197": 2, + "49199": 1, + "49200": 1, + "49204": 1, + "49208": 1, + "49213": 1, + "49219": 1, + "49221": 1, + "49225": 1, + "49229": 2, + "49231": 1, + "49232": 1, + "49234": 1, + "49235": 1, + "49237": 2, + "49241": 3, + "49242": 1, + "49245": 1, + "49246": 2, + "49248": 1, + "49251": 1, + "49252": 4, + "49253": 1, + "49256": 2, + "49260": 1, + "49261": 2, + "49262": 3, + "49263": 1, + "49265": 4, + "49267": 3, + "49268": 1, + "49271": 4, + "49272": 1, + "49273": 2, + "49274": 2, + "49275": 1, + "49276": 1, + "49277": 2, + "49278": 2, + "49279": 1, + "49280": 2, + "49281": 1, + "49282": 3, + "49283": 1, + "49284": 3, + "49285": 2, + "49286": 4, + "49288": 1, + "49289": 2, + "49292": 2, + "49293": 1, + "49294": 1, + "49295": 3, + "49296": 1, + "49297": 1, + "49299": 2, + "49301": 1, + "49302": 5, + "49303": 2, + "49305": 1, + "49306": 1, + "49307": 1, + "49308": 2, + "49309": 2, + "49311": 1, + "49312": 2, + "49313": 3, + "49314": 3, + "49315": 1, + "49318": 2, + "49319": 1, + "49320": 2, + "49321": 2, + "49322": 1, + "49323": 1, + "49324": 1, + "49325": 2, + "49327": 4, + "49329": 2, + "49330": 3, + "49331": 2, + "49332": 1, + "49333": 3, + "49334": 1, + "49335": 2, + "49336": 2, + "49337": 3, + "49339": 4, + "49340": 2, + "49341": 2, + "49342": 1, + "49344": 1, + "49345": 2, + "49346": 1, + "49347": 1, + "49348": 1, + "49349": 1, + "49351": 1, + "49352": 4, + "49354": 1, + "49355": 1, + "49356": 1, + "49357": 1, + "49359": 1, + "49367": 1, + "49368": 1, + "49369": 3, + "49371": 1, + "49374": 1, + "49380": 1, + "49381": 1, + "49387": 4, + "49389": 1, + "49390": 1, + "49392": 1, + "49395": 1, + "49396": 2, + "49399": 1, + "49401": 1, + "49410": 1, + "49413": 1, + "49414": 2, + "49416": 2, + "49418": 2, + "49421": 1, + "49422": 1, + "49423": 1, + "49425": 1, + "49429": 1, + "49437": 1, + "49438": 1, + "49440": 1, + "49441": 2, + "49442": 1, + "49446": 2, + "49449": 1, + "49450": 3, + "49452": 1, + "49453": 1, + "49455": 1, + "49460": 1, + "49462": 1, + "49467": 2, + "49469": 1, + "49471": 1, + "49473": 1, + "49476": 1, + "49480": 1, + "49481": 1, + "49484": 1, + "49485": 1, + "49486": 1, + "49487": 1, + "49492": 1, + "49494": 1, + "49495": 1, + "49496": 1, + "49499": 1, + "49503": 1, + "49505": 1, + "49506": 3, + "49507": 1, + "49511": 1, + "49516": 1, + "49520": 2, + "49522": 3, + "49524": 2, + "49525": 2, + "49526": 2, + "49527": 5, + "49528": 1, + "49530": 2, + "49532": 3, + "49533": 1, + "49534": 1, + "49535": 3, + "49536": 1, + "49537": 2, + "49538": 2, + "49539": 2, + "49540": 3, + "49541": 1, + "49542": 1, + "49543": 2, + "49544": 1, + "49545": 1, + "49546": 2, + "49547": 1, + "49548": 1, + "49551": 1, + "49552": 1, + "49557": 1, + "49558": 1, + "49559": 1, + "49575": 1, + "49576": 1, + "49581": 1, + "49590": 1, + "49598": 1, + "49605": 2, + "49609": 1, + "49611": 1, + "49620": 1, + "49622": 1, + "49624": 1, + "49639": 1, + "49642": 1, + "49643": 1, + "49644": 1, + "49666": 2, + "49668": 2, + "49673": 2, + "49678": 1, + "49681": 2, + "49683": 1, + "49686": 1, + "49688": 1, + "49691": 1, + "49695": 1, + "49696": 1, + "49697": 1, + "49698": 1, + "49699": 1, + "49706": 1, + "49710": 1, + "49712": 1, + "49719": 1, + "49720": 1, + "49721": 1, + "49722": 1, + "49728": 1, + "49729": 1, + "49731": 1, + "49733": 1, + "49734": 1, + "49737": 1, + "49739": 1, + "49742": 2, + "49746": 1, + "49750": 1, + "49751": 2, + "49753": 1, + "49756": 1, + "49761": 2, + "49762": 1, + "49765": 1, + "49769": 2, + "49770": 1, + "49771": 1, + "49772": 1, + "49775": 1, + "49776": 2, + "49782": 1, + "49783": 1, + "49785": 1, + "49798": 1, + "49799": 1, + "49800": 1, + "49801": 2, + "49807": 1, + "49808": 2, + "49809": 1, + "49810": 1, + "49813": 1, + "49814": 1, + "49820": 1, + "49823": 1, + "49825": 2, + "49828": 1, + "49830": 1, + "49831": 1, + "49833": 1, + "49836": 1, + "49844": 1, + "49867": 1, + "49870": 1, + "49887": 1, + "49895": 1, + "49906": 1, + "49909": 1, + "49913": 1, + "49929": 1, + "49933": 1, + "49946": 1, + "49961": 1, + "49962": 1, + "49981": 1, + "49982": 1, + "49984": 1, + "49988": 1, + "49994": 1, + "49999": 1, + "50000": 1, + "50001": 1, + "50005": 2, + "50010": 1, + "50011": 1, + "50012": 1, + "50013": 2, + "50014": 1, + "50015": 1, + "50017": 1, + "50030": 1, + "50041": 1, + "50045": 1, + "50047": 1, + "50048": 1, + "50052": 1, + "50053": 1, + "50075": 1, + "50077": 1, + "50082": 1, + "50088": 1, + "50092": 1, + "50093": 1, + "50096": 2, + "50102": 1, + "50105": 3, + "50106": 1, + "50118": 1, + "50127": 1, + "50139": 1, + "50145": 1, + "50146": 1, + "50149": 1, + "50152": 1, + "50155": 1, + "50161": 1, + "50163": 1, + "50168": 1, + "50171": 1, + "50180": 1, + "50184": 1, + "50186": 1, + "50191": 2, + "50194": 2, + "50200": 1, + "50201": 1, + "50202": 1, + "50207": 1, + "50210": 1, + "50212": 1, + "50219": 1, + "50220": 1, + "50223": 1, + "50224": 1, + "50241": 2, + "50249": 1, + "50258": 2, + "50261": 1, + "50266": 1, + "50268": 1, + "50273": 1, + "50276": 1, + "50278": 1, + "50284": 2, + "50286": 1, + "50291": 1, + "50293": 1, + "50296": 1, + "50298": 1, + "50302": 1, + "50315": 1, + "50317": 1, + "50322": 1, + "50323": 1, + "50324": 1, + "50326": 1, + "50328": 1, + "50335": 1, + "50338": 1, + "50342": 1, + "50343": 1, + "50347": 2, + "50348": 1, + "50349": 1, + "50350": 1, + "50351": 2, + "50354": 1, + "50355": 5, + "50356": 1, + "50358": 1, + "50359": 1, + "50361": 2, + "50363": 1, + "50364": 4, + "50365": 2, + "50366": 3, + "50367": 3, + "50368": 2, + "50370": 1, + "50372": 1, + "50373": 2, + "50374": 1, + "50375": 1, + "50376": 2, + "50377": 1, + "50378": 2, + "50379": 3, + "50381": 3, + "50382": 2, + "50383": 2, + "50384": 2, + "50386": 1, + "50389": 1, + "50390": 1, + "50392": 3, + "50393": 1, + "50394": 1, + "50396": 1, + "50397": 1, + "50398": 2, + "50399": 1, + "50400": 2, + "50401": 3, + "50402": 1, + "50403": 2, + "50404": 2, + "50406": 1, + "50407": 4, + "50408": 3, + "50410": 1, + "50411": 3, + "50412": 1, + "50414": 1, + "50418": 1, + "50419": 1, + "50420": 1, + "50422": 1, + "50425": 2, + "50427": 1, + "50428": 1, + "50429": 1, + "50430": 2, + "50434": 1, + "50436": 2, + "50441": 1, + "50444": 1, + "50449": 1, + "50450": 1, + "50451": 1, + "50453": 1, + "50460": 1, + "50463": 1, + "50464": 1, + "50466": 2, + "50470": 1, + "50474": 2, + "50476": 2, + "50479": 1, + "50480": 3, + "50483": 1, + "50484": 1, + "50487": 1, + "50488": 1, + "50497": 1, + "50508": 1, + "50513": 2, + "50514": 1, + "50519": 2, + "50521": 1, + "50522": 1, + "50523": 1, + "50525": 1, + "50529": 2, + "50530": 1, + "50531": 1, + "50532": 2, + "50537": 1, + "50539": 1, + "50540": 2, + "50541": 1, + "50544": 1, + "50545": 1, + "50546": 1, + "50548": 1, + "50549": 1, + "50550": 1, + "50554": 1, + "50557": 2, + "50560": 1, + "50561": 1, + "50562": 1, + "50563": 1, + "50564": 2, + "50565": 1, + "50570": 1, + "50573": 1, + "50574": 1, + "50576": 1, + "50580": 2, + "50581": 1, + "50585": 2, + "50586": 1, + "50587": 2, + "50588": 1, + "50589": 1, + "50592": 2, + "50593": 1, + "50594": 1, + "50595": 1, + "50599": 1, + "50602": 2, + "50607": 1, + "50608": 2, + "50609": 2, + "50610": 2, + "50611": 1, + "50612": 1, + "50618": 2, + "50620": 1, + "50621": 1, + "50623": 3, + "50626": 2, + "50628": 1, + "50632": 2, + "50640": 1, + "50641": 1, + "50648": 1, + "50650": 1, + "50651": 2, + "50652": 1, + "50656": 1, + "50657": 2, + "50658": 1, + "50661": 1, + "50665": 2, + "50669": 1, + "50678": 1, + "50679": 1, + "50682": 1, + "50683": 1, + "50684": 1, + "50686": 2, + "50692": 1, + "50696": 1, + "50698": 2, + "50708": 1, + "50712": 1, + "50714": 1, + "50718": 1, + "50719": 1, + "50721": 1, + "50722": 2, + "50725": 1, + "50727": 1, + "50731": 1, + "50733": 1, + "50734": 2, + "50735": 1, + "50736": 1, + "50740": 1, + "50748": 1, + "50753": 1, + "50756": 1, + "50757": 1, + "50761": 2, + "50764": 1, + "50765": 3, + "50766": 2, + "50769": 2, + "50770": 3, + "50772": 3, + "50773": 1, + "50775": 1, + "50778": 1, + "50779": 2, + "50781": 1, + "50784": 1, + "50785": 2, + "50787": 1, + "50788": 1, + "50789": 2, + "50790": 2, + "50792": 1, + "50796": 1, + "50798": 1, + "50799": 3, + "50800": 3, + "50801": 1, + "50806": 2, + "50808": 3, + "50809": 2, + "50810": 1, + "50811": 3, + "50812": 2, + "50814": 1, + "50815": 2, + "50816": 1, + "50817": 1, + "50818": 3, + "50819": 2, + "50825": 2, + "50826": 1, + "50829": 1, + "50835": 1, + "50836": 1, + "50839": 1, + "50840": 1, + "50852": 1, + "50853": 1, + "50856": 1, + "50857": 1, + "50859": 1, + "50860": 1, + "50864": 1, + "50866": 2, + "50868": 1, + "50869": 1, + "50870": 1, + "50876": 2, + "50877": 1, + "50882": 1, + "50884": 1, + "50886": 1, + "50892": 1, + "50893": 1, + "50896": 1, + "50897": 1, + "50900": 1, + "50905": 1, + "50909": 1, + "50917": 1, + "50918": 1, + "50919": 1, + "50925": 1, + "50927": 1, + "50932": 1, + "50933": 1, + "50937": 1, + "50939": 1, + "50940": 1, + "50943": 1, + "50945": 2, + "50953": 1, + "50958": 2, + "50960": 1, + "50963": 1, + "50964": 2, + "50972": 1, + "50973": 2, + "50974": 1, + "50977": 2, + "50978": 3, + "50979": 1, + "50980": 1, + "50982": 1, + "50983": 1, + "50987": 1, + "50988": 1, + "50989": 1, + "50991": 1, + "50992": 1, + "50995": 1, + "50999": 1, + "51000": 1, + "51001": 1, + "51002": 1, + "51007": 2, + "51010": 1, + "51011": 1, + "51017": 1, + "51018": 1, + "51021": 1, + "51022": 2, + "51028": 2, + "51033": 1, + "51034": 1, + "51035": 2, + "51039": 1, + "51040": 1, + "51045": 2, + "51046": 2, + "51048": 1, + "51049": 4, + "51050": 1, + "51052": 2, + "51053": 2, + "51055": 1, + "51056": 1, + "51059": 1, + "51060": 3, + "51061": 1, + "51062": 2, + "51063": 1, + "51064": 1, + "51066": 1, + "51067": 2, + "51068": 1, + "51069": 1, + "51073": 1, + "51075": 1, + "51079": 1, + "51080": 2, + "51085": 1, + "51087": 1, + "51088": 2, + "51090": 1, + "51092": 2, + "51093": 1, + "51096": 1, + "51097": 1, + "51099": 2, + "51101": 1, + "51104": 1, + "51106": 1, + "51107": 1, + "51110": 1, + "51113": 1, + "51114": 2, + "51117": 2, + "51119": 2, + "51126": 1, + "51127": 1, + "51128": 1, + "51129": 1, + "51132": 2, + "51134": 1, + "51140": 1, + "51153": 1, + "51369": 1 + }, + "started": "2020-09-07T18:49:17.090Z", + "trafficStats": { + "incomingCompressionRatio": 0.3824494018554688, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 50128408, + "incomingOctetsWireLevel": 50136408, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.00015959014696816223, + "outgoingCompressionRatio": 0.38521256256103514, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 50490581, + "outgoingOctetsWireLevel": 50498581, + "outgoingWebSocketFrames": 2000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.00015844539400328945, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 1000, + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "16765": 1, + "16783": 1, + "16786": 1, + "16788": 1, + "16791": 1, + "16803": 1, + "16834": 1, + "16841": 1, + "16856": 1, + "16873": 1, + "16891": 1, + "16894": 1, + "16897": 1, + "16898": 1, + "16899": 1, + "16904": 1, + "16913": 3, + "16915": 1, + "16917": 1, + "16918": 1, + "16925": 2, + "16926": 2, + "16927": 1, + "16929": 1, + "16930": 1, + "16931": 2, + "16933": 1, + "16936": 2, + "16939": 1, + "16940": 1, + "16942": 3, + "16943": 1, + "16944": 1, + "16945": 1, + "16947": 1, + "16948": 3, + "16950": 2, + "16951": 1, + "16953": 1, + "16954": 2, + "16955": 2, + "16957": 1, + "16958": 2, + "16959": 1, + "16960": 1, + "16961": 2, + "16962": 1, + "16963": 3, + "16964": 2, + "16966": 3, + "16967": 3, + "16968": 1, + "16969": 1, + "16970": 1, + "16971": 3, + "16972": 2, + "16974": 3, + "16976": 1, + "16977": 2, + "16978": 2, + "16979": 5, + "16981": 2, + "16984": 1, + "16985": 4, + "16986": 1, + "16987": 2, + "16988": 2, + "16989": 1, + "16990": 3, + "16991": 2, + "16992": 3, + "16993": 2, + "16994": 2, + "16996": 2, + "16997": 3, + "16999": 1, + "17000": 2, + "17001": 1, + "17003": 4, + "17004": 1, + "17005": 1, + "17007": 2, + "17008": 1, + "17009": 1, + "17011": 3, + "17012": 4, + "17013": 1, + "17014": 1, + "17015": 1, + "17016": 2, + "17017": 3, + "17018": 2, + "17019": 2, + "17021": 2, + "17022": 2, + "17023": 2, + "17024": 3, + "17025": 1, + "17026": 4, + "17027": 1, + "17028": 1, + "17029": 2, + "17030": 4, + "17031": 2, + "17032": 3, + "17035": 2, + "17036": 3, + "17039": 1, + "17040": 2, + "17041": 1, + "17042": 1, + "17043": 1, + "17044": 1, + "17045": 2, + "17046": 1, + "17048": 2, + "17049": 1, + "17051": 1, + "17053": 1, + "17054": 1, + "17056": 1, + "17057": 1, + "17058": 3, + "17060": 1, + "17061": 1, + "17062": 1, + "17064": 1, + "17066": 1, + "17069": 1, + "17076": 2, + "17077": 1, + "17080": 1, + "17083": 1, + "17085": 1, + "17086": 3, + "17089": 1, + "17091": 1, + "17092": 1, + "17093": 1, + "17094": 1, + "17095": 1, + "17096": 1, + "17106": 1, + "17107": 1, + "17109": 1, + "17114": 1, + "17118": 1, + "17123": 1, + "17124": 1, + "17130": 1, + "17140": 1, + "17141": 2, + "17142": 1, + "17146": 1, + "17147": 1, + "17149": 1, + "17150": 1, + "17151": 1, + "17157": 1, + "17162": 2, + "17169": 1, + "17173": 2, + "17174": 1, + "17177": 1, + "17178": 1, + "17183": 1, + "17186": 1, + "17187": 1, + "17189": 1, + "17190": 2, + "17191": 1, + "17192": 1, + "17193": 1, + "17194": 1, + "17195": 1, + "17196": 4, + "17198": 1, + "17200": 2, + "17202": 2, + "17204": 3, + "17205": 2, + "17206": 1, + "17207": 2, + "17208": 1, + "17209": 3, + "17210": 3, + "17211": 2, + "17212": 2, + "17214": 1, + "17216": 1, + "17217": 2, + "17219": 2, + "17220": 2, + "17222": 2, + "17223": 1, + "17224": 1, + "17225": 1, + "17226": 2, + "17227": 1, + "17229": 1, + "17234": 2, + "17237": 2, + "17238": 1, + "17242": 1, + "17243": 1, + "17245": 1, + "17246": 1, + "17261": 1, + "17265": 1, + "17273": 1, + "17274": 1, + "17278": 1, + "17279": 1, + "17280": 1, + "17290": 1, + "17298": 1, + "17306": 1, + "17308": 1, + "17309": 1, + "17310": 2, + "17323": 1, + "17331": 1, + "17337": 1, + "17342": 1, + "17348": 1, + "17351": 1, + "17356": 1, + "17357": 1, + "17362": 1, + "17364": 1, + "17365": 2, + "17367": 1, + "17379": 1, + "17381": 1, + "17382": 1, + "17384": 2, + "17386": 1, + "17387": 1, + "17389": 1, + "17390": 2, + "17391": 2, + "17397": 1, + "17403": 3, + "17405": 1, + "17409": 1, + "17413": 1, + "17416": 1, + "17418": 1, + "17422": 1, + "17424": 1, + "17426": 1, + "17427": 1, + "17430": 1, + "17431": 1, + "17433": 1, + "17435": 1, + "17436": 1, + "17437": 1, + "17438": 1, + "17440": 1, + "17441": 1, + "17443": 1, + "17444": 1, + "17445": 1, + "17447": 2, + "17448": 2, + "17449": 1, + "17450": 1, + "17454": 1, + "17466": 2, + "17469": 1, + "17471": 1, + "17473": 2, + "17474": 2, + "17475": 1, + "17477": 1, + "17478": 1, + "17485": 1, + "17491": 1, + "17492": 1, + "17498": 1, + "17500": 1, + "17509": 1, + "17524": 1, + "17532": 1, + "17557": 1, + "17559": 1, + "17562": 2, + "17564": 1, + "17567": 1, + "17570": 2, + "17572": 2, + "17573": 1, + "17574": 1, + "17575": 1, + "17576": 1, + "17578": 2, + "17580": 1, + "17589": 1, + "17591": 1, + "17605": 1, + "17610": 1, + "17622": 2, + "17627": 1, + "17633": 1, + "17634": 1, + "17638": 1, + "17640": 1, + "17641": 1, + "17642": 1, + "17645": 1, + "17650": 2, + "17651": 1, + "17655": 1, + "17659": 1, + "17660": 1, + "17665": 1, + "17671": 1, + "17684": 1, + "17688": 1, + "17693": 1, + "17702": 1, + "17703": 1, + "17704": 1, + "17705": 1, + "17707": 1, + "17710": 1, + "17711": 1, + "17714": 1, + "17723": 1, + "17725": 1, + "17727": 1, + "17730": 1, + "17734": 1, + "17739": 1, + "17743": 1, + "17751": 1, + "17752": 1, + "17759": 2, + "17766": 1, + "17775": 2, + "17781": 1, + "17782": 1, + "17796": 2, + "17798": 1, + "17800": 1, + "17811": 1, + "17812": 1, + "17817": 1, + "17821": 1, + "17840": 1, + "17843": 1, + "17845": 1, + "17846": 1, + "17849": 1, + "17854": 2, + "17860": 1, + "17862": 1, + "17863": 1, + "17865": 1, + "17870": 1, + "17871": 1, + "17873": 1, + "17874": 1, + "17877": 1, + "17882": 1, + "17883": 2, + "17884": 1, + "17886": 2, + "17887": 1, + "17888": 1, + "17889": 3, + "17890": 1, + "17892": 1, + "17893": 2, + "17894": 1, + "17895": 3, + "17896": 2, + "17897": 1, + "17898": 3, + "17900": 1, + "17902": 2, + "17904": 3, + "17905": 1, + "17906": 3, + "17907": 4, + "17908": 3, + "17909": 1, + "17910": 1, + "17911": 4, + "17912": 1, + "17913": 2, + "17914": 1, + "17916": 1, + "17919": 3, + "17921": 4, + "17924": 2, + "17925": 1, + "17926": 1, + "17927": 2, + "17928": 1, + "17930": 1, + "17931": 1, + "17934": 3, + "17937": 2, + "17938": 1, + "17940": 1, + "17941": 1, + "17943": 2, + "17945": 2, + "17946": 3, + "17947": 1, + "17948": 2, + "17949": 2, + "17950": 1, + "17951": 4, + "17953": 1, + "17954": 3, + "17958": 2, + "17959": 2, + "17963": 1, + "17965": 1, + "17966": 1, + "17969": 1, + "17970": 2, + "17971": 1, + "17975": 1, + "17976": 2, + "17977": 1, + "17978": 1, + "17980": 2, + "17983": 1, + "17984": 1, + "17985": 1, + "17986": 1, + "17989": 1, + "17990": 3, + "17991": 1, + "17992": 1, + "17996": 1, + "17999": 1, + "18001": 1, + "18005": 1, + "18006": 1, + "18010": 1, + "18012": 2, + "18018": 1, + "18027": 2, + "18031": 1, + "18033": 2, + "18039": 1, + "18040": 1, + "18042": 3, + "18043": 1, + "18046": 1, + "18048": 1, + "18049": 1, + "18050": 1, + "18051": 1, + "18054": 1, + "18061": 1, + "18062": 2, + "18063": 1, + "18064": 1, + "18069": 2, + "18077": 2, + "18081": 1, + "18084": 1, + "18091": 1, + "18095": 1, + "18096": 1, + "18102": 1, + "18106": 1, + "18109": 1, + "18112": 1, + "18117": 1, + "18121": 2, + "18128": 1, + "18129": 1, + "18130": 1, + "18131": 2, + "18132": 2, + "18134": 2, + "18136": 1, + "18140": 1, + "18142": 1, + "18144": 1, + "18145": 1, + "18147": 1, + "18150": 2, + "18154": 2, + "18156": 1, + "18163": 2, + "18164": 2, + "18165": 1, + "18168": 1, + "18172": 2, + "18175": 1, + "18178": 2, + "18179": 1, + "18181": 2, + "18183": 1, + "18187": 1, + "18188": 2, + "18189": 1, + "18190": 1, + "18193": 1, + "18196": 1, + "18197": 1, + "18198": 2, + "18200": 1, + "18201": 1, + "18202": 1, + "18205": 2, + "18206": 2, + "18209": 1, + "18210": 1, + "18212": 3, + "18213": 2, + "18217": 1, + "18218": 1, + "18219": 1, + "18221": 1, + "18222": 3, + "18223": 1, + "18224": 1, + "18226": 2, + "18229": 3, + "18230": 1, + "18231": 2, + "18232": 2, + "18233": 1, + "18234": 1, + "18238": 2, + "18239": 1, + "18241": 1, + "18252": 1, + "18259": 1, + "18260": 1, + "18261": 1, + "18262": 1, + "18263": 1, + "18264": 1, + "18265": 2, + "18266": 2, + "18267": 1, + "18268": 1, + "18269": 2, + "18270": 1, + "18271": 4, + "18272": 1, + "18273": 1, + "18274": 2, + "18277": 2, + "18278": 4, + "18279": 1, + "18281": 1, + "18282": 1, + "18286": 1, + "18287": 1, + "18288": 1, + "18292": 1, + "18293": 1, + "18294": 2, + "18296": 1, + "18297": 3, + "18299": 2, + "18300": 1, + "18301": 1, + "18305": 1, + "18306": 1, + "18308": 2, + "18309": 1, + "18310": 4, + "18317": 3, + "18318": 3, + "18319": 1, + "18320": 2, + "18321": 1, + "18322": 2, + "18323": 1, + "18324": 2, + "18327": 2, + "18328": 1, + "18329": 1, + "18330": 2, + "18331": 1, + "18335": 1, + "18338": 2, + "18340": 1, + "18344": 1, + "18347": 1, + "18348": 1, + "18362": 1, + "18365": 1, + "18368": 2, + "18370": 1, + "18373": 1, + "18375": 2, + "18377": 2, + "18379": 1, + "18381": 1, + "18389": 1, + "18390": 1, + "18391": 1, + "18395": 1, + "18397": 1, + "18400": 1, + "18403": 1, + "18411": 1, + "18414": 1, + "18416": 2, + "18418": 1, + "18424": 2, + "18425": 1, + "18426": 1, + "18428": 1, + "18430": 1, + "18437": 1, + "18440": 1, + "18441": 1, + "18443": 1, + "18444": 1, + "18448": 1, + "18452": 1, + "18453": 1, + "18455": 2, + "18458": 2, + "18466": 1, + "18467": 1, + "18475": 1, + "18476": 2, + "18478": 2, + "18479": 1, + "18481": 4, + "18482": 2, + "18483": 1, + "18484": 1, + "18485": 1, + "18487": 2, + "18488": 1, + "18489": 1, + "18491": 2, + "18492": 1, + "18493": 1, + "18497": 1, + "18498": 1, + "18503": 1, + "18511": 1, + "18514": 1, + "18515": 1, + "18517": 1, + "18522": 1, + "18524": 2, + "18525": 1, + "18528": 1, + "18531": 1, + "18533": 1, + "18534": 1, + "18535": 1, + "18540": 1, + "18541": 1, + "18547": 1, + "18548": 2, + "18549": 1, + "18550": 2, + "18552": 1, + "18553": 1, + "18554": 4, + "18555": 1, + "18556": 1, + "18557": 1, + "18559": 1, + "18560": 1, + "18561": 2, + "18562": 3, + "18563": 2, + "18564": 1, + "18565": 1, + "18567": 1, + "18568": 1, + "18569": 1, + "18570": 1, + "18571": 1, + "18573": 1, + "18574": 1, + "18575": 1, + "18578": 1, + "18580": 2, + "18581": 1, + "18586": 1, + "18587": 1, + "18588": 1, + "18589": 3, + "18592": 1, + "18595": 1, + "18596": 1, + "18597": 1, + "18598": 1, + "18599": 1, + "18602": 1, + "18607": 1, + "18609": 1, + "18613": 1, + "18615": 2, + "18616": 1, + "18617": 1, + "18618": 1, + "18621": 1, + "18624": 1, + "18626": 1, + "18627": 2, + "18629": 1, + "18635": 2, + "18654": 1, + "18954": 1, + "32772": 1000 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333535266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882c6256882c5cd" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "c6256882" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_3_2.html b/autobahn/client/tungstenite_case_12_3_2.html new file mode 100644 index 0000000..3fc793f --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_2.html @@ -0,0 +1,394 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.3.2 : Pass - 108 ms @ 2020-09-07T18:46:36.030Z

+

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=339&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Nf49tN1pXyXkTKWO0WR5/g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: QLmsSZQMMilQ1iivIvglAX9TkmM=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
18236
19238
21121
22122
23123
24124
25125
26378
284112
29387
30130
3113403
3217544
3319627
3424816
35371295
36582088
37612257
38803040
39742886
40973880
411084428
42883696
43612623
44602640
45391755
46351610
47271269
48221056
4914686
509450
519459
528416
532106
54154
554220
562112
57157
58158
59159
60160
61161
62162
63163
64164
66166
68168
71171
2571257
Total100240866
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
14228
15230
17117
18118
19119
20120
21121
22244
24248
256150
26126
279243
2816448
2919551
3026780
3127837
32521664
33622046
34872958
35722520
36903240
371053885
38873306
39692691
40582320
41481968
42371554
43331419
4421924
4515675
469414
4710470
488384
49298
50150
514204
522104
53153
54154
55155
56156
57157
58158
59159
60160
62162
64164
67167
2521252
Total100237075
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333339266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882e56b89dde683
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6535366238396464
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_3_2.json b/autobahn/client/tungstenite_case_12_3_2.json new file mode 100644 index 0000000..699bdc3 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_2.json @@ -0,0 +1,241 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 339, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 108, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=339&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Nf49tN1pXyXkTKWO0WR5/g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: QLmsSZQMMilQ1iivIvglAX9TkmM=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.3.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "18": 2, + "19": 2, + "21": 1, + "22": 1, + "23": 1, + "24": 1, + "25": 1, + "26": 3, + "28": 4, + "29": 3, + "30": 1, + "31": 13, + "32": 17, + "33": 19, + "34": 24, + "35": 37, + "36": 58, + "37": 61, + "38": 80, + "39": 74, + "40": 97, + "41": 108, + "42": 88, + "43": 61, + "44": 60, + "45": 39, + "46": 35, + "47": 27, + "48": 22, + "49": 14, + "50": 9, + "51": 9, + "52": 8, + "53": 2, + "54": 1, + "55": 4, + "56": 2, + "57": 1, + "58": 1, + "59": 1, + "60": 1, + "61": 1, + "62": 1, + "63": 1, + "64": 1, + "66": 1, + "68": 1, + "71": 1, + "257": 1 + }, + "started": "2020-09-07T18:46:36.030Z", + "trafficStats": { + "incomingCompressionRatio": 0.540640625, + "incomingOctetsAppLevel": 64000, + "incomingOctetsWebSocketLevel": 34601, + "incomingOctetsWireLevel": 40601, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.17340539290771942, + "outgoingCompressionRatio": 0.544046875, + "outgoingOctetsAppLevel": 64000, + "outgoingOctetsWebSocketLevel": 34819, + "outgoingOctetsWireLevel": 36819, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.05743990350096212, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "14": 2, + "15": 2, + "17": 1, + "18": 1, + "19": 1, + "20": 1, + "21": 1, + "22": 2, + "24": 2, + "25": 6, + "26": 1, + "27": 9, + "28": 16, + "29": 19, + "30": 26, + "31": 27, + "32": 52, + "33": 62, + "34": 87, + "35": 72, + "36": 90, + "37": 105, + "38": 87, + "39": 69, + "40": 58, + "41": 48, + "42": 37, + "43": 33, + "44": 21, + "45": 15, + "46": 9, + "47": 10, + "48": 8, + "49": 2, + "50": 1, + "51": 4, + "52": 2, + "53": 1, + "54": 1, + "55": 1, + "56": 1, + "57": 1, + "58": 1, + "59": 1, + "60": 1, + "62": 1, + "64": 1, + "67": 1, + "252": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333339266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882e56b89dde683" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "e56b89dd" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_3_3.html b/autobahn/client/tungstenite_case_12_3_3.html new file mode 100644 index 0000000..e52618b --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_3.html @@ -0,0 +1,475 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.3.3 : Pass - 160 ms @ 2020-09-07T18:46:36.139Z

+

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=340&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: v0xm/tWx633Q9BYzHB3ZoQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: vgJIu9+/XT9o86XWkhrRbp9Yjgk=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
24124
71171
73173
78178
79179
80180
81181
83183
84184
85185
86186
872174
89189
93193
94194
964384
972194
982196
993297
1003300
1015505
1023306
1037721
1045520
1057735
1065530
1075535
1084432
109111199
110111210
111111221
112182016
113121356
114171938
115161840
116111276
117182106
118192242
119222618
120172040
121192299
122232806
123313813
124313844
125283500
126243024
127253175
128374736
129283612
130455850
131293799
134243216
135324320
136385168
137324384
138314278
139273753
140243360
141243384
142243408
143233289
144162304
145131885
146121752
14781176
14891332
149142086
15071050
151101510
1523456
153111683
15471078
15571085
1565780
1575785
1584632
1591159
1621162
1631163
1671167
1683504
1691169
1721172
1741174
1751175
1781178
1801180
1961196
2001200
2101210
2571257
Total1002129677
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
22122
67167
69169
752150
76176
77177
80180
823246
832166
85185
89189
91191
923276
93193
94194
955475
962192
975485
983294
995495
1005500
1016606
1025510
1036618
1044416
1057735
1066636
107111177
108111188
109111199
110181980
111192109
112141568
113151695
114151710
115182070
116222552
117222574
118192242
119252975
120303600
121263146
122313782
123293567
124313844
125263250
126374662
127334191
130334290
131283668
132334356
133364788
134314154
135273645
136283808
137233151
138263588
139212919
140192660
141162256
142162272
143152145
144152160
145121740
14691314
147101470
1486888
1496894
1506900
151101510
1524608
15381224
1543462
1551155
1581158
1591159
1631163
1642328
1652330
1681168
1701170
1711171
1741174
1761176
1921192
1961196
2061206
2521252
Total1002126596
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333430266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 120.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88825337c7b350df
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3533333763376233
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_3_3.json b/autobahn/client/tungstenite_case_12_3_3.json new file mode 100644 index 0000000..78d6c9f --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_3.json @@ -0,0 +1,322 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 340, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 160, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=340&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: v0xm/tWx633Q9BYzHB3ZoQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: vgJIu9+/XT9o86XWkhrRbp9Yjgk=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.3.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "24": 1, + "71": 1, + "73": 1, + "78": 1, + "79": 1, + "80": 1, + "81": 1, + "83": 1, + "84": 1, + "85": 1, + "86": 1, + "87": 2, + "89": 1, + "93": 1, + "94": 1, + "96": 4, + "97": 2, + "98": 2, + "99": 3, + "100": 3, + "101": 5, + "102": 3, + "103": 7, + "104": 5, + "105": 7, + "106": 5, + "107": 5, + "108": 4, + "109": 11, + "110": 11, + "111": 11, + "112": 18, + "113": 12, + "114": 17, + "115": 16, + "116": 11, + "117": 18, + "118": 19, + "119": 22, + "120": 17, + "121": 19, + "122": 23, + "123": 31, + "124": 31, + "125": 28, + "126": 24, + "127": 25, + "128": 37, + "129": 28, + "130": 45, + "131": 29, + "134": 24, + "135": 32, + "136": 38, + "137": 32, + "138": 31, + "139": 27, + "140": 24, + "141": 24, + "142": 24, + "143": 23, + "144": 16, + "145": 13, + "146": 12, + "147": 8, + "148": 9, + "149": 14, + "150": 7, + "151": 10, + "152": 3, + "153": 11, + "154": 7, + "155": 7, + "156": 5, + "157": 5, + "158": 4, + "159": 1, + "162": 1, + "163": 1, + "167": 1, + "168": 3, + "169": 1, + "172": 1, + "174": 1, + "175": 1, + "178": 1, + "180": 1, + "196": 1, + "200": 1, + "210": 1, + "257": 1 + }, + "started": "2020-09-07T18:46:36.139Z", + "trafficStats": { + "incomingCompressionRatio": 0.47875, + "incomingOctetsAppLevel": 256000, + "incomingOctetsWebSocketLevel": 122560, + "incomingOctetsWireLevel": 129412, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.055907310704960834, + "outgoingCompressionRatio": 0.4821328125, + "outgoingOctetsAppLevel": 256000, + "outgoingOctetsWebSocketLevel": 123426, + "outgoingOctetsWireLevel": 126340, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.02360928815646622, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "22": 1, + "67": 1, + "69": 1, + "75": 2, + "76": 1, + "77": 1, + "80": 1, + "82": 3, + "83": 2, + "85": 1, + "89": 1, + "91": 1, + "92": 3, + "93": 1, + "94": 1, + "95": 5, + "96": 2, + "97": 5, + "98": 3, + "99": 5, + "100": 5, + "101": 6, + "102": 5, + "103": 6, + "104": 4, + "105": 7, + "106": 6, + "107": 11, + "108": 11, + "109": 11, + "110": 18, + "111": 19, + "112": 14, + "113": 15, + "114": 15, + "115": 18, + "116": 22, + "117": 22, + "118": 19, + "119": 25, + "120": 30, + "121": 26, + "122": 31, + "123": 29, + "124": 31, + "125": 26, + "126": 37, + "127": 33, + "130": 33, + "131": 28, + "132": 33, + "133": 36, + "134": 31, + "135": 27, + "136": 28, + "137": 23, + "138": 26, + "139": 21, + "140": 19, + "141": 16, + "142": 16, + "143": 15, + "144": 15, + "145": 12, + "146": 9, + "147": 10, + "148": 6, + "149": 6, + "150": 6, + "151": 10, + "152": 4, + "153": 8, + "154": 3, + "155": 1, + "158": 1, + "159": 1, + "163": 1, + "164": 2, + "165": 2, + "168": 1, + "170": 1, + "171": 1, + "174": 1, + "176": 1, + "192": 1, + "196": 1, + "206": 1, + "252": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333430266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 120 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88825337c7b350df" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "5337c7b3" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_3_4.html b/autobahn/client/tungstenite_case_12_3_4.html new file mode 100644 index 0000000..7d9f723 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_4.html @@ -0,0 +1,620 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.3.4 : Pass - 400 ms @ 2020-09-07T18:46:36.300Z

+

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=341&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: VoGc55N00nU4wfcO6QjYWQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: AcoHR0Lj6ODY7j2VU8wEWXOg//E=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
3011301
3041304
3091309
3101310
3302660
3311331
3321332
33531005
3381338
3391339
3411341
3431343
3451345
3461346
3472694
3492698
3501350
3512702
3551355
3571357
3601360
3611361
3621362
3631363
3651365
3671367
36831104
3692738
3701370
37331119
3742748
3771377
3812762
3832766
3841384
3851385
3861386
38741548
38831164
3891389
3901390
3911391
39231176
3932786
39431182
3951395
39631188
39772779
39893582
39951995
40072800
40152005
40241608
403114433
404104040
40583240
4062812
40731221
40862448
40993681
41072870
41183288
41252060
41341652
41431242
41552075
41641664
41731251
41883344
419145866
420145880
421114631
422104220
42383384
424114664
425198075
426135538
427135551
428177276
42962574
430135590
431114741
432114752
433135629
434229548
435219135
436229592
437187866
4382410512
439229658
440219240
441177497
442208840
443156645
444146216
445156675
44694014
447167152
448135824
449177633
450167200
451146314
452219492
453135889
454167264
45573185
45694104
457125484
458125496
459104590
46052300
461125532
46252310
463104630
46441856
46583720
46683728
467167472
46883744
46983752
47052350
47152355
47241888
4732946
47452370
47552375
47673332
47831434
47931437
4801480
48131443
4832966
4841484
4852970
48641944
48831464
4892978
4901490
4912982
49331479
4942988
4952990
49652480
49731491
49852490
4992998
5001500
50121002
50221004
50321006
50442016
5061506
5151515
5161516
51731551
52031560
5351535
54521090
5491549
5521552
5571557
5671567
6011601
Total1002437752
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
2991299
3011301
3072614
3262652
3271327
3281328
3312662
3321332
3341334
3351335
3381338
3401340
3411341
34331029
3452690
3461346
3472694
3511351
3531353
3561356
3582716
3601360
36431092
3671367
3692738
3701370
37231116
37331119
3751375
3811381
3832766
3842768
3852770
3862772
3872774
3882776
3891389
39241568
39383144
3941394
3951395
39631188
39772779
39883184
399103990
40072800
40141604
40241608
40372821
40493636
40562430
406114466
407114477
40852040
40983272
41072870
41131233
41262472
4132826
41462484
41583320
41683328
41762502
418145852
41972933
420104200
421156315
422135486
423145922
424104240
425135525
426114686
42772989
428187704
42962574
43073010
431177327
432146048
433166928
434156510
435135655
436146104
4372310051
438177446
439229658
4402912760
4412711907
442146188
443187974
444135772
445135785
446167136
447114917
44883584
449198531
450135850
451156765
452135876
453146342
4542410896
455125460
456125472
45794113
45862748
45941836
46052300
46194149
462125544
463156945
464177888
46583720
466104660
46783736
4682936
46962814
47031410
47173297
4722944
47341892
47441896
47531425
47652380
4772954
4781478
4792958
48041920
4812962
48262892
4842968
4861486
4871487
4882976
4892978
49031470
4912982
49241968
4931493
49441976
49531485
49631488
49731491
49831494
4991499
50031500
50131503
50221004
5101510
51231536
5161516
5181518
5191519
5201520
5311531
54121082
5451545
5481548
5531553
5631563
5971597
Total1002436719
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333431266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 240.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882d9a3ee28da4b
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6439613365653238
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_3_4.json b/autobahn/client/tungstenite_case_12_3_4.json new file mode 100644 index 0000000..38e710c --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_4.json @@ -0,0 +1,467 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 341, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 400, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=341&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: VoGc55N00nU4wfcO6QjYWQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: AcoHR0Lj6ODY7j2VU8wEWXOg//E=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.3.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "301": 1, + "304": 1, + "309": 1, + "310": 1, + "330": 2, + "331": 1, + "332": 1, + "335": 3, + "338": 1, + "339": 1, + "341": 1, + "343": 1, + "345": 1, + "346": 1, + "347": 2, + "349": 2, + "350": 1, + "351": 2, + "355": 1, + "357": 1, + "360": 1, + "361": 1, + "362": 1, + "363": 1, + "365": 1, + "367": 1, + "368": 3, + "369": 2, + "370": 1, + "373": 3, + "374": 2, + "377": 1, + "381": 2, + "383": 2, + "384": 1, + "385": 1, + "386": 1, + "387": 4, + "388": 3, + "389": 1, + "390": 1, + "391": 1, + "392": 3, + "393": 2, + "394": 3, + "395": 1, + "396": 3, + "397": 7, + "398": 9, + "399": 5, + "400": 7, + "401": 5, + "402": 4, + "403": 11, + "404": 10, + "405": 8, + "406": 2, + "407": 3, + "408": 6, + "409": 9, + "410": 7, + "411": 8, + "412": 5, + "413": 4, + "414": 3, + "415": 5, + "416": 4, + "417": 3, + "418": 8, + "419": 14, + "420": 14, + "421": 11, + "422": 10, + "423": 8, + "424": 11, + "425": 19, + "426": 13, + "427": 13, + "428": 17, + "429": 6, + "430": 13, + "431": 11, + "432": 11, + "433": 13, + "434": 22, + "435": 21, + "436": 22, + "437": 18, + "438": 24, + "439": 22, + "440": 21, + "441": 17, + "442": 20, + "443": 15, + "444": 14, + "445": 15, + "446": 9, + "447": 16, + "448": 13, + "449": 17, + "450": 16, + "451": 14, + "452": 21, + "453": 13, + "454": 16, + "455": 7, + "456": 9, + "457": 12, + "458": 12, + "459": 10, + "460": 5, + "461": 12, + "462": 5, + "463": 10, + "464": 4, + "465": 8, + "466": 8, + "467": 16, + "468": 8, + "469": 8, + "470": 5, + "471": 5, + "472": 4, + "473": 2, + "474": 5, + "475": 5, + "476": 7, + "478": 3, + "479": 3, + "480": 1, + "481": 3, + "483": 2, + "484": 1, + "485": 2, + "486": 4, + "488": 3, + "489": 2, + "490": 1, + "491": 2, + "493": 3, + "494": 2, + "495": 2, + "496": 5, + "497": 3, + "498": 5, + "499": 2, + "500": 1, + "501": 2, + "502": 2, + "503": 2, + "504": 4, + "506": 1, + "515": 1, + "516": 1, + "517": 3, + "520": 3, + "535": 1, + "545": 2, + "549": 1, + "552": 1, + "557": 1, + "567": 1, + "601": 1 + }, + "started": "2020-09-07T18:46:36.300Z", + "trafficStats": { + "incomingCompressionRatio": 0.4194208984375, + "incomingOctetsAppLevel": 1024000, + "incomingOctetsWebSocketLevel": 429487, + "incomingOctetsWireLevel": 437487, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.018626873456006818, + "outgoingCompressionRatio": 0.4223271484375, + "outgoingOctetsAppLevel": 1024000, + "outgoingOctetsWebSocketLevel": 432463, + "outgoingOctetsWireLevel": 436463, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.009249346186841418, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "299": 1, + "301": 1, + "307": 2, + "326": 2, + "327": 1, + "328": 1, + "331": 2, + "332": 1, + "334": 1, + "335": 1, + "338": 1, + "340": 1, + "341": 1, + "343": 3, + "345": 2, + "346": 1, + "347": 2, + "351": 1, + "353": 1, + "356": 1, + "358": 2, + "360": 1, + "364": 3, + "367": 1, + "369": 2, + "370": 1, + "372": 3, + "373": 3, + "375": 1, + "381": 1, + "383": 2, + "384": 2, + "385": 2, + "386": 2, + "387": 2, + "388": 2, + "389": 1, + "392": 4, + "393": 8, + "394": 1, + "395": 1, + "396": 3, + "397": 7, + "398": 8, + "399": 10, + "400": 7, + "401": 4, + "402": 4, + "403": 7, + "404": 9, + "405": 6, + "406": 11, + "407": 11, + "408": 5, + "409": 8, + "410": 7, + "411": 3, + "412": 6, + "413": 2, + "414": 6, + "415": 8, + "416": 8, + "417": 6, + "418": 14, + "419": 7, + "420": 10, + "421": 15, + "422": 13, + "423": 14, + "424": 10, + "425": 13, + "426": 11, + "427": 7, + "428": 18, + "429": 6, + "430": 7, + "431": 17, + "432": 14, + "433": 16, + "434": 15, + "435": 13, + "436": 14, + "437": 23, + "438": 17, + "439": 22, + "440": 29, + "441": 27, + "442": 14, + "443": 18, + "444": 13, + "445": 13, + "446": 16, + "447": 11, + "448": 8, + "449": 19, + "450": 13, + "451": 15, + "452": 13, + "453": 14, + "454": 24, + "455": 12, + "456": 12, + "457": 9, + "458": 6, + "459": 4, + "460": 5, + "461": 9, + "462": 12, + "463": 15, + "464": 17, + "465": 8, + "466": 10, + "467": 8, + "468": 2, + "469": 6, + "470": 3, + "471": 7, + "472": 2, + "473": 4, + "474": 4, + "475": 3, + "476": 5, + "477": 2, + "478": 1, + "479": 2, + "480": 4, + "481": 2, + "482": 6, + "484": 2, + "486": 1, + "487": 1, + "488": 2, + "489": 2, + "490": 3, + "491": 2, + "492": 4, + "493": 1, + "494": 4, + "495": 3, + "496": 3, + "497": 3, + "498": 3, + "499": 1, + "500": 3, + "501": 3, + "502": 2, + "510": 1, + "512": 3, + "516": 1, + "518": 1, + "519": 1, + "520": 1, + "531": 1, + "541": 2, + "545": 1, + "548": 1, + "553": 1, + "563": 1, + "597": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333431266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 240 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882d9a3ee28da4b" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "d9a3ee28" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_3_5.html b/autobahn/client/tungstenite_case_12_3_5.html new file mode 100644 index 0000000..008c7fe --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_5.html @@ -0,0 +1,928 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.3.5 : Pass - 1033 ms @ 2020-09-07T18:46:36.700Z

+

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=342&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Kx/LMnJrFwI3OhY1xS1h6A==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: ysTlR34ujstY+bpqW8LsdGHwL7c=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
128511285
128711287
128911289
129011290
129111291
129211292
129322586
129511295
129622592
129722594
129911299
130111301
130211302
130411304
130511305
131011310
131111311
131411314
132011320
139811398
140411404
140811408
141011410
141911419
142611426
143411434
143511435
143711437
145011450
145311453
145511455
145811458
146611466
146811468
146911469
147322946
147511475
147722954
147811478
148511485
148811488
149011490
149311493
149711497
149811498
149934497
150023000
150146004
150223004
150411504
150523010
150723014
150911509
151023020
151134533
151211512
151323026
151511515
151811518
151911519
152046080
152111521
152211522
152311523
152434572
152511525
152646104
152711527
152811528
152934587
153023060
153157655
1532710724
153311533
1534812272
153546140
153669216
153757685
1538710766
153934617
154069240
154146164
154234626
1543913887
154446176
154557725
1546913914
154711547
1548710836
1549710843
1550913950
155169306
155234656
15531015530
1554710878
155511555
1557710899
155869348
155934677
156023120
156146244
156246248
156311563
156423128
156511565
156646264
156723134
156869408
157034710
1571710997
157257860
157357865
157446296
157557875
157657880
157746308
157857890
1579812632
158057900
1581711067
158269492
158357915
158457920
158546340
158646344
158723174
158834764
158969534
159011590
159146364
1592711144
159357965
159446376
159569570
159646384
159746388
159857990
159969594
160069600
1601914409
160258010
160334809
1604711228
160569630
160634818
1607812856
160834824
160969654
1610812880
161134833
161258060
161334839
161446456
161546460
161669696
161711617
161823236
161923238
162011620
162111621
162246488
162323246
162411624
162523250
162634878
162734881
162846512
162911629
163034890
163134893
163246528
163346532
163469804
163534905
1636914724
1637711459
1638711466
163958195
164046560
164146564
1642813136
164369858
164458220
1645813160
164611646
164734941
164811648
164923298
165058250
165146604
165234956
165358265
165446616
165546620
165658280
165769942
165858290
165958295
1660711620
1661813288
166258310
166323326
166458320
166534995
166634998
1667915003
166858340
1669915021
16701016700
1671610026
1672813376
167346692
167435022
1675610050
167635028
1677711739
167823356
167923358
168023360
168135043
168235046
168346732
1684610104
1685610110
1686711802
168746748
168858440
1689711823
1690711830
169123382
169211692
169346772
169435082
169558475
169646784
169723394
1698610188
169935097
170023400
170146804
170223404
170358515
170446816
170535115
170623412
170746828
170823416
171123422
171323426
171423428
171511715
171646864
171711717
171811718
171935157
172023440
172123442
172211722
172311723
172411724
172523450
172623452
172723454
173011730
173111731
173523470
173711737
174023480
174123482
174423488
174511745
174611746
174823496
175011750
175211752
175311753
175411754
175623512
175711757
175811758
175911759
176011760
176111761
176411764
176547060
176611766
176711767
176823536
177011770
177311773
177511775
177811778
178511785
178911789
179011790
179135373
179511795
180023600
180911809
181011810
181211812
181323626
181511815
181611816
181811818
182223644
182623652
182723654
182911829
183511835
184423688
184511845
184611846
184711847
185011850
185123702
185911859
214212142
Total10021616451
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
128211282
128411284
128822576
128911289
129011290
129122582
129222584
129422588
129711297
129922598
130022600
130111301
130511305
130711307
130911309
131511315
139411394
140011400
140411404
140611406
141511415
142511425
143222864
143311433
144611446
145311453
146111461
146411464
146522930
147411474
148011480
148311483
148611486
148811488
149122982
149311493
149711497
149811498
149922998
150011500
150511505
150711507
150934527
151057550
151123022
151311513
151423028
151511515
151611516
151757585
151834554
152011520
152123042
152223044
152311523
152623052
152711527
152823056
152923058
153023060
153123062
153234596
153334599
153446136
153534605
153611536
153746148
153811538
153957695
154023080
154123082
154234626
154334629
154423088
154511545
154657730
154757735
154846192
155034650
155134653
155269312
1553812424
155434662
1555710885
155657780
1557812456
1558914022
1559710913
1560812480
156123122
15621117182
156357815
156411564
156523130
156657830
156746268
156811568
156969414
157069420
157157855
1572711004
157357865
157457870
157523150
157623152
157746308
157811578
157923158
1580711060
158169486
158269492
158357915
158434752
158523170
1586711102
158746348
158823176
158946356
159057950
159157955
15921117512
159369558
1594711158
159534785
159646384
1597711179
159846392
1599812792
160058000
160123202
160223204
1603711221
160434812
160523210
160611606
160758035
160858040
160911609
161046440
161146444
1612914508
161334839
161534845
161658080
161746468
161846472
161969714
162046480
162123242
162258110
162369738
162469744
162546500
162646504
162746508
162858140
162969774
163023260
163134893
163234896
163311633
1634711438
163534905
163646544
163711637
163823276
163923278
1640711480
164134923
164234926
164346572
164469864
16451118095
164646584
1647813176
164869888
164946596
1650813200
1651914859
165246608
165346612
165411654
165523310
165634968
165746628
165823316
165958295
166023320
166146644
166246648
166323326
166434992
166511665
166669996
166723334
16681016680
166958345
1670610020
1671813368
1672915048
167358365
167423348
167546700
1676813408
167758385
167858390
1679610074
1680610080
168135043
16821118502
16831016830
1684915156
168558425
168635058
168746748
168923378
169046760
169158455
1692915228
169358465
1694711858
1695711865
169646784
16971016970
169823396
169911699
1700711900
170123402
170246808
170323406
170435112
170558525
170635118
170723414
170823416
170911709
171011710
171146844
171346852
171446856
171523430
171623432
171735151
171835154
171911719
172011720
172135163
1722712054
172311723
172435172
172535175
172635178
172811728
172923458
173011730
173123462
173211732
173323466
173823476
174011740
174535235
174611746
174723494
174823496
175123502
175311753
175423508
175523510
175611756
175711757
175911759
176011760
176211762
176511765
176711767
177035310
177123542
177235316
177511775
177611776
178411784
178711787
178911789
179011790
179111791
179211792
179411794
179611796
179723594
180011800
180411804
181011810
181411814
181611816
182023640
182123642
182211822
182511825
182711827
182823656
182911829
183111831
183611836
184011840
184423688
184511845
184711847
184811848
185011850
185411854
186111861
213812138
Total10021624398
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333432266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88825ca8f9c55f40
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3563613866396335
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_3_5.json b/autobahn/client/tungstenite_case_12_3_5.json new file mode 100644 index 0000000..1549362 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_5.json @@ -0,0 +1,775 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 342, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 1033, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=342&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Kx/LMnJrFwI3OhY1xS1h6A==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: ysTlR34ujstY+bpqW8LsdGHwL7c=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.3.5", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "1285": 1, + "1287": 1, + "1289": 1, + "1290": 1, + "1291": 1, + "1292": 1, + "1293": 2, + "1295": 1, + "1296": 2, + "1297": 2, + "1299": 1, + "1301": 1, + "1302": 1, + "1304": 1, + "1305": 1, + "1310": 1, + "1311": 1, + "1314": 1, + "1320": 1, + "1398": 1, + "1404": 1, + "1408": 1, + "1410": 1, + "1419": 1, + "1426": 1, + "1434": 1, + "1435": 1, + "1437": 1, + "1450": 1, + "1453": 1, + "1455": 1, + "1458": 1, + "1466": 1, + "1468": 1, + "1469": 1, + "1473": 2, + "1475": 1, + "1477": 2, + "1478": 1, + "1485": 1, + "1488": 1, + "1490": 1, + "1493": 1, + "1497": 1, + "1498": 1, + "1499": 3, + "1500": 2, + "1501": 4, + "1502": 2, + "1504": 1, + "1505": 2, + "1507": 2, + "1509": 1, + "1510": 2, + "1511": 3, + "1512": 1, + "1513": 2, + "1515": 1, + "1518": 1, + "1519": 1, + "1520": 4, + "1521": 1, + "1522": 1, + "1523": 1, + "1524": 3, + "1525": 1, + "1526": 4, + "1527": 1, + "1528": 1, + "1529": 3, + "1530": 2, + "1531": 5, + "1532": 7, + "1533": 1, + "1534": 8, + "1535": 4, + "1536": 6, + "1537": 5, + "1538": 7, + "1539": 3, + "1540": 6, + "1541": 4, + "1542": 3, + "1543": 9, + "1544": 4, + "1545": 5, + "1546": 9, + "1547": 1, + "1548": 7, + "1549": 7, + "1550": 9, + "1551": 6, + "1552": 3, + "1553": 10, + "1554": 7, + "1555": 1, + "1557": 7, + "1558": 6, + "1559": 3, + "1560": 2, + "1561": 4, + "1562": 4, + "1563": 1, + "1564": 2, + "1565": 1, + "1566": 4, + "1567": 2, + "1568": 6, + "1570": 3, + "1571": 7, + "1572": 5, + "1573": 5, + "1574": 4, + "1575": 5, + "1576": 5, + "1577": 4, + "1578": 5, + "1579": 8, + "1580": 5, + "1581": 7, + "1582": 6, + "1583": 5, + "1584": 5, + "1585": 4, + "1586": 4, + "1587": 2, + "1588": 3, + "1589": 6, + "1590": 1, + "1591": 4, + "1592": 7, + "1593": 5, + "1594": 4, + "1595": 6, + "1596": 4, + "1597": 4, + "1598": 5, + "1599": 6, + "1600": 6, + "1601": 9, + "1602": 5, + "1603": 3, + "1604": 7, + "1605": 6, + "1606": 3, + "1607": 8, + "1608": 3, + "1609": 6, + "1610": 8, + "1611": 3, + "1612": 5, + "1613": 3, + "1614": 4, + "1615": 4, + "1616": 6, + "1617": 1, + "1618": 2, + "1619": 2, + "1620": 1, + "1621": 1, + "1622": 4, + "1623": 2, + "1624": 1, + "1625": 2, + "1626": 3, + "1627": 3, + "1628": 4, + "1629": 1, + "1630": 3, + "1631": 3, + "1632": 4, + "1633": 4, + "1634": 6, + "1635": 3, + "1636": 9, + "1637": 7, + "1638": 7, + "1639": 5, + "1640": 4, + "1641": 4, + "1642": 8, + "1643": 6, + "1644": 5, + "1645": 8, + "1646": 1, + "1647": 3, + "1648": 1, + "1649": 2, + "1650": 5, + "1651": 4, + "1652": 3, + "1653": 5, + "1654": 4, + "1655": 4, + "1656": 5, + "1657": 6, + "1658": 5, + "1659": 5, + "1660": 7, + "1661": 8, + "1662": 5, + "1663": 2, + "1664": 5, + "1665": 3, + "1666": 3, + "1667": 9, + "1668": 5, + "1669": 9, + "1670": 10, + "1671": 6, + "1672": 8, + "1673": 4, + "1674": 3, + "1675": 6, + "1676": 3, + "1677": 7, + "1678": 2, + "1679": 2, + "1680": 2, + "1681": 3, + "1682": 3, + "1683": 4, + "1684": 6, + "1685": 6, + "1686": 7, + "1687": 4, + "1688": 5, + "1689": 7, + "1690": 7, + "1691": 2, + "1692": 1, + "1693": 4, + "1694": 3, + "1695": 5, + "1696": 4, + "1697": 2, + "1698": 6, + "1699": 3, + "1700": 2, + "1701": 4, + "1702": 2, + "1703": 5, + "1704": 4, + "1705": 3, + "1706": 2, + "1707": 4, + "1708": 2, + "1711": 2, + "1713": 2, + "1714": 2, + "1715": 1, + "1716": 4, + "1717": 1, + "1718": 1, + "1719": 3, + "1720": 2, + "1721": 2, + "1722": 1, + "1723": 1, + "1724": 1, + "1725": 2, + "1726": 2, + "1727": 2, + "1730": 1, + "1731": 1, + "1735": 2, + "1737": 1, + "1740": 2, + "1741": 2, + "1744": 2, + "1745": 1, + "1746": 1, + "1748": 2, + "1750": 1, + "1752": 1, + "1753": 1, + "1754": 1, + "1756": 2, + "1757": 1, + "1758": 1, + "1759": 1, + "1760": 1, + "1761": 1, + "1764": 1, + "1765": 4, + "1766": 1, + "1767": 1, + "1768": 2, + "1770": 1, + "1773": 1, + "1775": 1, + "1778": 1, + "1785": 1, + "1789": 1, + "1790": 1, + "1791": 3, + "1795": 1, + "1800": 2, + "1809": 1, + "1810": 1, + "1812": 1, + "1813": 2, + "1815": 1, + "1816": 1, + "1818": 1, + "1822": 2, + "1826": 2, + "1827": 2, + "1829": 1, + "1835": 1, + "1844": 2, + "1845": 1, + "1846": 1, + "1847": 1, + "1850": 1, + "1851": 2, + "1859": 1, + "2142": 1 + }, + "started": "2020-09-07T18:46:36.700Z", + "trafficStats": { + "incomingCompressionRatio": 0.39262353515625, + "incomingOctetsAppLevel": 4096000, + "incomingOctetsWebSocketLevel": 1608186, + "incomingOctetsWireLevel": 1616186, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.004974548963863633, + "outgoingCompressionRatio": 0.39554248046875, + "outgoingOctetsAppLevel": 4096000, + "outgoingOctetsWebSocketLevel": 1620142, + "outgoingOctetsWireLevel": 1624142, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.002468919391016343, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "1282": 1, + "1284": 1, + "1288": 2, + "1289": 1, + "1290": 1, + "1291": 2, + "1292": 2, + "1294": 2, + "1297": 1, + "1299": 2, + "1300": 2, + "1301": 1, + "1305": 1, + "1307": 1, + "1309": 1, + "1315": 1, + "1394": 1, + "1400": 1, + "1404": 1, + "1406": 1, + "1415": 1, + "1425": 1, + "1432": 2, + "1433": 1, + "1446": 1, + "1453": 1, + "1461": 1, + "1464": 1, + "1465": 2, + "1474": 1, + "1480": 1, + "1483": 1, + "1486": 1, + "1488": 1, + "1491": 2, + "1493": 1, + "1497": 1, + "1498": 1, + "1499": 2, + "1500": 1, + "1505": 1, + "1507": 1, + "1509": 3, + "1510": 5, + "1511": 2, + "1513": 1, + "1514": 2, + "1515": 1, + "1516": 1, + "1517": 5, + "1518": 3, + "1520": 1, + "1521": 2, + "1522": 2, + "1523": 1, + "1526": 2, + "1527": 1, + "1528": 2, + "1529": 2, + "1530": 2, + "1531": 2, + "1532": 3, + "1533": 3, + "1534": 4, + "1535": 3, + "1536": 1, + "1537": 4, + "1538": 1, + "1539": 5, + "1540": 2, + "1541": 2, + "1542": 3, + "1543": 3, + "1544": 2, + "1545": 1, + "1546": 5, + "1547": 5, + "1548": 4, + "1550": 3, + "1551": 3, + "1552": 6, + "1553": 8, + "1554": 3, + "1555": 7, + "1556": 5, + "1557": 8, + "1558": 9, + "1559": 7, + "1560": 8, + "1561": 2, + "1562": 11, + "1563": 5, + "1564": 1, + "1565": 2, + "1566": 5, + "1567": 4, + "1568": 1, + "1569": 6, + "1570": 6, + "1571": 5, + "1572": 7, + "1573": 5, + "1574": 5, + "1575": 2, + "1576": 2, + "1577": 4, + "1578": 1, + "1579": 2, + "1580": 7, + "1581": 6, + "1582": 6, + "1583": 5, + "1584": 3, + "1585": 2, + "1586": 7, + "1587": 4, + "1588": 2, + "1589": 4, + "1590": 5, + "1591": 5, + "1592": 11, + "1593": 6, + "1594": 7, + "1595": 3, + "1596": 4, + "1597": 7, + "1598": 4, + "1599": 8, + "1600": 5, + "1601": 2, + "1602": 2, + "1603": 7, + "1604": 3, + "1605": 2, + "1606": 1, + "1607": 5, + "1608": 5, + "1609": 1, + "1610": 4, + "1611": 4, + "1612": 9, + "1613": 3, + "1615": 3, + "1616": 5, + "1617": 4, + "1618": 4, + "1619": 6, + "1620": 4, + "1621": 2, + "1622": 5, + "1623": 6, + "1624": 6, + "1625": 4, + "1626": 4, + "1627": 4, + "1628": 5, + "1629": 6, + "1630": 2, + "1631": 3, + "1632": 3, + "1633": 1, + "1634": 7, + "1635": 3, + "1636": 4, + "1637": 1, + "1638": 2, + "1639": 2, + "1640": 7, + "1641": 3, + "1642": 3, + "1643": 4, + "1644": 6, + "1645": 11, + "1646": 4, + "1647": 8, + "1648": 6, + "1649": 4, + "1650": 8, + "1651": 9, + "1652": 4, + "1653": 4, + "1654": 1, + "1655": 2, + "1656": 3, + "1657": 4, + "1658": 2, + "1659": 5, + "1660": 2, + "1661": 4, + "1662": 4, + "1663": 2, + "1664": 3, + "1665": 1, + "1666": 6, + "1667": 2, + "1668": 10, + "1669": 5, + "1670": 6, + "1671": 8, + "1672": 9, + "1673": 5, + "1674": 2, + "1675": 4, + "1676": 8, + "1677": 5, + "1678": 5, + "1679": 6, + "1680": 6, + "1681": 3, + "1682": 11, + "1683": 10, + "1684": 9, + "1685": 5, + "1686": 3, + "1687": 4, + "1689": 2, + "1690": 4, + "1691": 5, + "1692": 9, + "1693": 5, + "1694": 7, + "1695": 7, + "1696": 4, + "1697": 10, + "1698": 2, + "1699": 1, + "1700": 7, + "1701": 2, + "1702": 4, + "1703": 2, + "1704": 3, + "1705": 5, + "1706": 3, + "1707": 2, + "1708": 2, + "1709": 1, + "1710": 1, + "1711": 4, + "1713": 4, + "1714": 4, + "1715": 2, + "1716": 2, + "1717": 3, + "1718": 3, + "1719": 1, + "1720": 1, + "1721": 3, + "1722": 7, + "1723": 1, + "1724": 3, + "1725": 3, + "1726": 3, + "1728": 1, + "1729": 2, + "1730": 1, + "1731": 2, + "1732": 1, + "1733": 2, + "1738": 2, + "1740": 1, + "1745": 3, + "1746": 1, + "1747": 2, + "1748": 2, + "1751": 2, + "1753": 1, + "1754": 2, + "1755": 2, + "1756": 1, + "1757": 1, + "1759": 1, + "1760": 1, + "1762": 1, + "1765": 1, + "1767": 1, + "1770": 3, + "1771": 2, + "1772": 3, + "1775": 1, + "1776": 1, + "1784": 1, + "1787": 1, + "1789": 1, + "1790": 1, + "1791": 1, + "1792": 1, + "1794": 1, + "1796": 1, + "1797": 2, + "1800": 1, + "1804": 1, + "1810": 1, + "1814": 1, + "1816": 1, + "1820": 2, + "1821": 2, + "1822": 1, + "1825": 1, + "1827": 1, + "1828": 2, + "1829": 1, + "1831": 1, + "1836": 1, + "1840": 1, + "1844": 2, + "1845": 1, + "1847": 1, + "1848": 1, + "1850": 1, + "1854": 1, + "1861": 1, + "2138": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333432266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88825ca8f9c55f40" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "5ca8f9c5" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_3_6.html b/autobahn/client/tungstenite_case_12_3_6.html new file mode 100644 index 0000000..f149705 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_6.html @@ -0,0 +1,1125 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.3.6 : Pass - 1778 ms @ 2020-09-07T18:46:37.734Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=343&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: qL/OhKMoF0/9aN8r4fOoZA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: FCDf/mfMK2s7nbbm3jdF+ZIy5Ow=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
254212542
255712557
255912559
256412564
262212622
265512655
266712667
267012670
268412684
269112691
269812698
271912719
272512725
277625552
277912779
278612786
280212802
281612816
281812818
281912819
282912829
283512835
284112841
284212842
285712857
285812858
286012860
287512875
290212902
291212912
292312923
292712927
293312933
293512935
293925878
294112941
295512955
296312963
297212972
298325966
298612986
298838964
298925978
299112991
299212992
299612996
299712997
300226004
300313003
300526010
300639018
300713007
300813008
301026020
301226024
301313013
301526030
301613016
3017412068
3018412072
301939057
302026040
302126042
302326046
3024515120
302526050
302639078
302826056
302926058
303013030
303126062
303213032
303326066
303426068
303539105
303626072
303726074
304013040
304113041
304213042
304339129
3044412176
304526090
3046515230
304739141
304839144
304926098
305013050
305113051
305226104
305326106
3054515270
3055412220
305639168
3057515285
3058618348
305939177
3060412240
306139183
3062515310
3063618378
306426128
3065721455
3066412264
306713067
3068515340
306926138
307339219
307526150
307613076
307726154
3078618468
307926158
30801030800
308126162
308226164
3083515415
3084515420
308539255
308639258
3087618522
3088618528
3089515445
3090412360
3091618546
309239276
3093412372
309439282
3095412380
309626192
3097618582
309826196
3099412396
3100412400
3101618606
310239306
310339309
310439312
3105412420
3106412424
3107618642
310839324
310926218
3110412440
3111515555
311226224
311313113
311439342
311539345
311639348
3117412468
311839354
311913119
312026240
3121515605
312226244
312326246
312413124
312539375
312639378
312726254
312826256
312926258
313013130
313226264
313413134
313513135
313639408
313939417
3140515700
314126282
314226284
314339429
314413144
314526290
3146515730
314726294
3148412592
315026300
315113151
315339459
315426308
315526310
315613156
315739471
3158412632
315926318
316039480
316139483
316339489
316513165
316613166
316726334
316813168
316939507
317039510
317226344
317339519
317426348
317513175
317639528
317713177
317913179
318026360
318113181
318226364
318313183
318439552
318539555
318613186
318726374
318839564
318939567
319039570
3191515955
3192515960
3193412772
319413194
319513195
319626392
3197412788
319839594
319939597
320026400
320126402
320226404
3203412812
320539615
320639618
3207412828
320939627
321026420
321139633
321213212
3213412852
321439642
321513215
321613216
321739651
321939657
322013220
322139663
322226444
322313223
322426448
3225516125
322626452
322739681
322839684
322939687
323026460
323139693
3232516160
323326466
323413234
323626472
323739711
323839714
323913239
324026480
324126482
324226484
324339729
324439732
324539735
324613246
3247516235
324826496
324913249
325026500
3251619506
325226504
325313253
3254413016
325526510
325613256
3257516285
3258413032
3259413036
3260826080
326113261
3262516310
3263619578
3264516320
3265413060
326626532
3267413068
326826536
3269413076
3270413080
3272619632
3273826184
3274826192
3275722925
3276516380
3277516385
327839834
3279413116
328026560
3281413124
328226564
3283516415
328413284
3285413140
3286516430
328739861
328839864
328926578
329039870
329113291
329239876
3294413176
329526590
329626592
329726594
329839894
3299516495
330026600
330126602
3302413208
330413304
330526610
330613306
3309413236
331039930
331113311
331213312
331313313
331426628
331513315
331613316
331713317
331913319
332113321
332213322
332313323
332413324
332813328
333039990
333126662
333239996
333326666
333413334
333713337
3339310017
334413344
334626692
334813348
3349310047
335026700
3351310053
335213352
335326706
3355413420
335613356
335713357
3358310074
3359413436
336226724
3363620178
336413364
3365413460
336626732
336826736
336926738
337013370
3371413484
337213372
3373413492
337413374
337513375
3376310128
338013380
338313383
338813388
338913389
339513395
340026800
340126802
3404310212
340513405
340813408
340913409
341013410
341313413
341913419
343813438
344213442
345713457
346326926
347013470
347713477
348113481
348213482
348713487
349313493
350127002
350313503
353913539
354013540
354113541
354313543
354513545
354613546
354813548
355113551
356313563
359313593
359513595
359613596
359813598
360613606
360713607
361427228
397913979
Total10023178239
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
253912539
255412554
255612556
256112561
261812618
265212652
266412664
266712667
268112681
268812688
269512695
271512715
272212722
277012770
277112771
277312773
278012780
279812798
281412814
281525630
282712827
283112831
283812838
283912839
285412854
285612856
285812858
287212872
289912899
291312913
292012920
292312923
293012930
293212932
293512935
293612936
294012940
295412954
296012960
297512975
298412984
298512985
298912989
299025980
299125982
299912999
300313003
300713007
300813008
300913009
301713017
301813018
302126042
302513025
302613026
303113031
303326066
303513035
303839114
303913039
304039120
304226084
304326086
304426088
304526090
304626092
304713047
3048412192
304913049
305013050
305139153
305226104
3053412212
305413054
305526110
3056412224
305726114
305826116
305926118
306039180
306113061
306326126
306413064
306513065
306613066
306726134
306839204
306913069
307026140
307139213
307226144
307326146
307426148
3075618450
3076618456
307739231
307813078
3079515395
3080515400
3081412324
308213082
3083412332
308439252
3085721595
308639258
308739261
308826176
308913089
3090515450
309139273
309239276
309339279
3094412376
3095515475
309626192
3097515485
309839294
309939297
310026200
310139303
310226204
3103412412
3104412416
3105618630
310639318
310726214
3108412432
310926218
311013110
311126222
3112928008
311313113
3114412456
3115618690
3116618696
3117412468
3118515590
311939357
312039360
3121515605
312213122
312339369
3124721868
3125618750
3126515630
3127618762
312839384
312926258
3130515650
313126262
3132412528
313326266
3134515670
3135412540
3136412544
313726274
314026280
314226284
314339429
314413144
314539435
3146412584
314813148
3149412596
3150515750
315113151
315239456
315326306
3155412620
315739471
315826316
315939477
316013160
316126322
316239486
316339489
316426328
3165515825
316613166
3167412668
316926338
317113171
317213172
317326346
317413174
317526350
3176515880
317713177
317839534
317939537
318113181
318239546
318313183
3184412736
3185515925
318613186
318813188
3189412756
319013190
319139573
319226384
319313193
319413194
319526390
319639588
319839594
319939597
3200516000
3201412804
3203516015
320439612
3205412820
320613206
3207412828
320813208
3210412840
321139633
3213516065
321426428
3215412860
321626432
321726434
321826436
3219516095
322013220
322139663
322213222
322326446
3224516120
322539675
322613226
322739681
322839684
322926458
323013230
323139693
3232412928
323326466
323426468
323526470
323639708
3237516185
323826476
323926478
324026480
3241412964
324213242
324339729
324413244
324513245
3246412984
324713247
324926498
325013250
3251516255
325213252
325313253
3254413016
325513255
3256413024
325713257
325813258
325939777
326013260
326213262
3263413052
326426528
3265516325
3266516330
326739801
326813268
326939807
3270413080
3271413084
327339819
3275516375
327639828
3277413108
3278619668
3279619674
328026560
3281413124
328239846
328339849
328413284
3285722995
328613286
328739861
328813288
3289413156
329013290
3291619746
329226584
329339879
3294619764
3295516475
3296929664
3297723079
3298723086
3299619794
3300619800
3302413208
3303516515
3304516520
330539915
3306413224
330739921
330826616
3309516545
3310413240
331126622
3312619872
331413314
3315413260
331739951
331839954
331939957
3320723240
332139963
332226644
332313323
332413324
332639978
332713327
332826656
332913329
333113331
333413334
333526670
333613336
333813338
3340413360
334113341
334413344
3349310047
335026700
335113351
3352310056
3354413416
335613356
335713357
335826716
3359516795
3360413440
336113361
336226724
336413364
336526730
336613366
336726734
3369310107
337026740
337126742
337226744
337313373
337413374
3375413500
337613376
337713377
3378620268
3379310137
3380413520
338113381
338226764
338313383
338413384
338513385
338626772
338713387
338813388
338913389
339226784
339413394
339813398
340426808
340613406
341026820
341113411
341213412
341426828
341513415
341713417
342013420
342713427
344113441
344613446
346113461
346926938
347613476
348313483
348826976
349313493
349913499
350613506
350713507
351113511
354727094
354813548
355227104
355613556
355813558
356113561
357213572
359113591
359513595
359713597
359813598
360713607
360813608
361313613
361613616
397513975
Total10023197835
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333433266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882e218b016e1f0
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6532313862303136
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_3_6.json b/autobahn/client/tungstenite_case_12_3_6.json new file mode 100644 index 0000000..4251643 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_6.json @@ -0,0 +1,972 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 343, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 1778, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=343&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: qL/OhKMoF0/9aN8r4fOoZA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: FCDf/mfMK2s7nbbm3jdF+ZIy5Ow=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.3.6", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "2542": 1, + "2557": 1, + "2559": 1, + "2564": 1, + "2622": 1, + "2655": 1, + "2667": 1, + "2670": 1, + "2684": 1, + "2691": 1, + "2698": 1, + "2719": 1, + "2725": 1, + "2776": 2, + "2779": 1, + "2786": 1, + "2802": 1, + "2816": 1, + "2818": 1, + "2819": 1, + "2829": 1, + "2835": 1, + "2841": 1, + "2842": 1, + "2857": 1, + "2858": 1, + "2860": 1, + "2875": 1, + "2902": 1, + "2912": 1, + "2923": 1, + "2927": 1, + "2933": 1, + "2935": 1, + "2939": 2, + "2941": 1, + "2955": 1, + "2963": 1, + "2972": 1, + "2983": 2, + "2986": 1, + "2988": 3, + "2989": 2, + "2991": 1, + "2992": 1, + "2996": 1, + "2997": 1, + "3002": 2, + "3003": 1, + "3005": 2, + "3006": 3, + "3007": 1, + "3008": 1, + "3010": 2, + "3012": 2, + "3013": 1, + "3015": 2, + "3016": 1, + "3017": 4, + "3018": 4, + "3019": 3, + "3020": 2, + "3021": 2, + "3023": 2, + "3024": 5, + "3025": 2, + "3026": 3, + "3028": 2, + "3029": 2, + "3030": 1, + "3031": 2, + "3032": 1, + "3033": 2, + "3034": 2, + "3035": 3, + "3036": 2, + "3037": 2, + "3040": 1, + "3041": 1, + "3042": 1, + "3043": 3, + "3044": 4, + "3045": 2, + "3046": 5, + "3047": 3, + "3048": 3, + "3049": 2, + "3050": 1, + "3051": 1, + "3052": 2, + "3053": 2, + "3054": 5, + "3055": 4, + "3056": 3, + "3057": 5, + "3058": 6, + "3059": 3, + "3060": 4, + "3061": 3, + "3062": 5, + "3063": 6, + "3064": 2, + "3065": 7, + "3066": 4, + "3067": 1, + "3068": 5, + "3069": 2, + "3073": 3, + "3075": 2, + "3076": 1, + "3077": 2, + "3078": 6, + "3079": 2, + "3080": 10, + "3081": 2, + "3082": 2, + "3083": 5, + "3084": 5, + "3085": 3, + "3086": 3, + "3087": 6, + "3088": 6, + "3089": 5, + "3090": 4, + "3091": 6, + "3092": 3, + "3093": 4, + "3094": 3, + "3095": 4, + "3096": 2, + "3097": 6, + "3098": 2, + "3099": 4, + "3100": 4, + "3101": 6, + "3102": 3, + "3103": 3, + "3104": 3, + "3105": 4, + "3106": 4, + "3107": 6, + "3108": 3, + "3109": 2, + "3110": 4, + "3111": 5, + "3112": 2, + "3113": 1, + "3114": 3, + "3115": 3, + "3116": 3, + "3117": 4, + "3118": 3, + "3119": 1, + "3120": 2, + "3121": 5, + "3122": 2, + "3123": 2, + "3124": 1, + "3125": 3, + "3126": 3, + "3127": 2, + "3128": 2, + "3129": 2, + "3130": 1, + "3132": 2, + "3134": 1, + "3135": 1, + "3136": 3, + "3139": 3, + "3140": 5, + "3141": 2, + "3142": 2, + "3143": 3, + "3144": 1, + "3145": 2, + "3146": 5, + "3147": 2, + "3148": 4, + "3150": 2, + "3151": 1, + "3153": 3, + "3154": 2, + "3155": 2, + "3156": 1, + "3157": 3, + "3158": 4, + "3159": 2, + "3160": 3, + "3161": 3, + "3163": 3, + "3165": 1, + "3166": 1, + "3167": 2, + "3168": 1, + "3169": 3, + "3170": 3, + "3172": 2, + "3173": 3, + "3174": 2, + "3175": 1, + "3176": 3, + "3177": 1, + "3179": 1, + "3180": 2, + "3181": 1, + "3182": 2, + "3183": 1, + "3184": 3, + "3185": 3, + "3186": 1, + "3187": 2, + "3188": 3, + "3189": 3, + "3190": 3, + "3191": 5, + "3192": 5, + "3193": 4, + "3194": 1, + "3195": 1, + "3196": 2, + "3197": 4, + "3198": 3, + "3199": 3, + "3200": 2, + "3201": 2, + "3202": 2, + "3203": 4, + "3205": 3, + "3206": 3, + "3207": 4, + "3209": 3, + "3210": 2, + "3211": 3, + "3212": 1, + "3213": 4, + "3214": 3, + "3215": 1, + "3216": 1, + "3217": 3, + "3219": 3, + "3220": 1, + "3221": 3, + "3222": 2, + "3223": 1, + "3224": 2, + "3225": 5, + "3226": 2, + "3227": 3, + "3228": 3, + "3229": 3, + "3230": 2, + "3231": 3, + "3232": 5, + "3233": 2, + "3234": 1, + "3236": 2, + "3237": 3, + "3238": 3, + "3239": 1, + "3240": 2, + "3241": 2, + "3242": 2, + "3243": 3, + "3244": 3, + "3245": 3, + "3246": 1, + "3247": 5, + "3248": 2, + "3249": 1, + "3250": 2, + "3251": 6, + "3252": 2, + "3253": 1, + "3254": 4, + "3255": 2, + "3256": 1, + "3257": 5, + "3258": 4, + "3259": 4, + "3260": 8, + "3261": 1, + "3262": 5, + "3263": 6, + "3264": 5, + "3265": 4, + "3266": 2, + "3267": 4, + "3268": 2, + "3269": 4, + "3270": 4, + "3272": 6, + "3273": 8, + "3274": 8, + "3275": 7, + "3276": 5, + "3277": 5, + "3278": 3, + "3279": 4, + "3280": 2, + "3281": 4, + "3282": 2, + "3283": 5, + "3284": 1, + "3285": 4, + "3286": 5, + "3287": 3, + "3288": 3, + "3289": 2, + "3290": 3, + "3291": 1, + "3292": 3, + "3294": 4, + "3295": 2, + "3296": 2, + "3297": 2, + "3298": 3, + "3299": 5, + "3300": 2, + "3301": 2, + "3302": 4, + "3304": 1, + "3305": 2, + "3306": 1, + "3309": 4, + "3310": 3, + "3311": 1, + "3312": 1, + "3313": 1, + "3314": 2, + "3315": 1, + "3316": 1, + "3317": 1, + "3319": 1, + "3321": 1, + "3322": 1, + "3323": 1, + "3324": 1, + "3328": 1, + "3330": 3, + "3331": 2, + "3332": 3, + "3333": 2, + "3334": 1, + "3337": 1, + "3339": 3, + "3344": 1, + "3346": 2, + "3348": 1, + "3349": 3, + "3350": 2, + "3351": 3, + "3352": 1, + "3353": 2, + "3355": 4, + "3356": 1, + "3357": 1, + "3358": 3, + "3359": 4, + "3362": 2, + "3363": 6, + "3364": 1, + "3365": 4, + "3366": 2, + "3368": 2, + "3369": 2, + "3370": 1, + "3371": 4, + "3372": 1, + "3373": 4, + "3374": 1, + "3375": 1, + "3376": 3, + "3380": 1, + "3383": 1, + "3388": 1, + "3389": 1, + "3395": 1, + "3400": 2, + "3401": 2, + "3404": 3, + "3405": 1, + "3408": 1, + "3409": 1, + "3410": 1, + "3413": 1, + "3419": 1, + "3438": 1, + "3442": 1, + "3457": 1, + "3463": 2, + "3470": 1, + "3477": 1, + "3481": 1, + "3482": 1, + "3487": 1, + "3493": 1, + "3501": 2, + "3503": 1, + "3539": 1, + "3540": 1, + "3541": 1, + "3543": 1, + "3545": 1, + "3546": 1, + "3548": 1, + "3551": 1, + "3563": 1, + "3593": 1, + "3595": 1, + "3596": 1, + "3598": 1, + "3606": 1, + "3607": 1, + "3614": 2, + "3979": 1 + }, + "started": "2020-09-07T18:46:37.734Z", + "trafficStats": { + "incomingCompressionRatio": 0.386959716796875, + "incomingOctetsAppLevel": 8192000, + "incomingOctetsWebSocketLevel": 3169974, + "incomingOctetsWireLevel": 3177974, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.002523680004946413, + "outgoingCompressionRatio": 0.3898411865234375, + "outgoingOctetsAppLevel": 8192000, + "outgoingOctetsWebSocketLevel": 3193579, + "outgoingOctetsWireLevel": 3197579, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0012525132461103984, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "2539": 1, + "2554": 1, + "2556": 1, + "2561": 1, + "2618": 1, + "2652": 1, + "2664": 1, + "2667": 1, + "2681": 1, + "2688": 1, + "2695": 1, + "2715": 1, + "2722": 1, + "2770": 1, + "2771": 1, + "2773": 1, + "2780": 1, + "2798": 1, + "2814": 1, + "2815": 2, + "2827": 1, + "2831": 1, + "2838": 1, + "2839": 1, + "2854": 1, + "2856": 1, + "2858": 1, + "2872": 1, + "2899": 1, + "2913": 1, + "2920": 1, + "2923": 1, + "2930": 1, + "2932": 1, + "2935": 1, + "2936": 1, + "2940": 1, + "2954": 1, + "2960": 1, + "2975": 1, + "2984": 1, + "2985": 1, + "2989": 1, + "2990": 2, + "2991": 2, + "2999": 1, + "3003": 1, + "3007": 1, + "3008": 1, + "3009": 1, + "3017": 1, + "3018": 1, + "3021": 2, + "3025": 1, + "3026": 1, + "3031": 1, + "3033": 2, + "3035": 1, + "3038": 3, + "3039": 1, + "3040": 3, + "3042": 2, + "3043": 2, + "3044": 2, + "3045": 2, + "3046": 2, + "3047": 1, + "3048": 4, + "3049": 1, + "3050": 1, + "3051": 3, + "3052": 2, + "3053": 4, + "3054": 1, + "3055": 2, + "3056": 4, + "3057": 2, + "3058": 2, + "3059": 2, + "3060": 3, + "3061": 1, + "3063": 2, + "3064": 1, + "3065": 1, + "3066": 1, + "3067": 2, + "3068": 3, + "3069": 1, + "3070": 2, + "3071": 3, + "3072": 2, + "3073": 2, + "3074": 2, + "3075": 6, + "3076": 6, + "3077": 3, + "3078": 1, + "3079": 5, + "3080": 5, + "3081": 4, + "3082": 1, + "3083": 4, + "3084": 3, + "3085": 7, + "3086": 3, + "3087": 3, + "3088": 2, + "3089": 1, + "3090": 5, + "3091": 3, + "3092": 3, + "3093": 3, + "3094": 4, + "3095": 5, + "3096": 2, + "3097": 5, + "3098": 3, + "3099": 3, + "3100": 2, + "3101": 3, + "3102": 2, + "3103": 4, + "3104": 4, + "3105": 6, + "3106": 3, + "3107": 2, + "3108": 4, + "3109": 2, + "3110": 1, + "3111": 2, + "3112": 9, + "3113": 1, + "3114": 4, + "3115": 6, + "3116": 6, + "3117": 4, + "3118": 5, + "3119": 3, + "3120": 3, + "3121": 5, + "3122": 1, + "3123": 3, + "3124": 7, + "3125": 6, + "3126": 5, + "3127": 6, + "3128": 3, + "3129": 2, + "3130": 5, + "3131": 2, + "3132": 4, + "3133": 2, + "3134": 5, + "3135": 4, + "3136": 4, + "3137": 2, + "3140": 2, + "3142": 2, + "3143": 3, + "3144": 1, + "3145": 3, + "3146": 4, + "3148": 1, + "3149": 4, + "3150": 5, + "3151": 1, + "3152": 3, + "3153": 2, + "3155": 4, + "3157": 3, + "3158": 2, + "3159": 3, + "3160": 1, + "3161": 2, + "3162": 3, + "3163": 3, + "3164": 2, + "3165": 5, + "3166": 1, + "3167": 4, + "3169": 2, + "3171": 1, + "3172": 1, + "3173": 2, + "3174": 1, + "3175": 2, + "3176": 5, + "3177": 1, + "3178": 3, + "3179": 3, + "3181": 1, + "3182": 3, + "3183": 1, + "3184": 4, + "3185": 5, + "3186": 1, + "3188": 1, + "3189": 4, + "3190": 1, + "3191": 3, + "3192": 2, + "3193": 1, + "3194": 1, + "3195": 2, + "3196": 3, + "3198": 3, + "3199": 3, + "3200": 5, + "3201": 4, + "3203": 5, + "3204": 3, + "3205": 4, + "3206": 1, + "3207": 4, + "3208": 1, + "3210": 4, + "3211": 3, + "3213": 5, + "3214": 2, + "3215": 4, + "3216": 2, + "3217": 2, + "3218": 2, + "3219": 5, + "3220": 1, + "3221": 3, + "3222": 1, + "3223": 2, + "3224": 5, + "3225": 3, + "3226": 1, + "3227": 3, + "3228": 3, + "3229": 2, + "3230": 1, + "3231": 3, + "3232": 4, + "3233": 2, + "3234": 2, + "3235": 2, + "3236": 3, + "3237": 5, + "3238": 2, + "3239": 2, + "3240": 2, + "3241": 4, + "3242": 1, + "3243": 3, + "3244": 1, + "3245": 1, + "3246": 4, + "3247": 1, + "3249": 2, + "3250": 1, + "3251": 5, + "3252": 1, + "3253": 1, + "3254": 4, + "3255": 1, + "3256": 4, + "3257": 1, + "3258": 1, + "3259": 3, + "3260": 1, + "3262": 1, + "3263": 4, + "3264": 2, + "3265": 5, + "3266": 5, + "3267": 3, + "3268": 1, + "3269": 3, + "3270": 4, + "3271": 4, + "3273": 3, + "3275": 5, + "3276": 3, + "3277": 4, + "3278": 6, + "3279": 6, + "3280": 2, + "3281": 4, + "3282": 3, + "3283": 3, + "3284": 1, + "3285": 7, + "3286": 1, + "3287": 3, + "3288": 1, + "3289": 4, + "3290": 1, + "3291": 6, + "3292": 2, + "3293": 3, + "3294": 6, + "3295": 5, + "3296": 9, + "3297": 7, + "3298": 7, + "3299": 6, + "3300": 6, + "3302": 4, + "3303": 5, + "3304": 5, + "3305": 3, + "3306": 4, + "3307": 3, + "3308": 2, + "3309": 5, + "3310": 4, + "3311": 2, + "3312": 6, + "3314": 1, + "3315": 4, + "3317": 3, + "3318": 3, + "3319": 3, + "3320": 7, + "3321": 3, + "3322": 2, + "3323": 1, + "3324": 1, + "3326": 3, + "3327": 1, + "3328": 2, + "3329": 1, + "3331": 1, + "3334": 1, + "3335": 2, + "3336": 1, + "3338": 1, + "3340": 4, + "3341": 1, + "3344": 1, + "3349": 3, + "3350": 2, + "3351": 1, + "3352": 3, + "3354": 4, + "3356": 1, + "3357": 1, + "3358": 2, + "3359": 5, + "3360": 4, + "3361": 1, + "3362": 2, + "3364": 1, + "3365": 2, + "3366": 1, + "3367": 2, + "3369": 3, + "3370": 2, + "3371": 2, + "3372": 2, + "3373": 1, + "3374": 1, + "3375": 4, + "3376": 1, + "3377": 1, + "3378": 6, + "3379": 3, + "3380": 4, + "3381": 1, + "3382": 2, + "3383": 1, + "3384": 1, + "3385": 1, + "3386": 2, + "3387": 1, + "3388": 1, + "3389": 1, + "3392": 2, + "3394": 1, + "3398": 1, + "3404": 2, + "3406": 1, + "3410": 2, + "3411": 1, + "3412": 1, + "3414": 2, + "3415": 1, + "3417": 1, + "3420": 1, + "3427": 1, + "3441": 1, + "3446": 1, + "3461": 1, + "3469": 2, + "3476": 1, + "3483": 1, + "3488": 2, + "3493": 1, + "3499": 1, + "3506": 1, + "3507": 1, + "3511": 1, + "3547": 2, + "3548": 1, + "3552": 2, + "3556": 1, + "3558": 1, + "3561": 1, + "3572": 1, + "3591": 1, + "3595": 1, + "3597": 1, + "3598": 1, + "3607": 1, + "3608": 1, + "3613": 1, + "3616": 1, + "3975": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333433266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882e218b016e1f0" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "e218b016" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_3_7.html b/autobahn/client/tungstenite_case_12_3_7.html new file mode 100644 index 0000000..a0d701c --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_7.html @@ -0,0 +1,1412 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.3.7 : Pass - 3295 ms @ 2020-09-07T18:46:39.513Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=344&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: JI0vV6vhJqek0w5R0+5Y8g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Wy4nZw0r4QzLNZkc31zcF4Iy+o8=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
551815518
553015530
554015540
557715577
558215582
561715617
561815618
562215622
562915629
565315653
567815678
568015680
569915699
571515715
572615726
573815738
574515745
576715767
580315803
581615816
582015820
585215852
585515855
587115871
587415874
587515875
5880211760
588115881
588215882
5884211768
588815888
589715897
5900211800
590615906
5907211814
591315913
591715917
592115921
5924211848
592615926
592915929
594415944
595115951
595615956
595715957
596215962
596315963
5965211930
596715967
5969211938
597215972
597715977
597815978
597915979
5981211962
598315983
598615986
598915989
599015990
599215992
599315993
5994211988
599515995
599815998
599915999
600016000
6002212004
600316003
600716007
600916009
601216012
601516015
601716017
6018212036
601916019
602116021
602416024
602516025
6026318078
602916029
603016030
6034318102
603516035
603616036
603816038
6039424156
604016040
604116041
6042530210
6043212086
604416044
6045318135
604616046
6047212094
6048636288
6049212098
605016050
605116051
605216052
6053212106
605616056
6057212114
6058212116
6059318177
606016060
6062212124
6063424252
606516065
6066318198
606716067
607016070
6073318219
607416074
6076318228
607916079
6081212162
608216082
6083318249
6085212170
6086318258
608716087
608816088
6089212178
609016090
6091212182
609216092
6094318282
6095212190
609616096
6097212194
609916099
6101424404
6102212204
6103212206
610416104
6105212210
6106424424
610816108
610916109
6110848880
611116111
611216112
6113424452
6114212228
611516115
6116318348
6117318351
6118212236
6119212238
612016120
6121318363
612216122
6123212246
612416124
612516125
6126212252
6127318381
6128636768
612916129
6130212260
613116131
6132530660
6133212266
6135212270
6136424544
6138530690
6139318417
6140318420
6141212282
6142318426
6144212288
6146743022
6147318441
6148318444
6149212298
615016150
615116151
6153212306
6154424616
6155212310
6156318468
6157636942
6158424632
6159212318
616016160
6161212322
6162318486
6164318492
6165424660
6166530830
6167212334
6168212336
6169318507
6170212340
6171212342
6172318516
6173212346
6174318522
617516175
6176318528
6177637062
6178212356
6179318537
618016180
618216182
618316183
6184212368
6185212370
6186318558
6188424752
618916189
6192318576
619316193
619416194
619516195
6196318588
619716197
619816198
620016200
620116201
620216202
6203212406
620416204
6207318621
6210318630
621116211
621216212
621316213
621516215
621616216
6218318654
622216222
6223212446
622416224
622616226
622716227
622916229
6233212466
623416234
6235318705
6238212476
623916239
6241212482
6242212484
624316243
624516245
624616246
6247318741
625016250
625216252
6253212506
625416254
625516255
6256425024
6257212514
6258212516
625916259
6260212520
6261212522
6262637572
626316263
6264318792
6265212530
626616266
626716267
626916269
627016270
627316273
6274318822
627516275
627616276
627716277
6278212556
6279318837
628016280
6281212562
6282212564
628416284
6285212570
628616286
6287318861
6288212576
6289212578
6290318870
6291425164
6292212584
629316293
6294212588
629516295
6296212592
6297212594
6298318894
6299425196
6300212600
6301212602
6302531510
630316303
630416304
6305212610
630616306
630716307
630916309
6310212620
631116311
631216312
6314318942
631516315
6316212632
6318425272
631916319
632016320
632216322
632416324
632616326
6328212656
633016330
633116331
633316333
633416334
633616336
633916339
634716347
6352212704
636616366
636716367
637116371
637216372
637316373
6374212748
637616376
637716377
638016380
6382319146
6383212766
6384212768
638516385
6386319158
638716387
6392212784
639416394
639816398
640016400
6402319206
640416404
640516405
640716407
6410212820
6412319236
6413212826
641416414
641516415
641616416
641816418
642116421
6422425688
642316423
6424212848
6425212850
642716427
6428319284
6429319287
643016430
6431319293
6433532165
6435319305
6436212872
643716437
6438319314
643916439
6440319320
6441319323
6443319329
6444425776
644516445
644616446
6447212894
6449319347
645016450
645116451
645216452
645316453
645416454
6455212910
6456532280
645716457
6458425832
6459212918
646016460
6461425844
646316463
646416464
6465212930
646616466
6467212934
6469319407
647016470
6472212944
6474212948
6475319425
6476319428
6477319431
6478638868
647916479
6480532400
6481212962
648216482
6483212966
6484638904
6485745395
6486638916
6487319461
6488425952
6489319467
6490212980
649116491
6492425968
6494212988
6495319485
6496532480
649816498
650016500
650116501
6503213006
650416504
650516505
650616506
650716507
6508319524
6509213018
6510213020
6512426048
6513639078
6514213028
651516515
6516319548
6517213034
6518639108
6519426076
6520532600
6521213042
652216522
652316523
652516525
652616526
652716527
652816528
6529213058
653016530
653116531
6532319596
6533213066
6534213068
653516535
6536213072
653716537
653816538
654016540
654316543
655316553
6554213108
6556213112
656516565
656616566
656716567
656816568
6571213142
657416574
6575213150
657716577
657916579
6581319743
658216582
658416584
658516585
658816588
659216592
659416594
6596213192
6597213194
6598319794
6600319800
6601213202
660216602
660316603
660416604
6605319815
660616606
660716607
660816608
660916609
6616319848
661816618
661916619
662016620
663616636
663916639
664016640
664916649
665216652
666016660
666416664
666716667
667216672
668316683
669616696
669916699
670116701
670416704
670616706
670916709
671716717
672216722
6723213446
672616726
673216732
673416734
6735213470
673716737
673916739
674516745
674616746
674816748
674916749
6753320259
675516755
675616756
675716757
675816758
676016760
676216762
676716767
676916769
678916789
679016790
679716797
679816798
6803213606
681116811
681316813
681416814
682416824
682816828
683016830
684516845
685016850
686716867
686816868
688416884
689916899
690716907
691116911
692116921
693516935
693916939
6950213900
6953213906
696016960
696816968
697116971
697216972
697916979
739017390
Total10026301904
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
551715517
553015530
553915539
557615576
558115581
561415614
561615616
561915619
562715627
565515655
567515675
568215682
569615696
571615716
572315723
573615736
574715747
576515765
580415804
581315813
582215822
585215852
585315853
587115871
587515875
588115881
588215882
588815888
589215892
589415894
589615896
589915899
590015900
5901211802
590615906
591115911
591315913
591415914
592315923
592515925
592915929
5930211860
593815938
594415944
595315953
596115961
596415964
597415974
5980211960
598115981
598415984
598615986
598815988
598915989
5996211992
600116001
601116011
602316023
602516025
602616026
602716027
603516035
603716037
604616046
605116051
6052212104
6057212114
6059212118
606016060
606116061
606216062
606516065
606716067
606816068
606916069
6070212140
6075212150
608316083
608416084
6087212174
6088212176
609016090
6093212186
609516095
609716097
609816098
609916099
6100424400
6102212204
610416104
6106212212
610716107
6108212216
6109212218
611016110
611116111
6112212224
6113318339
6114212228
6115530575
6117212234
611816118
6119636714
6120212240
6121212242
6122212244
6123530615
6124424496
612516125
6126318378
6127318381
6129530645
613016130
613216132
6134424536
6135318405
613616136
6137212274
613816138
613916139
614016140
6141212282
614316143
614416144
6146212292
614716147
614916149
6150212300
615116151
615216152
6153318459
6154212308
6155212310
615616156
615816158
6159212318
6160212320
6161424644
616216162
6163318489
616516165
6166318498
616716167
616816168
6169318507
6170318510
617116171
6172318516
617316173
6174424696
617616176
617916179
618016180
6181637086
618216182
6183318549
6184212368
618516185
6186318558
6187212374
618816188
619016190
6191212382
619216192
6193530965
6194318582
6195318585
6196212392
6197212394
6198212396
6199637194
6200424800
620116201
6202424808
6203318609
6204743428
620516205
620616206
6207424828
6208531040
620916209
6210212420
6211212422
621216212
6213318639
6214318642
6215318645
6216424864
6217424868
6218531090
6219637314
6220212440
6221212442
6223318669
6224212448
6225743575
622616226
622716227
622816228
6229424916
6230212460
6231318693
6232212464
623316233
6234212468
6235318705
6236212472
6237318711
623816238
6239318717
6240212480
6241424964
624216242
6243424972
624416244
624616246
6248212496
6249212498
625016250
6251212502
6253318759
6254212508
625516255
625616256
625816258
6260318780
6262318786
626316263
6264212528
626516265
626616266
6268212536
626916269
6272212544
627416274
627616276
6283212566
6285318855
628616286
6287318861
628816288
628916289
6290212580
6291425164
629216292
6293212586
6294212588
629516295
6296212592
629716297
629816298
629916299
630016300
6301318903
6302212604
6303212606
6305212610
6306212612
6308212616
630916309
631316313
631416314
6316318948
631816318
6319531595
632016320
6323212646
632416324
6326318978
632716327
6328212656
632916329
6330212660
633116331
6332318996
6333425332
6335212670
633616336
6338319014
6339425356
6340319020
6341425364
634216342
6343425372
6344212688
6345212690
634616346
6348425392
6349212698
635016350
6351212702
6352425408
6354212708
6355425420
6356212712
635716357
635916359
6363425452
6364319092
6365212730
6367212734
636816368
636916369
6370212740
637216372
637516375
6376212752
637716377
638016380
638116381
6387212774
638916389
639616396
639816398
640416404
6406212812
640716407
640816408
640916409
641516415
641616416
641916419
642016420
642216422
642316423
642416424
642516425
6427212854
642816428
642916429
643116431
643216432
643416434
643516435
643816438
643916439
6440319320
644416444
644616446
644716447
644816448
644916449
645316453
6454425816
645616456
645716457
6458319374
6463212926
6464212928
6465212930
646616466
6468425872
647016470
647216472
6473212946
647416474
6475212950
6476532380
6477425908
6478532390
6480212960
6481319443
6482212964
648316483
648416484
6485212970
6486319458
648716487
6488212976
6490212980
6491212982
649216492
649316493
6494212988
6496212992
649716497
649816498
6499212998
6500213000
6501426004
6502213004
6503213006
6504319512
650516505
6506426024
6507213014
6508319524
650916509
651016510
6511319533
6512213024
6514213028
651616516
6517319551
6519213038
6521213042
6522532610
6523426092
652416524
6525213050
6526319578
6527319581
6528319584
6529319587
6530639180
6531532655
6532319596
6533319599
6534639204
6535532675
6536319608
6537426148
6538426152
6539852312
6540426160
6541319623
6542426168
6543319629
6544213088
6545639270
6547319641
654816548
6549213098
655016550
6551319653
655216552
6553213106
655416554
6555319665
655616556
6557426228
6558213116
6560319680
6561319683
656216562
656316563
6564319692
656516565
656616566
656716567
6568213136
657016570
657216572
657316573
657516575
657716577
657816578
657916579
6581426324
6582213164
658416584
6585213170
658816588
6591213182
659816598
659916599
660116601
6606213212
6608319824
6613213226
661416614
661516615
661616616
6619213238
662016620
6624213248
6625213250
662616626
662816628
662916629
663016630
663316633
663716637
663916639
664016640
6643213286
6644319932
664516645
664616646
665016650
665116651
665516655
665616656
665716657
665916659
666016660
666316663
667116671
667416674
668516685
669016690
669416694
669816698
6708213416
672016720
672216722
6725213450
673016730
6731213462
673316733
673416734
673916739
674316743
6749213498
675116751
675216752
675316753
675516755
6757213514
676016760
676116761
676516765
676616766
6767213534
676916769
677116771
677216772
677416774
677816778
678116781
680216802
680416804
680716807
681116811
681316813
681916819
682316823
682716827
682816828
683716837
684016840
684416844
686216862
686516865
688116881
688216882
689716897
691216912
692116921
692416924
693516935
694716947
695116951
6960213920
696216962
696416964
696816968
697716977
698216982
698316983
699316993
738717387
Total10026344249
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333434266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882d056c9a4d3be
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6430353663396134
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_3_7.json b/autobahn/client/tungstenite_case_12_3_7.json new file mode 100644 index 0000000..6dbbc65 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_7.json @@ -0,0 +1,1259 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 344, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 3295, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=344&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: JI0vV6vhJqek0w5R0+5Y8g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Wy4nZw0r4QzLNZkc31zcF4Iy+o8=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.3.7", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "5518": 1, + "5530": 1, + "5540": 1, + "5577": 1, + "5582": 1, + "5617": 1, + "5618": 1, + "5622": 1, + "5629": 1, + "5653": 1, + "5678": 1, + "5680": 1, + "5699": 1, + "5715": 1, + "5726": 1, + "5738": 1, + "5745": 1, + "5767": 1, + "5803": 1, + "5816": 1, + "5820": 1, + "5852": 1, + "5855": 1, + "5871": 1, + "5874": 1, + "5875": 1, + "5880": 2, + "5881": 1, + "5882": 1, + "5884": 2, + "5888": 1, + "5897": 1, + "5900": 2, + "5906": 1, + "5907": 2, + "5913": 1, + "5917": 1, + "5921": 1, + "5924": 2, + "5926": 1, + "5929": 1, + "5944": 1, + "5951": 1, + "5956": 1, + "5957": 1, + "5962": 1, + "5963": 1, + "5965": 2, + "5967": 1, + "5969": 2, + "5972": 1, + "5977": 1, + "5978": 1, + "5979": 1, + "5981": 2, + "5983": 1, + "5986": 1, + "5989": 1, + "5990": 1, + "5992": 1, + "5993": 1, + "5994": 2, + "5995": 1, + "5998": 1, + "5999": 1, + "6000": 1, + "6002": 2, + "6003": 1, + "6007": 1, + "6009": 1, + "6012": 1, + "6015": 1, + "6017": 1, + "6018": 2, + "6019": 1, + "6021": 1, + "6024": 1, + "6025": 1, + "6026": 3, + "6029": 1, + "6030": 1, + "6034": 3, + "6035": 1, + "6036": 1, + "6038": 1, + "6039": 4, + "6040": 1, + "6041": 1, + "6042": 5, + "6043": 2, + "6044": 1, + "6045": 3, + "6046": 1, + "6047": 2, + "6048": 6, + "6049": 2, + "6050": 1, + "6051": 1, + "6052": 1, + "6053": 2, + "6056": 1, + "6057": 2, + "6058": 2, + "6059": 3, + "6060": 1, + "6062": 2, + "6063": 4, + "6065": 1, + "6066": 3, + "6067": 1, + "6070": 1, + "6073": 3, + "6074": 1, + "6076": 3, + "6079": 1, + "6081": 2, + "6082": 1, + "6083": 3, + "6085": 2, + "6086": 3, + "6087": 1, + "6088": 1, + "6089": 2, + "6090": 1, + "6091": 2, + "6092": 1, + "6094": 3, + "6095": 2, + "6096": 1, + "6097": 2, + "6099": 1, + "6101": 4, + "6102": 2, + "6103": 2, + "6104": 1, + "6105": 2, + "6106": 4, + "6108": 1, + "6109": 1, + "6110": 8, + "6111": 1, + "6112": 1, + "6113": 4, + "6114": 2, + "6115": 1, + "6116": 3, + "6117": 3, + "6118": 2, + "6119": 2, + "6120": 1, + "6121": 3, + "6122": 1, + "6123": 2, + "6124": 1, + "6125": 1, + "6126": 2, + "6127": 3, + "6128": 6, + "6129": 1, + "6130": 2, + "6131": 1, + "6132": 5, + "6133": 2, + "6135": 2, + "6136": 4, + "6138": 5, + "6139": 3, + "6140": 3, + "6141": 2, + "6142": 3, + "6144": 2, + "6146": 7, + "6147": 3, + "6148": 3, + "6149": 2, + "6150": 1, + "6151": 1, + "6153": 2, + "6154": 4, + "6155": 2, + "6156": 3, + "6157": 6, + "6158": 4, + "6159": 2, + "6160": 1, + "6161": 2, + "6162": 3, + "6164": 3, + "6165": 4, + "6166": 5, + "6167": 2, + "6168": 2, + "6169": 3, + "6170": 2, + "6171": 2, + "6172": 3, + "6173": 2, + "6174": 3, + "6175": 1, + "6176": 3, + "6177": 6, + "6178": 2, + "6179": 3, + "6180": 1, + "6182": 1, + "6183": 1, + "6184": 2, + "6185": 2, + "6186": 3, + "6188": 4, + "6189": 1, + "6192": 3, + "6193": 1, + "6194": 1, + "6195": 1, + "6196": 3, + "6197": 1, + "6198": 1, + "6200": 1, + "6201": 1, + "6202": 1, + "6203": 2, + "6204": 1, + "6207": 3, + "6210": 3, + "6211": 1, + "6212": 1, + "6213": 1, + "6215": 1, + "6216": 1, + "6218": 3, + "6222": 1, + "6223": 2, + "6224": 1, + "6226": 1, + "6227": 1, + "6229": 1, + "6233": 2, + "6234": 1, + "6235": 3, + "6238": 2, + "6239": 1, + "6241": 2, + "6242": 2, + "6243": 1, + "6245": 1, + "6246": 1, + "6247": 3, + "6250": 1, + "6252": 1, + "6253": 2, + "6254": 1, + "6255": 1, + "6256": 4, + "6257": 2, + "6258": 2, + "6259": 1, + "6260": 2, + "6261": 2, + "6262": 6, + "6263": 1, + "6264": 3, + "6265": 2, + "6266": 1, + "6267": 1, + "6269": 1, + "6270": 1, + "6273": 1, + "6274": 3, + "6275": 1, + "6276": 1, + "6277": 1, + "6278": 2, + "6279": 3, + "6280": 1, + "6281": 2, + "6282": 2, + "6284": 1, + "6285": 2, + "6286": 1, + "6287": 3, + "6288": 2, + "6289": 2, + "6290": 3, + "6291": 4, + "6292": 2, + "6293": 1, + "6294": 2, + "6295": 1, + "6296": 2, + "6297": 2, + "6298": 3, + "6299": 4, + "6300": 2, + "6301": 2, + "6302": 5, + "6303": 1, + "6304": 1, + "6305": 2, + "6306": 1, + "6307": 1, + "6309": 1, + "6310": 2, + "6311": 1, + "6312": 1, + "6314": 3, + "6315": 1, + "6316": 2, + "6318": 4, + "6319": 1, + "6320": 1, + "6322": 1, + "6324": 1, + "6326": 1, + "6328": 2, + "6330": 1, + "6331": 1, + "6333": 1, + "6334": 1, + "6336": 1, + "6339": 1, + "6347": 1, + "6352": 2, + "6366": 1, + "6367": 1, + "6371": 1, + "6372": 1, + "6373": 1, + "6374": 2, + "6376": 1, + "6377": 1, + "6380": 1, + "6382": 3, + "6383": 2, + "6384": 2, + "6385": 1, + "6386": 3, + "6387": 1, + "6392": 2, + "6394": 1, + "6398": 1, + "6400": 1, + "6402": 3, + "6404": 1, + "6405": 1, + "6407": 1, + "6410": 2, + "6412": 3, + "6413": 2, + "6414": 1, + "6415": 1, + "6416": 1, + "6418": 1, + "6421": 1, + "6422": 4, + "6423": 1, + "6424": 2, + "6425": 2, + "6427": 1, + "6428": 3, + "6429": 3, + "6430": 1, + "6431": 3, + "6433": 5, + "6435": 3, + "6436": 2, + "6437": 1, + "6438": 3, + "6439": 1, + "6440": 3, + "6441": 3, + "6443": 3, + "6444": 4, + "6445": 1, + "6446": 1, + "6447": 2, + "6449": 3, + "6450": 1, + "6451": 1, + "6452": 1, + "6453": 1, + "6454": 1, + "6455": 2, + "6456": 5, + "6457": 1, + "6458": 4, + "6459": 2, + "6460": 1, + "6461": 4, + "6463": 1, + "6464": 1, + "6465": 2, + "6466": 1, + "6467": 2, + "6469": 3, + "6470": 1, + "6472": 2, + "6474": 2, + "6475": 3, + "6476": 3, + "6477": 3, + "6478": 6, + "6479": 1, + "6480": 5, + "6481": 2, + "6482": 1, + "6483": 2, + "6484": 6, + "6485": 7, + "6486": 6, + "6487": 3, + "6488": 4, + "6489": 3, + "6490": 2, + "6491": 1, + "6492": 4, + "6494": 2, + "6495": 3, + "6496": 5, + "6498": 1, + "6500": 1, + "6501": 1, + "6503": 2, + "6504": 1, + "6505": 1, + "6506": 1, + "6507": 1, + "6508": 3, + "6509": 2, + "6510": 2, + "6512": 4, + "6513": 6, + "6514": 2, + "6515": 1, + "6516": 3, + "6517": 2, + "6518": 6, + "6519": 4, + "6520": 5, + "6521": 2, + "6522": 1, + "6523": 1, + "6525": 1, + "6526": 1, + "6527": 1, + "6528": 1, + "6529": 2, + "6530": 1, + "6531": 1, + "6532": 3, + "6533": 2, + "6534": 2, + "6535": 1, + "6536": 2, + "6537": 1, + "6538": 1, + "6540": 1, + "6543": 1, + "6553": 1, + "6554": 2, + "6556": 2, + "6565": 1, + "6566": 1, + "6567": 1, + "6568": 1, + "6571": 2, + "6574": 1, + "6575": 2, + "6577": 1, + "6579": 1, + "6581": 3, + "6582": 1, + "6584": 1, + "6585": 1, + "6588": 1, + "6592": 1, + "6594": 1, + "6596": 2, + "6597": 2, + "6598": 3, + "6600": 3, + "6601": 2, + "6602": 1, + "6603": 1, + "6604": 1, + "6605": 3, + "6606": 1, + "6607": 1, + "6608": 1, + "6609": 1, + "6616": 3, + "6618": 1, + "6619": 1, + "6620": 1, + "6636": 1, + "6639": 1, + "6640": 1, + "6649": 1, + "6652": 1, + "6660": 1, + "6664": 1, + "6667": 1, + "6672": 1, + "6683": 1, + "6696": 1, + "6699": 1, + "6701": 1, + "6704": 1, + "6706": 1, + "6709": 1, + "6717": 1, + "6722": 1, + "6723": 2, + "6726": 1, + "6732": 1, + "6734": 1, + "6735": 2, + "6737": 1, + "6739": 1, + "6745": 1, + "6746": 1, + "6748": 1, + "6749": 1, + "6753": 3, + "6755": 1, + "6756": 1, + "6757": 1, + "6758": 1, + "6760": 1, + "6762": 1, + "6767": 1, + "6769": 1, + "6789": 1, + "6790": 1, + "6797": 1, + "6798": 1, + "6803": 2, + "6811": 1, + "6813": 1, + "6814": 1, + "6824": 1, + "6828": 1, + "6830": 1, + "6845": 1, + "6850": 1, + "6867": 1, + "6868": 1, + "6884": 1, + "6899": 1, + "6907": 1, + "6911": 1, + "6921": 1, + "6935": 1, + "6939": 1, + "6950": 2, + "6953": 2, + "6960": 1, + "6968": 1, + "6971": 1, + "6972": 1, + "6979": 1, + "7390": 1 + }, + "started": "2020-09-07T18:46:39.513Z", + "trafficStats": { + "incomingCompressionRatio": 0.38413323974609376, + "incomingOctetsAppLevel": 16384000, + "incomingOctetsWebSocketLevel": 6293639, + "incomingOctetsWireLevel": 6301639, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0012711247022589, + "outgoingCompressionRatio": 0.3869624633789063, + "outgoingOctetsAppLevel": 16384000, + "outgoingOctetsWebSocketLevel": 6339993, + "outgoingOctetsWireLevel": 6343993, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0006309155230928489, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "5517": 1, + "5530": 1, + "5539": 1, + "5576": 1, + "5581": 1, + "5614": 1, + "5616": 1, + "5619": 1, + "5627": 1, + "5655": 1, + "5675": 1, + "5682": 1, + "5696": 1, + "5716": 1, + "5723": 1, + "5736": 1, + "5747": 1, + "5765": 1, + "5804": 1, + "5813": 1, + "5822": 1, + "5852": 1, + "5853": 1, + "5871": 1, + "5875": 1, + "5881": 1, + "5882": 1, + "5888": 1, + "5892": 1, + "5894": 1, + "5896": 1, + "5899": 1, + "5900": 1, + "5901": 2, + "5906": 1, + "5911": 1, + "5913": 1, + "5914": 1, + "5923": 1, + "5925": 1, + "5929": 1, + "5930": 2, + "5938": 1, + "5944": 1, + "5953": 1, + "5961": 1, + "5964": 1, + "5974": 1, + "5980": 2, + "5981": 1, + "5984": 1, + "5986": 1, + "5988": 1, + "5989": 1, + "5996": 2, + "6001": 1, + "6011": 1, + "6023": 1, + "6025": 1, + "6026": 1, + "6027": 1, + "6035": 1, + "6037": 1, + "6046": 1, + "6051": 1, + "6052": 2, + "6057": 2, + "6059": 2, + "6060": 1, + "6061": 1, + "6062": 1, + "6065": 1, + "6067": 1, + "6068": 1, + "6069": 1, + "6070": 2, + "6075": 2, + "6083": 1, + "6084": 1, + "6087": 2, + "6088": 2, + "6090": 1, + "6093": 2, + "6095": 1, + "6097": 1, + "6098": 1, + "6099": 1, + "6100": 4, + "6102": 2, + "6104": 1, + "6106": 2, + "6107": 1, + "6108": 2, + "6109": 2, + "6110": 1, + "6111": 1, + "6112": 2, + "6113": 3, + "6114": 2, + "6115": 5, + "6117": 2, + "6118": 1, + "6119": 6, + "6120": 2, + "6121": 2, + "6122": 2, + "6123": 5, + "6124": 4, + "6125": 1, + "6126": 3, + "6127": 3, + "6129": 5, + "6130": 1, + "6132": 1, + "6134": 4, + "6135": 3, + "6136": 1, + "6137": 2, + "6138": 1, + "6139": 1, + "6140": 1, + "6141": 2, + "6143": 1, + "6144": 1, + "6146": 2, + "6147": 1, + "6149": 1, + "6150": 2, + "6151": 1, + "6152": 1, + "6153": 3, + "6154": 2, + "6155": 2, + "6156": 1, + "6158": 1, + "6159": 2, + "6160": 2, + "6161": 4, + "6162": 1, + "6163": 3, + "6165": 1, + "6166": 3, + "6167": 1, + "6168": 1, + "6169": 3, + "6170": 3, + "6171": 1, + "6172": 3, + "6173": 1, + "6174": 4, + "6176": 1, + "6179": 1, + "6180": 1, + "6181": 6, + "6182": 1, + "6183": 3, + "6184": 2, + "6185": 1, + "6186": 3, + "6187": 2, + "6188": 1, + "6190": 1, + "6191": 2, + "6192": 1, + "6193": 5, + "6194": 3, + "6195": 3, + "6196": 2, + "6197": 2, + "6198": 2, + "6199": 6, + "6200": 4, + "6201": 1, + "6202": 4, + "6203": 3, + "6204": 7, + "6205": 1, + "6206": 1, + "6207": 4, + "6208": 5, + "6209": 1, + "6210": 2, + "6211": 2, + "6212": 1, + "6213": 3, + "6214": 3, + "6215": 3, + "6216": 4, + "6217": 4, + "6218": 5, + "6219": 6, + "6220": 2, + "6221": 2, + "6223": 3, + "6224": 2, + "6225": 7, + "6226": 1, + "6227": 1, + "6228": 1, + "6229": 4, + "6230": 2, + "6231": 3, + "6232": 2, + "6233": 1, + "6234": 2, + "6235": 3, + "6236": 2, + "6237": 3, + "6238": 1, + "6239": 3, + "6240": 2, + "6241": 4, + "6242": 1, + "6243": 4, + "6244": 1, + "6246": 1, + "6248": 2, + "6249": 2, + "6250": 1, + "6251": 2, + "6253": 3, + "6254": 2, + "6255": 1, + "6256": 1, + "6258": 1, + "6260": 3, + "6262": 3, + "6263": 1, + "6264": 2, + "6265": 1, + "6266": 1, + "6268": 2, + "6269": 1, + "6272": 2, + "6274": 1, + "6276": 1, + "6283": 2, + "6285": 3, + "6286": 1, + "6287": 3, + "6288": 1, + "6289": 1, + "6290": 2, + "6291": 4, + "6292": 1, + "6293": 2, + "6294": 2, + "6295": 1, + "6296": 2, + "6297": 1, + "6298": 1, + "6299": 1, + "6300": 1, + "6301": 3, + "6302": 2, + "6303": 2, + "6305": 2, + "6306": 2, + "6308": 2, + "6309": 1, + "6313": 1, + "6314": 1, + "6316": 3, + "6318": 1, + "6319": 5, + "6320": 1, + "6323": 2, + "6324": 1, + "6326": 3, + "6327": 1, + "6328": 2, + "6329": 1, + "6330": 2, + "6331": 1, + "6332": 3, + "6333": 4, + "6335": 2, + "6336": 1, + "6338": 3, + "6339": 4, + "6340": 3, + "6341": 4, + "6342": 1, + "6343": 4, + "6344": 2, + "6345": 2, + "6346": 1, + "6348": 4, + "6349": 2, + "6350": 1, + "6351": 2, + "6352": 4, + "6354": 2, + "6355": 4, + "6356": 2, + "6357": 1, + "6359": 1, + "6363": 4, + "6364": 3, + "6365": 2, + "6367": 2, + "6368": 1, + "6369": 1, + "6370": 2, + "6372": 1, + "6375": 1, + "6376": 2, + "6377": 1, + "6380": 1, + "6381": 1, + "6387": 2, + "6389": 1, + "6396": 1, + "6398": 1, + "6404": 1, + "6406": 2, + "6407": 1, + "6408": 1, + "6409": 1, + "6415": 1, + "6416": 1, + "6419": 1, + "6420": 1, + "6422": 1, + "6423": 1, + "6424": 1, + "6425": 1, + "6427": 2, + "6428": 1, + "6429": 1, + "6431": 1, + "6432": 1, + "6434": 1, + "6435": 1, + "6438": 1, + "6439": 1, + "6440": 3, + "6444": 1, + "6446": 1, + "6447": 1, + "6448": 1, + "6449": 1, + "6453": 1, + "6454": 4, + "6456": 1, + "6457": 1, + "6458": 3, + "6463": 2, + "6464": 2, + "6465": 2, + "6466": 1, + "6468": 4, + "6470": 1, + "6472": 1, + "6473": 2, + "6474": 1, + "6475": 2, + "6476": 5, + "6477": 4, + "6478": 5, + "6480": 2, + "6481": 3, + "6482": 2, + "6483": 1, + "6484": 1, + "6485": 2, + "6486": 3, + "6487": 1, + "6488": 2, + "6490": 2, + "6491": 2, + "6492": 1, + "6493": 1, + "6494": 2, + "6496": 2, + "6497": 1, + "6498": 1, + "6499": 2, + "6500": 2, + "6501": 4, + "6502": 2, + "6503": 2, + "6504": 3, + "6505": 1, + "6506": 4, + "6507": 2, + "6508": 3, + "6509": 1, + "6510": 1, + "6511": 3, + "6512": 2, + "6514": 2, + "6516": 1, + "6517": 3, + "6519": 2, + "6521": 2, + "6522": 5, + "6523": 4, + "6524": 1, + "6525": 2, + "6526": 3, + "6527": 3, + "6528": 3, + "6529": 3, + "6530": 6, + "6531": 5, + "6532": 3, + "6533": 3, + "6534": 6, + "6535": 5, + "6536": 3, + "6537": 4, + "6538": 4, + "6539": 8, + "6540": 4, + "6541": 3, + "6542": 4, + "6543": 3, + "6544": 2, + "6545": 6, + "6547": 3, + "6548": 1, + "6549": 2, + "6550": 1, + "6551": 3, + "6552": 1, + "6553": 2, + "6554": 1, + "6555": 3, + "6556": 1, + "6557": 4, + "6558": 2, + "6560": 3, + "6561": 3, + "6562": 1, + "6563": 1, + "6564": 3, + "6565": 1, + "6566": 1, + "6567": 1, + "6568": 2, + "6570": 1, + "6572": 1, + "6573": 1, + "6575": 1, + "6577": 1, + "6578": 1, + "6579": 1, + "6581": 4, + "6582": 2, + "6584": 1, + "6585": 2, + "6588": 1, + "6591": 2, + "6598": 1, + "6599": 1, + "6601": 1, + "6606": 2, + "6608": 3, + "6613": 2, + "6614": 1, + "6615": 1, + "6616": 1, + "6619": 2, + "6620": 1, + "6624": 2, + "6625": 2, + "6626": 1, + "6628": 1, + "6629": 1, + "6630": 1, + "6633": 1, + "6637": 1, + "6639": 1, + "6640": 1, + "6643": 2, + "6644": 3, + "6645": 1, + "6646": 1, + "6650": 1, + "6651": 1, + "6655": 1, + "6656": 1, + "6657": 1, + "6659": 1, + "6660": 1, + "6663": 1, + "6671": 1, + "6674": 1, + "6685": 1, + "6690": 1, + "6694": 1, + "6698": 1, + "6708": 2, + "6720": 1, + "6722": 1, + "6725": 2, + "6730": 1, + "6731": 2, + "6733": 1, + "6734": 1, + "6739": 1, + "6743": 1, + "6749": 2, + "6751": 1, + "6752": 1, + "6753": 1, + "6755": 1, + "6757": 2, + "6760": 1, + "6761": 1, + "6765": 1, + "6766": 1, + "6767": 2, + "6769": 1, + "6771": 1, + "6772": 1, + "6774": 1, + "6778": 1, + "6781": 1, + "6802": 1, + "6804": 1, + "6807": 1, + "6811": 1, + "6813": 1, + "6819": 1, + "6823": 1, + "6827": 1, + "6828": 1, + "6837": 1, + "6840": 1, + "6844": 1, + "6862": 1, + "6865": 1, + "6881": 1, + "6882": 1, + "6897": 1, + "6912": 1, + "6921": 1, + "6924": 1, + "6935": 1, + "6947": 1, + "6951": 1, + "6960": 2, + "6962": 1, + "6964": 1, + "6968": 1, + "6977": 1, + "6982": 1, + "6983": 1, + "6993": 1, + "7387": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333434266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882d056c9a4d3be" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "d056c9a4" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_3_8.html b/autobahn/client/tungstenite_case_12_3_8.html new file mode 100644 index 0000000..e506307 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_8.html @@ -0,0 +1,1525 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.3.8 : Pass - 6339 ms @ 2020-09-07T18:46:42.809Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=345&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 6KVu9s9I17bVITeZClOwcA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: a334eEY+fvWIAnyyrgf816d4uqU=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
12005112005
12011112011
12014112014
12019112019
12021112021
12028112028
12032112032
12035112035
12036112036
12042112042
12043112043
12044112044
12045112045
12049112049
12053112053
12054112054
12057112057
12061112061
12063112063
12065224130
12068112068
12071112071
12074112074
12075112075
12079112079
12084112084
12086112086
12087112087
12093112093
12096112096
12097112097
12099112099
12100112100
12102112102
12105224210
12108112108
12112112112
12113224226
12116112116
12119112119
12122112122
12127112127
12128224256
12132112132
12133112133
12137112137
12140112140
12141112141
12142224284
12144224288
12145336435
12146112146
12147112147
12149112149
12152448608
12154112154
12155112155
12157112157
12159112159
12163112163
12165224330
12167224334
12171224342
12175224350
12181112181
12182112182
12183112183
12188112188
12200112200
12204112204
12208224416
12209224418
12210112210
12211112211
12213224426
12214336642
12216112216
12219112219
12220224440
12222224444
12223336669
12224112224
12225224450
12226224452
12228112228
12229112229
12230112230
12231336693
12232336696
12233112233
12234336702
12235224470
12236448944
12239224478
12240224480
12241112241
12242112242
12243112243
12244224488
12245112245
12246448984
12247224494
12248448992
12249224498
12250224500
12251336753
12252224504
12255112255
12256561280
12257673542
12258112258
12260561300
12261112261
12262224524
12263898104
12264112264
12265449060
12266224532
12267224534
12268561340
12269336807
12270336810
12271673626
12272336816
12273336819
12274112274
12275449100
12276561380
12277449108
12278449112
12279449116
12280449120
12281224562
12282224564
12283224566
12284561420
12285224570
12286112286
12287336861
12288224576
12289561445
12290561450
12291449164
12292336876
12293673758
12294786058
12295786065
12296449184
12297673782
12298561490
12299449196
12300336900
12301449204
12302449208
12303224606
12304561520
12305224610
12306336918
12307112307
12308561540
12309224618
12310449240
12311224622
12312112312
12313224626
12314112314
12315224630
12316336948
12317786219
12318449272
12319112319
12320561600
12321224642
12322449288
12323224646
12324561620
12325224650
12326224652
12327336981
12328449312
12329224658
12330224660
12331449324
12332336996
12333336999
12334112334
12335224670
12337112337
12338337014
12339224678
12340337020
12342449368
12343112343
12344224688
12345112345
12347112347
12348224696
12350449400
12351449404
12353224706
12357112357
12359112359
12360112360
12361112361
12362112362
12364112364
12365112365
12366112366
12367112367
12368112368
12371112371
12373224746
12374112374
12376224752
12382224764
12384112384
12385112385
12390112390
12402112402
12403112403
12408112408
12409112409
12410112410
12411112411
12412112412
12413112413
12414112414
12415112415
12416112416
12418224836
12419224838
12425112425
12426112426
12427112427
12430112430
12431112431
12432337296
12435112435
12436112436
12437112437
12438112438
12441337323
12442224884
12443112443
12445112445
12446112446
12448112448
12449112449
12450112450
12451112451
12455337365
12458112458
12461112461
12462112462
12465112465
12466224932
12468224936
12469112469
12470224940
12473337419
12474112474
12479112479
12481112481
12482112482
12486112486
12487224974
12492224984
12499112499
12502112502
12503225006
12504225008
12505225010
12506225012
12507112507
12508225016
12509112509
12510112510
12511112511
12513112513
12515112515
12516225032
12517225034
12520337560
12521112521
12523337569
12524112524
12525225050
12527112527
12528112528
12529112529
12530112530
12532112532
12533225066
12536112536
12537225074
12539112539
12542225084
12544112544
12546225092
12547112547
12548112548
12549225098
12550225100
12552112552
12554225108
12556225112
12559225118
12562225124
12565112565
12566112566
12568112568
12569112569
12571337713
12572112572
12573112573
12575112575
12576112576
12577225154
12578112578
12580112580
12581225162
12582112582
12583225166
12585112585
12586112586
12591112591
12594112594
12597112597
12598112598
12600225200
12601225202
12602225204
12603112603
12604112604
12607112607
12612112612
12616112616
12619112619
12624225248
12629112629
12633112633
12637112637
12638225276
12641225282
12644225288
12645112645
12648112648
12649225298
12650112650
12651337953
12652225304
12654112654
12655112655
12657112657
12658112658
12659112659
12660112660
12664112664
12665112665
12668112668
12672112672
12675112675
12676112676
12679112679
12680225360
12681225362
12682112682
12685112685
12686112686
12689112689
12698112698
12699112699
12702112702
12706112706
12707225414
12711112711
12715112715
12717112717
12719112719
12720112720
12724112724
12725112725
12726225452
12728112728
12730112730
12732112732
12733338199
12736112736
12738112738
12744112744
12746112746
12747112747
12750112750
12751112751
12753112753
12757112757
12759225518
12761112761
12770112770
12771112771
12779112779
12781225562
12783112783
12784338352
12789112789
12795112795
12798225596
12799225598
12800112800
12801112801
12802112802
12806112806
12807112807
12810112810
12811112811
12815225630
12817112817
12820112820
12823225646
12824112824
12825112825
12826225652
12829112829
12830225660
12831225662
12834112834
12836112836
12837112837
12838112838
12841225682
12844225688
12845225690
12846112846
12849112849
12852112852
12853225706
12855112855
12858338574
12859225718
12863112863
12865112865
12868112868
12869112869
12871225742
12873112873
12874112874
12875112875
12876225752
12878112878
12883112883
12884112884
12887112887
12888225776
12889225778
12890225780
12891112891
12892338676
12893112893
12894225788
12895112895
12896112896
12898112898
12899451596
12900225800
12901225802
12902338706
12904112904
12906112906
12908112908
12909112909
12910225820
12911677466
12912112912
12914112914
12915112915
12916112916
12919112919
12920112920
12922112922
12923112923
12925112925
12926112926
12928112928
12929225858
12930451720
12931112931
12936112936
12940225880
12941225882
12943112943
12944112944
12948112948
12949112949
12951112951
12954225908
12956112956
12959225918
12960112960
12962112962
12965112965
12977112977
12984112984
12988112988
12990112990
12997112997
13004113004
13017113017
13025113025
13028113028
13031226062
13032113032
13033113033
13035452140
13038226076
13039339117
13040226080
13041339123
13042113042
13043113043
13044113044
13045113045
13047226094
13065113065
13072113072
13079113079
13080113080
13085113085
13099113099
13100113100
13108113108
13110226220
13113113113
13116113116
13117113117
13132113132
13145113145
13162113162
13163113163
13164113164
13165113165
13172113172
13176113176
13184113184
13189113189
13192113192
13195113195
13198113198
13206113206
13214113214
13216113216
13220113220
13222113222
13224113224
13225113225
13226113226
13231113231
13233113233
13238113238
13239113239
13245113245
13258113258
13262113262
13272113272
13274113274
13278113278
13281113281
13289113289
13293113293
13299113299
13301339903
13303113303
13304113304
13312113312
13313113313
13314113314
13317113317
13319113319
13321226642
13323113323
13325113325
13326113326
13336226672
13337113337
13343113343
13344113344
13345113345
13348113348
13352113352
13353113353
13359113359
13360113360
13362113362
13365113365
13369113369
13370113370
13372226744
13376113376
13378113378
13380113380
13394113394
13399113399
13401113401
13409113409
13412113412
13413113413
13424113424
13428113428
13459113459
13480226960
13492113492
13496113496
13513113513
13541340623
13545113545
13551113551
14094114094
Total100212556619
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
12095112095
12101112101
12115112115
12117112117
12125224250
12127112127
12129112129
12135112135
12142112142
12147112147
12150112150
12155112155
12156112156
12162112162
12166224332
12168112168
12171112171
12174112174
12180336540
12181224362
12183112183
12185112185
12186112186
12191112191
12193112193
12195112195
12197112197
12198224396
12201112201
12203224406
12204112204
12212112212
12214112214
12226112226
12227112227
12228112228
12230112230
12232112232
12235224470
12243112243
12244112244
12248112248
12249112249
12253112253
12254112254
12257224514
12260224520
12265336795
12274224548
12275112275
12277112277
12278112278
12279336837
12280336840
12281112281
12283112283
12285112285
12286112286
12287224574
12288112288
12290112290
12291224582
12292112292
12296112296
12298112298
12299112299
12300112300
12302112302
12303112303
12304112304
12307112307
12309224618
12312224624
12315112315
12316112316
12317112317
12319224638
12320449280
12323112323
12324224648
12325224650
12326224652
12327224654
12328112328
12330112330
12331112331
12332112332
12334112334
12335224670
12336112336
12338449352
12339112339
12340224680
12341449364
12342112342
12344224688
12345224690
12346112346
12347337041
12349337047
12350224700
12352112352
12353112353
12354224708
12356224712
12357224714
12358561790
12359337077
12360224720
12361224722
12362224724
12363224726
12364224728
12366224732
12367224734
12368337104
12369224738
12370449480
12371112371
12372112372
12373674238
12374224748
12375112375
12376449504
12377112377
12378337134
12379224758
12380224760
12381337143
12382224764
12383112383
12384224768
12385224770
12386449544
12387449548
12388337164
12389112389
12390899120
12391449564
12392449568
12393224786
12394337182
12395337185
12396449584
12397449588
12398561990
12399449596
12400337200
12401786807
12402449608
12403674418
12404449616
12405562025
12406562030
12407337221
12408674448
12409112409
12410224820
12411449644
12412562060
12413449652
12414449656
12415224830
12417449668
12418112418
12419337257
12420562100
12421562105
12422337266
12423449692
12424562120
12425224850
12426674556
12427449708
12428337284
1243011136730
12431562155
12432224864
12433674598
12434337302
12435112435
12436337308
12437337311
12438224876
12439112439
12440112440
12441337323
12442449768
12443224886
12444337332
12445337335
12446337338
12447224894
12448224896
12449224898
12450224900
12451112451
12452224904
12453449812
12454224908
12455112455
12456224912
12457224914
12458224916
12461112461
12462112462
12463224926
12464224928
12465224930
12466224932
12467112467
12468112468
12470112470
12472112472
12473112473
12474112474
12478337434
12479449916
12480224960
12482112482
12484224968
12487337461
12488112488
12489112489
12495112495
12496112496
12498112498
12499112499
12500112500
12503112503
12504112504
12506112506
12512112512
12513112513
12514112514
12515225030
12519112519
12520337560
12521112521
12522112522
12523112523
12524225048
12528337584
12529112529
12531337593
12532112532
12533225066
12535225070
12537337611
12538112538
12539337617
12542112542
12543112543
12544337632
12547112547
12548112548
12549225098
12551112551
12552112552
12553337659
12555112555
12556112556
12557112557
12558112558
12562225124
12565112565
12566337698
12568112568
12571112571
12572225144
12574112574
12575112575
12579112579
12583112583
12584112584
12587112587
12594112594
12595225190
12596112596
12597112597
12613112613
12615225230
12616112616
12619112619
12621112621
12624112624
12625112625
12626112626
12630112630
12631112631
12633112633
12634225268
12635225270
12637112637
12638337914
12642225284
12643112643
12644112644
12647112647
12648225296
12650337950
12652112652
12653225306
12654225308
12655225310
12657112657
12658112658
12659112659
12660112660
12661112661
12662112662
12663112663
12664112664
12666112666
12667112667
12670225340
12672112672
12676338028
12678112678
12679112679
12680112680
12681338043
12683112683
12685225370
12686225372
12688225376
12689112689
12691112691
12695112695
12697112697
12699112699
12700112700
12702112702
12703112703
12706112706
12708112708
12709112709
12711112711
12712112712
12713112713
12715338145
12716225432
12727112727
12730112730
12733112733
12737225474
12738112738
12741112741
12742112742
12744112744
12746225492
12747112747
12748225496
12749225498
12750112750
12753112753
12755112755
12762112762
12765112765
12767112767
12769112769
12770112770
12771112771
12772225544
12774225548
12775112775
12776112776
12777112777
12796112796
12798112798
12804112804
12806225612
12809225618
12810225620
12812225624
12813112813
12814112814
12816112816
12821112821
12822225644
12823112823
12824112824
12826112826
12827112827
12828225656
12829112829
12832112832
12836112836
12838112838
12839112839
12844112844
12846112846
12848225696
12849112849
12850112850
12853112853
12854112854
12856112856
12859112859
12868112868
12870112870
12875112875
12878112878
12879112879
12881225762
12884112884
12886112886
12889112889
12891112891
12892225784
12898225796
12899112899
12900225800
12902112902
12904225808
12906112906
12912112912
12913112913
12914225828
12915112915
12916112916
12918112918
12919112919
12925225850
12928112928
12929112929
12930225860
12931225862
12932112932
12933112933
12940225880
12943225886
12944225888
12945225890
12947338841
12950112950
12951225902
12954112954
12955112955
12957112957
12959338877
12961225922
12962112962
12965112965
12966112966
12967112967
12968112968
12970112970
12971112971
12972112972
12973112973
12974225948
12975112975
12977112977
12978112978
12983225966
12984225968
12985225970
12986225972
12987112987
12988225976
12989225978
12990225980
12991112991
12993112993
12994112994
12995112995
12996112996
12997112997
12998112998
12999338997
13000339000
13001113001
13002339006
13003113003
13004226008
13005113005
13006113006
13008226016
13009226018
13011113011
13013113013
13014113014
13015226030
13017226034
13021226042
13022113022
13025113025
13027339081
13030113030
13031113031
13036113036
13038113038
13050113050
13052113052
13054113054
13055113055
13060113060
13064113064
13076113076
13079113079
13083113083
13084113084
13092113092
13098113098
13101113101
13105113105
13108113108
13111113111
13118113118
13119113119
13120339360
13121113121
13122113122
13124226248
13125452500
13126113126
13127339381
13128113128
13130113130
13131113131
13133113133
13138226276
13151113151
13152113152
13157113157
13163113163
13177113177
13186226372
13187226374
13188113188
13193113193
13196113196
13213113213
13222113222
13239113239
13241113241
13248226496
13251113251
13259113259
13260113260
13261113261
13262113262
13264113264
13266113266
13267113267
13268113268
13269113269
13273113273
13279113279
13281113281
13283113283
13285113285
13286113286
13294113294
13307113307
13309113309
13310113310
13322113322
13325113325
13326113326
13328113328
13336113336
13341113341
13342113342
13349113349
13350113350
13354113354
13355113355
13357226714
13358113358
13361226722
13362113362
13367113367
13373113373
13377113377
13378113378
13379226758
13388226776
13390113390
13391113391
13393113393
13396113396
13399113399
13409113409
13411113411
13412226824
13418113418
13422113422
13423113423
13425113425
13432226864
13444113444
13451113451
13458113458
13463226926
13469113469
13483113483
13485113485
13513113513
13534113534
13536113536
13548113548
13552113552
13569113569
13599113599
13600113600
13601113601
13602113602
13609113609
14132114132
Total100212644480
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333435266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882646f737e6787
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3634366637333765
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_3_8.json b/autobahn/client/tungstenite_case_12_3_8.json new file mode 100644 index 0000000..f4c997f --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_8.json @@ -0,0 +1,1372 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 345, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 6339, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=345&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 6KVu9s9I17bVITeZClOwcA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: a334eEY+fvWIAnyyrgf816d4uqU=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.3.8", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "12005": 1, + "12011": 1, + "12014": 1, + "12019": 1, + "12021": 1, + "12028": 1, + "12032": 1, + "12035": 1, + "12036": 1, + "12042": 1, + "12043": 1, + "12044": 1, + "12045": 1, + "12049": 1, + "12053": 1, + "12054": 1, + "12057": 1, + "12061": 1, + "12063": 1, + "12065": 2, + "12068": 1, + "12071": 1, + "12074": 1, + "12075": 1, + "12079": 1, + "12084": 1, + "12086": 1, + "12087": 1, + "12093": 1, + "12096": 1, + "12097": 1, + "12099": 1, + "12100": 1, + "12102": 1, + "12105": 2, + "12108": 1, + "12112": 1, + "12113": 2, + "12116": 1, + "12119": 1, + "12122": 1, + "12127": 1, + "12128": 2, + "12132": 1, + "12133": 1, + "12137": 1, + "12140": 1, + "12141": 1, + "12142": 2, + "12144": 2, + "12145": 3, + "12146": 1, + "12147": 1, + "12149": 1, + "12152": 4, + "12154": 1, + "12155": 1, + "12157": 1, + "12159": 1, + "12163": 1, + "12165": 2, + "12167": 2, + "12171": 2, + "12175": 2, + "12181": 1, + "12182": 1, + "12183": 1, + "12188": 1, + "12200": 1, + "12204": 1, + "12208": 2, + "12209": 2, + "12210": 1, + "12211": 1, + "12213": 2, + "12214": 3, + "12216": 1, + "12219": 1, + "12220": 2, + "12222": 2, + "12223": 3, + "12224": 1, + "12225": 2, + "12226": 2, + "12228": 1, + "12229": 1, + "12230": 1, + "12231": 3, + "12232": 3, + "12233": 1, + "12234": 3, + "12235": 2, + "12236": 4, + "12239": 2, + "12240": 2, + "12241": 1, + "12242": 1, + "12243": 1, + "12244": 2, + "12245": 1, + "12246": 4, + "12247": 2, + "12248": 4, + "12249": 2, + "12250": 2, + "12251": 3, + "12252": 2, + "12255": 1, + "12256": 5, + "12257": 6, + "12258": 1, + "12260": 5, + "12261": 1, + "12262": 2, + "12263": 8, + "12264": 1, + "12265": 4, + "12266": 2, + "12267": 2, + "12268": 5, + "12269": 3, + "12270": 3, + "12271": 6, + "12272": 3, + "12273": 3, + "12274": 1, + "12275": 4, + "12276": 5, + "12277": 4, + "12278": 4, + "12279": 4, + "12280": 4, + "12281": 2, + "12282": 2, + "12283": 2, + "12284": 5, + "12285": 2, + "12286": 1, + "12287": 3, + "12288": 2, + "12289": 5, + "12290": 5, + "12291": 4, + "12292": 3, + "12293": 6, + "12294": 7, + "12295": 7, + "12296": 4, + "12297": 6, + "12298": 5, + "12299": 4, + "12300": 3, + "12301": 4, + "12302": 4, + "12303": 2, + "12304": 5, + "12305": 2, + "12306": 3, + "12307": 1, + "12308": 5, + "12309": 2, + "12310": 4, + "12311": 2, + "12312": 1, + "12313": 2, + "12314": 1, + "12315": 2, + "12316": 3, + "12317": 7, + "12318": 4, + "12319": 1, + "12320": 5, + "12321": 2, + "12322": 4, + "12323": 2, + "12324": 5, + "12325": 2, + "12326": 2, + "12327": 3, + "12328": 4, + "12329": 2, + "12330": 2, + "12331": 4, + "12332": 3, + "12333": 3, + "12334": 1, + "12335": 2, + "12337": 1, + "12338": 3, + "12339": 2, + "12340": 3, + "12342": 4, + "12343": 1, + "12344": 2, + "12345": 1, + "12347": 1, + "12348": 2, + "12350": 4, + "12351": 4, + "12353": 2, + "12357": 1, + "12359": 1, + "12360": 1, + "12361": 1, + "12362": 1, + "12364": 1, + "12365": 1, + "12366": 1, + "12367": 1, + "12368": 1, + "12371": 1, + "12373": 2, + "12374": 1, + "12376": 2, + "12382": 2, + "12384": 1, + "12385": 1, + "12390": 1, + "12402": 1, + "12403": 1, + "12408": 1, + "12409": 1, + "12410": 1, + "12411": 1, + "12412": 1, + "12413": 1, + "12414": 1, + "12415": 1, + "12416": 1, + "12418": 2, + "12419": 2, + "12425": 1, + "12426": 1, + "12427": 1, + "12430": 1, + "12431": 1, + "12432": 3, + "12435": 1, + "12436": 1, + "12437": 1, + "12438": 1, + "12441": 3, + "12442": 2, + "12443": 1, + "12445": 1, + "12446": 1, + "12448": 1, + "12449": 1, + "12450": 1, + "12451": 1, + "12455": 3, + "12458": 1, + "12461": 1, + "12462": 1, + "12465": 1, + "12466": 2, + "12468": 2, + "12469": 1, + "12470": 2, + "12473": 3, + "12474": 1, + "12479": 1, + "12481": 1, + "12482": 1, + "12486": 1, + "12487": 2, + "12492": 2, + "12499": 1, + "12502": 1, + "12503": 2, + "12504": 2, + "12505": 2, + "12506": 2, + "12507": 1, + "12508": 2, + "12509": 1, + "12510": 1, + "12511": 1, + "12513": 1, + "12515": 1, + "12516": 2, + "12517": 2, + "12520": 3, + "12521": 1, + "12523": 3, + "12524": 1, + "12525": 2, + "12527": 1, + "12528": 1, + "12529": 1, + "12530": 1, + "12532": 1, + "12533": 2, + "12536": 1, + "12537": 2, + "12539": 1, + "12542": 2, + "12544": 1, + "12546": 2, + "12547": 1, + "12548": 1, + "12549": 2, + "12550": 2, + "12552": 1, + "12554": 2, + "12556": 2, + "12559": 2, + "12562": 2, + "12565": 1, + "12566": 1, + "12568": 1, + "12569": 1, + "12571": 3, + "12572": 1, + "12573": 1, + "12575": 1, + "12576": 1, + "12577": 2, + "12578": 1, + "12580": 1, + "12581": 2, + "12582": 1, + "12583": 2, + "12585": 1, + "12586": 1, + "12591": 1, + "12594": 1, + "12597": 1, + "12598": 1, + "12600": 2, + "12601": 2, + "12602": 2, + "12603": 1, + "12604": 1, + "12607": 1, + "12612": 1, + "12616": 1, + "12619": 1, + "12624": 2, + "12629": 1, + "12633": 1, + "12637": 1, + "12638": 2, + "12641": 2, + "12644": 2, + "12645": 1, + "12648": 1, + "12649": 2, + "12650": 1, + "12651": 3, + "12652": 2, + "12654": 1, + "12655": 1, + "12657": 1, + "12658": 1, + "12659": 1, + "12660": 1, + "12664": 1, + "12665": 1, + "12668": 1, + "12672": 1, + "12675": 1, + "12676": 1, + "12679": 1, + "12680": 2, + "12681": 2, + "12682": 1, + "12685": 1, + "12686": 1, + "12689": 1, + "12698": 1, + "12699": 1, + "12702": 1, + "12706": 1, + "12707": 2, + "12711": 1, + "12715": 1, + "12717": 1, + "12719": 1, + "12720": 1, + "12724": 1, + "12725": 1, + "12726": 2, + "12728": 1, + "12730": 1, + "12732": 1, + "12733": 3, + "12736": 1, + "12738": 1, + "12744": 1, + "12746": 1, + "12747": 1, + "12750": 1, + "12751": 1, + "12753": 1, + "12757": 1, + "12759": 2, + "12761": 1, + "12770": 1, + "12771": 1, + "12779": 1, + "12781": 2, + "12783": 1, + "12784": 3, + "12789": 1, + "12795": 1, + "12798": 2, + "12799": 2, + "12800": 1, + "12801": 1, + "12802": 1, + "12806": 1, + "12807": 1, + "12810": 1, + "12811": 1, + "12815": 2, + "12817": 1, + "12820": 1, + "12823": 2, + "12824": 1, + "12825": 1, + "12826": 2, + "12829": 1, + "12830": 2, + "12831": 2, + "12834": 1, + "12836": 1, + "12837": 1, + "12838": 1, + "12841": 2, + "12844": 2, + "12845": 2, + "12846": 1, + "12849": 1, + "12852": 1, + "12853": 2, + "12855": 1, + "12858": 3, + "12859": 2, + "12863": 1, + "12865": 1, + "12868": 1, + "12869": 1, + "12871": 2, + "12873": 1, + "12874": 1, + "12875": 1, + "12876": 2, + "12878": 1, + "12883": 1, + "12884": 1, + "12887": 1, + "12888": 2, + "12889": 2, + "12890": 2, + "12891": 1, + "12892": 3, + "12893": 1, + "12894": 2, + "12895": 1, + "12896": 1, + "12898": 1, + "12899": 4, + "12900": 2, + "12901": 2, + "12902": 3, + "12904": 1, + "12906": 1, + "12908": 1, + "12909": 1, + "12910": 2, + "12911": 6, + "12912": 1, + "12914": 1, + "12915": 1, + "12916": 1, + "12919": 1, + "12920": 1, + "12922": 1, + "12923": 1, + "12925": 1, + "12926": 1, + "12928": 1, + "12929": 2, + "12930": 4, + "12931": 1, + "12936": 1, + "12940": 2, + "12941": 2, + "12943": 1, + "12944": 1, + "12948": 1, + "12949": 1, + "12951": 1, + "12954": 2, + "12956": 1, + "12959": 2, + "12960": 1, + "12962": 1, + "12965": 1, + "12977": 1, + "12984": 1, + "12988": 1, + "12990": 1, + "12997": 1, + "13004": 1, + "13017": 1, + "13025": 1, + "13028": 1, + "13031": 2, + "13032": 1, + "13033": 1, + "13035": 4, + "13038": 2, + "13039": 3, + "13040": 2, + "13041": 3, + "13042": 1, + "13043": 1, + "13044": 1, + "13045": 1, + "13047": 2, + "13065": 1, + "13072": 1, + "13079": 1, + "13080": 1, + "13085": 1, + "13099": 1, + "13100": 1, + "13108": 1, + "13110": 2, + "13113": 1, + "13116": 1, + "13117": 1, + "13132": 1, + "13145": 1, + "13162": 1, + "13163": 1, + "13164": 1, + "13165": 1, + "13172": 1, + "13176": 1, + "13184": 1, + "13189": 1, + "13192": 1, + "13195": 1, + "13198": 1, + "13206": 1, + "13214": 1, + "13216": 1, + "13220": 1, + "13222": 1, + "13224": 1, + "13225": 1, + "13226": 1, + "13231": 1, + "13233": 1, + "13238": 1, + "13239": 1, + "13245": 1, + "13258": 1, + "13262": 1, + "13272": 1, + "13274": 1, + "13278": 1, + "13281": 1, + "13289": 1, + "13293": 1, + "13299": 1, + "13301": 3, + "13303": 1, + "13304": 1, + "13312": 1, + "13313": 1, + "13314": 1, + "13317": 1, + "13319": 1, + "13321": 2, + "13323": 1, + "13325": 1, + "13326": 1, + "13336": 2, + "13337": 1, + "13343": 1, + "13344": 1, + "13345": 1, + "13348": 1, + "13352": 1, + "13353": 1, + "13359": 1, + "13360": 1, + "13362": 1, + "13365": 1, + "13369": 1, + "13370": 1, + "13372": 2, + "13376": 1, + "13378": 1, + "13380": 1, + "13394": 1, + "13399": 1, + "13401": 1, + "13409": 1, + "13412": 1, + "13413": 1, + "13424": 1, + "13428": 1, + "13459": 1, + "13480": 2, + "13492": 1, + "13496": 1, + "13513": 1, + "13541": 3, + "13545": 1, + "13551": 1, + "14094": 1 + }, + "started": "2020-09-07T18:46:42.809Z", + "trafficStats": { + "incomingCompressionRatio": 0.38294537353515623, + "incomingOctetsAppLevel": 32768000, + "incomingOctetsWebSocketLevel": 12548354, + "incomingOctetsWireLevel": 12556354, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0006375338151920165, + "outgoingCompressionRatio": 0.3857490234375, + "outgoingOctetsAppLevel": 32768000, + "outgoingOctetsWebSocketLevel": 12640224, + "outgoingOctetsWireLevel": 12644224, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0003164500882262846, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "12095": 1, + "12101": 1, + "12115": 1, + "12117": 1, + "12125": 2, + "12127": 1, + "12129": 1, + "12135": 1, + "12142": 1, + "12147": 1, + "12150": 1, + "12155": 1, + "12156": 1, + "12162": 1, + "12166": 2, + "12168": 1, + "12171": 1, + "12174": 1, + "12180": 3, + "12181": 2, + "12183": 1, + "12185": 1, + "12186": 1, + "12191": 1, + "12193": 1, + "12195": 1, + "12197": 1, + "12198": 2, + "12201": 1, + "12203": 2, + "12204": 1, + "12212": 1, + "12214": 1, + "12226": 1, + "12227": 1, + "12228": 1, + "12230": 1, + "12232": 1, + "12235": 2, + "12243": 1, + "12244": 1, + "12248": 1, + "12249": 1, + "12253": 1, + "12254": 1, + "12257": 2, + "12260": 2, + "12265": 3, + "12274": 2, + "12275": 1, + "12277": 1, + "12278": 1, + "12279": 3, + "12280": 3, + "12281": 1, + "12283": 1, + "12285": 1, + "12286": 1, + "12287": 2, + "12288": 1, + "12290": 1, + "12291": 2, + "12292": 1, + "12296": 1, + "12298": 1, + "12299": 1, + "12300": 1, + "12302": 1, + "12303": 1, + "12304": 1, + "12307": 1, + "12309": 2, + "12312": 2, + "12315": 1, + "12316": 1, + "12317": 1, + "12319": 2, + "12320": 4, + "12323": 1, + "12324": 2, + "12325": 2, + "12326": 2, + "12327": 2, + "12328": 1, + "12330": 1, + "12331": 1, + "12332": 1, + "12334": 1, + "12335": 2, + "12336": 1, + "12338": 4, + "12339": 1, + "12340": 2, + "12341": 4, + "12342": 1, + "12344": 2, + "12345": 2, + "12346": 1, + "12347": 3, + "12349": 3, + "12350": 2, + "12352": 1, + "12353": 1, + "12354": 2, + "12356": 2, + "12357": 2, + "12358": 5, + "12359": 3, + "12360": 2, + "12361": 2, + "12362": 2, + "12363": 2, + "12364": 2, + "12366": 2, + "12367": 2, + "12368": 3, + "12369": 2, + "12370": 4, + "12371": 1, + "12372": 1, + "12373": 6, + "12374": 2, + "12375": 1, + "12376": 4, + "12377": 1, + "12378": 3, + "12379": 2, + "12380": 2, + "12381": 3, + "12382": 2, + "12383": 1, + "12384": 2, + "12385": 2, + "12386": 4, + "12387": 4, + "12388": 3, + "12389": 1, + "12390": 8, + "12391": 4, + "12392": 4, + "12393": 2, + "12394": 3, + "12395": 3, + "12396": 4, + "12397": 4, + "12398": 5, + "12399": 4, + "12400": 3, + "12401": 7, + "12402": 4, + "12403": 6, + "12404": 4, + "12405": 5, + "12406": 5, + "12407": 3, + "12408": 6, + "12409": 1, + "12410": 2, + "12411": 4, + "12412": 5, + "12413": 4, + "12414": 4, + "12415": 2, + "12417": 4, + "12418": 1, + "12419": 3, + "12420": 5, + "12421": 5, + "12422": 3, + "12423": 4, + "12424": 5, + "12425": 2, + "12426": 6, + "12427": 4, + "12428": 3, + "12430": 11, + "12431": 5, + "12432": 2, + "12433": 6, + "12434": 3, + "12435": 1, + "12436": 3, + "12437": 3, + "12438": 2, + "12439": 1, + "12440": 1, + "12441": 3, + "12442": 4, + "12443": 2, + "12444": 3, + "12445": 3, + "12446": 3, + "12447": 2, + "12448": 2, + "12449": 2, + "12450": 2, + "12451": 1, + "12452": 2, + "12453": 4, + "12454": 2, + "12455": 1, + "12456": 2, + "12457": 2, + "12458": 2, + "12461": 1, + "12462": 1, + "12463": 2, + "12464": 2, + "12465": 2, + "12466": 2, + "12467": 1, + "12468": 1, + "12470": 1, + "12472": 1, + "12473": 1, + "12474": 1, + "12478": 3, + "12479": 4, + "12480": 2, + "12482": 1, + "12484": 2, + "12487": 3, + "12488": 1, + "12489": 1, + "12495": 1, + "12496": 1, + "12498": 1, + "12499": 1, + "12500": 1, + "12503": 1, + "12504": 1, + "12506": 1, + "12512": 1, + "12513": 1, + "12514": 1, + "12515": 2, + "12519": 1, + "12520": 3, + "12521": 1, + "12522": 1, + "12523": 1, + "12524": 2, + "12528": 3, + "12529": 1, + "12531": 3, + "12532": 1, + "12533": 2, + "12535": 2, + "12537": 3, + "12538": 1, + "12539": 3, + "12542": 1, + "12543": 1, + "12544": 3, + "12547": 1, + "12548": 1, + "12549": 2, + "12551": 1, + "12552": 1, + "12553": 3, + "12555": 1, + "12556": 1, + "12557": 1, + "12558": 1, + "12562": 2, + "12565": 1, + "12566": 3, + "12568": 1, + "12571": 1, + "12572": 2, + "12574": 1, + "12575": 1, + "12579": 1, + "12583": 1, + "12584": 1, + "12587": 1, + "12594": 1, + "12595": 2, + "12596": 1, + "12597": 1, + "12613": 1, + "12615": 2, + "12616": 1, + "12619": 1, + "12621": 1, + "12624": 1, + "12625": 1, + "12626": 1, + "12630": 1, + "12631": 1, + "12633": 1, + "12634": 2, + "12635": 2, + "12637": 1, + "12638": 3, + "12642": 2, + "12643": 1, + "12644": 1, + "12647": 1, + "12648": 2, + "12650": 3, + "12652": 1, + "12653": 2, + "12654": 2, + "12655": 2, + "12657": 1, + "12658": 1, + "12659": 1, + "12660": 1, + "12661": 1, + "12662": 1, + "12663": 1, + "12664": 1, + "12666": 1, + "12667": 1, + "12670": 2, + "12672": 1, + "12676": 3, + "12678": 1, + "12679": 1, + "12680": 1, + "12681": 3, + "12683": 1, + "12685": 2, + "12686": 2, + "12688": 2, + "12689": 1, + "12691": 1, + "12695": 1, + "12697": 1, + "12699": 1, + "12700": 1, + "12702": 1, + "12703": 1, + "12706": 1, + "12708": 1, + "12709": 1, + "12711": 1, + "12712": 1, + "12713": 1, + "12715": 3, + "12716": 2, + "12727": 1, + "12730": 1, + "12733": 1, + "12737": 2, + "12738": 1, + "12741": 1, + "12742": 1, + "12744": 1, + "12746": 2, + "12747": 1, + "12748": 2, + "12749": 2, + "12750": 1, + "12753": 1, + "12755": 1, + "12762": 1, + "12765": 1, + "12767": 1, + "12769": 1, + "12770": 1, + "12771": 1, + "12772": 2, + "12774": 2, + "12775": 1, + "12776": 1, + "12777": 1, + "12796": 1, + "12798": 1, + "12804": 1, + "12806": 2, + "12809": 2, + "12810": 2, + "12812": 2, + "12813": 1, + "12814": 1, + "12816": 1, + "12821": 1, + "12822": 2, + "12823": 1, + "12824": 1, + "12826": 1, + "12827": 1, + "12828": 2, + "12829": 1, + "12832": 1, + "12836": 1, + "12838": 1, + "12839": 1, + "12844": 1, + "12846": 1, + "12848": 2, + "12849": 1, + "12850": 1, + "12853": 1, + "12854": 1, + "12856": 1, + "12859": 1, + "12868": 1, + "12870": 1, + "12875": 1, + "12878": 1, + "12879": 1, + "12881": 2, + "12884": 1, + "12886": 1, + "12889": 1, + "12891": 1, + "12892": 2, + "12898": 2, + "12899": 1, + "12900": 2, + "12902": 1, + "12904": 2, + "12906": 1, + "12912": 1, + "12913": 1, + "12914": 2, + "12915": 1, + "12916": 1, + "12918": 1, + "12919": 1, + "12925": 2, + "12928": 1, + "12929": 1, + "12930": 2, + "12931": 2, + "12932": 1, + "12933": 1, + "12940": 2, + "12943": 2, + "12944": 2, + "12945": 2, + "12947": 3, + "12950": 1, + "12951": 2, + "12954": 1, + "12955": 1, + "12957": 1, + "12959": 3, + "12961": 2, + "12962": 1, + "12965": 1, + "12966": 1, + "12967": 1, + "12968": 1, + "12970": 1, + "12971": 1, + "12972": 1, + "12973": 1, + "12974": 2, + "12975": 1, + "12977": 1, + "12978": 1, + "12983": 2, + "12984": 2, + "12985": 2, + "12986": 2, + "12987": 1, + "12988": 2, + "12989": 2, + "12990": 2, + "12991": 1, + "12993": 1, + "12994": 1, + "12995": 1, + "12996": 1, + "12997": 1, + "12998": 1, + "12999": 3, + "13000": 3, + "13001": 1, + "13002": 3, + "13003": 1, + "13004": 2, + "13005": 1, + "13006": 1, + "13008": 2, + "13009": 2, + "13011": 1, + "13013": 1, + "13014": 1, + "13015": 2, + "13017": 2, + "13021": 2, + "13022": 1, + "13025": 1, + "13027": 3, + "13030": 1, + "13031": 1, + "13036": 1, + "13038": 1, + "13050": 1, + "13052": 1, + "13054": 1, + "13055": 1, + "13060": 1, + "13064": 1, + "13076": 1, + "13079": 1, + "13083": 1, + "13084": 1, + "13092": 1, + "13098": 1, + "13101": 1, + "13105": 1, + "13108": 1, + "13111": 1, + "13118": 1, + "13119": 1, + "13120": 3, + "13121": 1, + "13122": 1, + "13124": 2, + "13125": 4, + "13126": 1, + "13127": 3, + "13128": 1, + "13130": 1, + "13131": 1, + "13133": 1, + "13138": 2, + "13151": 1, + "13152": 1, + "13157": 1, + "13163": 1, + "13177": 1, + "13186": 2, + "13187": 2, + "13188": 1, + "13193": 1, + "13196": 1, + "13213": 1, + "13222": 1, + "13239": 1, + "13241": 1, + "13248": 2, + "13251": 1, + "13259": 1, + "13260": 1, + "13261": 1, + "13262": 1, + "13264": 1, + "13266": 1, + "13267": 1, + "13268": 1, + "13269": 1, + "13273": 1, + "13279": 1, + "13281": 1, + "13283": 1, + "13285": 1, + "13286": 1, + "13294": 1, + "13307": 1, + "13309": 1, + "13310": 1, + "13322": 1, + "13325": 1, + "13326": 1, + "13328": 1, + "13336": 1, + "13341": 1, + "13342": 1, + "13349": 1, + "13350": 1, + "13354": 1, + "13355": 1, + "13357": 2, + "13358": 1, + "13361": 2, + "13362": 1, + "13367": 1, + "13373": 1, + "13377": 1, + "13378": 1, + "13379": 2, + "13388": 2, + "13390": 1, + "13391": 1, + "13393": 1, + "13396": 1, + "13399": 1, + "13409": 1, + "13411": 1, + "13412": 2, + "13418": 1, + "13422": 1, + "13423": 1, + "13425": 1, + "13432": 2, + "13444": 1, + "13451": 1, + "13458": 1, + "13463": 2, + "13469": 1, + "13483": 1, + "13485": 1, + "13513": 1, + "13534": 1, + "13536": 1, + "13548": 1, + "13552": 1, + "13569": 1, + "13599": 1, + "13600": 1, + "13601": 1, + "13602": 1, + "13609": 1, + "14132": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333435266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882646f737e6787" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "646f737e" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_3_9.html b/autobahn/client/tungstenite_case_12_3_9.html new file mode 100644 index 0000000..f807ed9 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_9.html @@ -0,0 +1,1710 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.3.9 : Pass - 12369 ms @ 2020-09-07T18:46:49.149Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=346&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ItfhgqAv80Qpc3+3zsNe3A==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: MA0ZPC/dco5tmCj7K1qHnhNrC9w=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
24229124229
24231124231
24240124240
24241124241
24242124242
24243248486
24244124244
24248248496
24256124256
24258248516
24262124262
24268124268
24269124269
24270124270
24282124282
24296372888
24299124299
24303124303
24306124306
24313124313
24314124314
24316124316
24318124318
24322124322
24347124347
24354124354
24371124371
24374124374
24381124381
24384124384
24389248778
24390124390
24392124392
24393248786
24394373182
24395248790
24396124396
24397248794
24398248796
24399124399
24400124400
24401248802
24402124402
24405124405
24406124406
24408124408
24409124409
24410248820
24412124412
24413124413
24415124415
24417124417
24418248836
24419248838
24420248840
24421124421
24422124422
24423373269
24424248848
24425124425
24426248852
24427248854
24428248856
24429124429
24432248864
24433124433
24434497736
24435248870
24436124436
24438124438
24439373317
24443124443
24445124445
24447124447
24449124449
24450124450
24451248902
24454248908
24455124455
24458124458
24460124460
24461124461
24462248924
24463124463
24464124464
24468248936
24470248940
24473248946
24476124476
24477373431
24480124480
24483124483
24484248968
24485248970
24486248972
24487248974
24491248982
24492124492
24493248986
24494124494
24496248992
24497248994
24499124499
24500249000
24501124501
24502124502
24503373509
24504498016
24505124505
24506373518
24507373521
245086147048
24510124510
24511124511
245125122560
24513124513
24514498056
24515124515
245165122580
24517249034
24518124518
24519373557
24521249042
24522249044
24525124525
24526124526
24527249054
24528124528
24529124529
24532249064
245335122665
24534373602
24535124535
24536249072
24539249078
245426147252
24543373629
24544124544
24545124545
24546249092
24547249094
24548249096
24549124549
24552124552
24553249106
24554124554
24555373665
24556249112
24557124557
24558249116
24562249124
24563124563
24564124564
24565124565
24566249132
24568124568
24570124570
24571124571
24572124572
24574124574
24575373725
24576124576
24579124579
24583124583
24585124585
24586124586
24589249178
24591124591
24596124596
24598124598
24604124604
24609124609
24612124612
24619124619
24624124624
24627124627
24629124629
24636124636
24641124641
24642124642
24643249286
24644124644
24645124645
24646124646
24647249294
24651124651
24656124656
24658124658
24670249340
24672124672
24676249352
24680124680
24685124685
24688124688
24690124690
24693249386
24694124694
24695374085
24701124701
24703124703
24705249410
24706374118
24710249420
24711374133
24714124714
24715124715
24716124716
24717249434
24719124719
24720249440
24723124723
24724249448
24725124725
24727124727
24729249458
24735124735
24739124739
24743124743
24745498980
24746124746
24747124747
24748124748
24749124749
24751124751
24754124754
24755124755
24759124759
24762124762
24766124766
24769124769
24772374316
24774249548
24775249550
24779124779
24780249560
24781249562
24782124782
24785124785
24790249580
24791124791
24792249584
24794124794
24796124796
24799124799
24800124800
24801124801
24802124802
24803124803
24804124804
24805124805
24806124806
24808124808
24809124809
24812124812
24813124813
24814249628
24821124821
24825124825
24826249652
24829124829
24830124830
24831124831
24832249664
24833124833
24834124834
24835124835
24837124837
24838249676
24839124839
24841249682
24843124843
24846124846
24852124852
24859124859
24860124860
24861124861
24866124866
24870249740
24871249742
24876124876
24877124877
24880124880
24881124881
24885249770
24887124887
24893124893
24896124896
24899124899
24915249830
24916124916
24917124917
24918124918
24919124919
24930124930
24936124936
24938124938
24939124939
24945124945
24947124947
24950249900
24955124955
24959124959
24963124963
24967124967
24970124970
24972374916
24973124973
24976124976
24977249954
24978249956
24984124984
24986249972
24988249976
24990124990
24995124995
24996249992
24997124997
24998124998
25000125000
25001125001
25002125002
25003125003
25004125004
25005375015
25007125007
25009250018
25011125011
25013125013
25014125014
25016125016
25018125018
25023125023
25024125024
25027125027
25028125028
25029250058
25031125031
25033250066
25035250070
25036125036
25037250074
25039250078
25040250080
25041250082
25042250084
250444100176
25047125047
25048125048
25050125050
25051250102
25052125052
25053250106
25054125054
25055250110
25056125056
25059125059
25060125060
25064250128
25065125065
25066375198
25068125068
25069125069
25071250142
25072250144
25073125073
25076250152
25079125079
25080125080
25081250162
25082250164
25083125083
25084125084
25085125085
25086125086
25087250174
25088125088
25089250178
25090125090
25091125091
25093125093
25095125095
25096250192
25101125101
25103125103
25105125105
25108125108
25112125112
25113125113
25114250228
25116125116
25118125118
25119125119
25121250242
25122125122
25125250250
25127125127
25128125128
25129125129
25131125131
25132250264
25133125133
251344100536
25135125135
25136250272
25137125137
25139125139
25140250280
25141375423
25142125142
25143125143
25144125144
25146250292
25147250294
25148125148
25152125152
25155125155
25167125167
25170125170
25179125179
25187125187
25189125189
25190125190
25191125191
25195125195
25198125198
25199125199
25202125202
25204125204
25213125213
25214125214
25216125216
25224250448
25236125236
25240125240
25241125241
25248125248
25250250500
25253125253
25261125261
25266125266
25267125267
25272125272
25276125276
25288125288
25295125295
25296125296
25299125299
25300125300
25301125301
25304125304
25310125310
25316125316
25320125320
25321125321
25324125324
25325125325
25327250654
25328125328
25330125330
25331125331
25334250668
25335125335
25340125340
25342125342
25343125343
25345125345
25346250692
25347125347
25348125348
25350125350
25351125351
25354125354
25357125357
25363376089
25365125365
25368125368
25369125369
25371125371
25373250746
25376125376
25378125378
25380125380
25384125384
25385125385
25389250778
25391125391
25393125393
25411125411
25412125412
25415125415
25419125419
25420125420
25421125421
25424250848
25426125426
25429125429
25433125433
25435250870
25444250888
25445125445
25448125448
25456250912
25461125461
25462125462
25463125463
25464250928
25465125465
25466125466
254684101872
25471250942
25472250944
25473250946
25476125476
25479125479
25481125481
25482125482
25485125485
25489125489
25490125490
25491250982
25496125496
25500125500
25504125504
25508125508
25510125510
25513125513
25519125519
25527125527
25529125529
25530125530
25540125540
25542125542
25550125550
25552125552
25553125553
25557125557
25569251138
25576125576
25578125578
25582125582
25584251168
25588125588
25589251178
25591125591
25592251184
25594125594
25596125596
25597125597
25600125600
25603125603
25605125605
25607125607
25609125609
25610251220
25613125613
25614251228
25615251230
25617125617
25618251236
25619125619
25621125621
25622125622
25623251246
25624125624
25625251250
256264102504
25629125629
25633376899
25634125634
25635125635
256364102544
25637125637
25638125638
25640251280
25641125641
25643125643
25644251288
256455128225
25646125646
25647125647
25648125648
25650125650
25651125651
25652125652
25655376965
25656251312
25658251316
25659125659
25660251320
25661125661
25663125663
25664251328
25666376998
25667125667
25668125668
25669125669
25670377010
25672251344
25673125673
25675125675
25677125677
25678125678
25679125679
25685125685
25686125686
25687125687
25688251376
25690125690
25693125693
25696125696
25697251394
25699125699
25700125700
257026154212
25704251408
25707251414
25710125710
25713125713
25714251428
25716125716
25719125719
25720125720
25721125721
25724125724
25725125725
25726251452
25727125727
25728251456
25732125732
25734125734
25736251472
25739125739
25741125741
25744125744
25746377238
25750125750
25757251514
25758125758
25764125764
25768125768
25777125777
25781125781
25784125784
25787125787
25793125793
25795251590
25797125797
25798251596
25814125814
25817125817
25821125821
25822125822
25826125826
25827125827
25838125838
25842125842
25866125866
25873125873
25881125881
25883125883
25888125888
25902125902
25921125921
25927125927
25942125942
25951125951
25960125960
25961125961
25973251946
25975125975
25993125993
25997125997
26002126002
26007126007
26008126008
26012252024
26013126013
26022126022
26024252048
26025252050
26028126028
26029126029
26031126031
26037126037
26038126038
26044126044
26045126045
260464104184
26047126047
26048126048
26056252112
26057378171
26058126058
26062126062
26063252126
26067252134
26071126071
26074126074
26077126077
26083126083
26096126096
26098126098
26106126106
26107252214
26121126121
26124126124
26133126133
26139126139
26145252290
26146126146
26151126151
26158126158
26159126159
26163126163
26170126170
26171126171
26175126175
26179126179
26838126838
Total100225075607
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
24482124482
24485124485
24493124493
24495124495
24496248992
24498124498
24499124499
24501124501
24503124503
24508124508
24509124509
24512124512
24517124517
24518124518
24519124519
24521124521
24531124531
24545249090
24547124547
24551124551
24554124554
24557124557
24561124561
24562124562
24563124563
24566124566
24573124573
24602124602
24608124608
24622124622
24626373878
24628124628
24629124629
24632124632
24635124635
24638124638
24639124639
24642124642
246435123215
24645124645
24646124646
24648124648
24649124649
24650124650
24651124651
24652124652
24653124653
24654249308
24656373968
24657124657
24660249320
24662124662
24663124663
24664124664
24665373995
24666124666
24667124667
24668498672
24669249338
24670498680
24671374013
24672124672
24673124673
24675374025
24676124676
24677124677
24678249356
24680124680
24684374052
24685124685
24686124686
24687124687
24688249376
24690124690
24693249386
24694249388
24695249390
24698124698
24699124699
24701249402
24702249404
24703498812
24704124704
24705249410
24706374118
24707374121
24709374127
24711124711
24713374139
24715374145
24716124716
24717124717
24719124719
24720374160
24721249442
24722124722
24723249446
24724124724
24725374175
24726249452
24727249454
24728249456
24729249458
24730498920
24732124732
24733249466
24734374202
24736249472
24737249474
24738498952
24739249478
24740498960
24742124742
24743124743
24744249488
24745124745
24747249494
24749249498
24750374250
24753249506
24755374265
24756374268
24757249514
24758249516
24759249518
24760124760
247615123805
24762124762
24763249526
24764124764
24765249530
24766124766
24767124767
24768499072
24769124769
24770124770
24775249550
24776374328
24779249558
24780124780
24781124781
24782374346
24783124783
24784124784
24785249570
247905123950
24793374379
24794124794
24796124796
24798249596
24800124800
24803124803
24805374415
24806124806
24809124809
24814124814
24815124815
24821249642
24825124825
24826124826
24827124827
24833124833
24835124835
24837249674
24839249678
24840124840
24846124846
24847124847
24849124849
24854124854
24855124855
24856249712
24857124857
24858124858
24859124859
24860124860
24866124866
24867124867
24873124873
24874124874
24888124888
24889124889
24893124893
24905124905
24913124913
24917124917
24924374772
24925124925
24927124927
24928124928
24929124929
24933124933
24935124935
24937374811
24940124940
24941249882
24942124942
24943124943
24945124945
24946124946
24947124947
24949124949
24950124950
24954124954
24955124955
24957124957
24958124958
24960124960
24961249922
24962124962
24963249926
24964124964
24965249930
24966124966
24967374901
24970374910
24972124972
24973124973
24976124976
24977124977
24986124986
24988124988
24991124991
24992124992
24993124993
24994124994
24996124996
24997124997
25005125005
25006125006
25008125008
25009125009
25012125012
25015125015
25016125016
25020125020
25022125022
25023375069
25025125025
25027125027
25028125028
25030375090
25031250062
25032125032
25033125033
25034250068
25035125035
25036125036
25037125037
25038125038
25039125039
25041125041
25043375129
25044250088
25045125045
25049250098
25050250100
25051250102
25052250104
25053125053
25054125054
25055125055
25056125056
25057125057
25058125058
250595125295
25062125062
25063250126
25070250140
25072250144
25073250146
25074125074
25076250152
25077125077
25078250156
25081375243
25083125083
25085125085
25087125087
25088375264
25089125089
25091125091
25092125092
25093125093
25096125096
25101125101
25104250208
25105125105
25114125114
25119125119
25122125122
25123125123
25124125124
25125125125
25127250254
25128125128
25129125129
25136125136
25140125140
25143125143
25146125146
25147125147
25151125151
25153125153
25158125158
25161125161
25165125165
25166125166
25171250342
25172125172
25173125173
25175125175
25177125177
25182250364
25183125183
25184125184
25185125185
25186125186
25187125187
25188125188
25189125189
25190125190
25191125191
25192125192
25193250386
25194125194
25196125196
25197125197
25198250396
25200125200
25201125201
25202250404
25205125205
25206375618
25211125211
25212125212
25216375648
25217375651
25218125218
25219125219
25220125220
25222125222
25223125223
25225125225
25226375678
25227125227
25228250456
25232250464
25233125233
25234250468
25235375705
25236250472
25237125237
252385126190
25239125239
25240125240
25241250482
25243125243
25244250488
25245125245
25246250492
25248125248
252494100996
25250250500
25253375759
25254375762
252554101020
25258125258
25259125259
25261125261
25262250524
25265125265
25270125270
25272125272
25273250546
25276250552
25278125278
25279125279
25283125283
25288250576
25290250580
25291250582
25294250588
25295125295
25296250592
25297125297
25298250596
25301125301
25304125304
25305250610
25312125312
25314125314
25317125317
25318125318
25319125319
25326125326
25329250658
25330125330
25333125333
25334250668
25335125335
25336125336
25338125338
25344250688
25345250690
25346125346
25348250696
25350125350
25353125353
25356125356
25359125359
25363125363
25371125371
25381125381
25391250782
25392250784
25396125396
25400125400
25415250830
25417125417
25426125426
25427125427
25432125432
25439125439
25444125444
25447125447
25452125452
25455250910
25457125457
25458250916
25460125460
25470250940
25474125474
25484125484
25487125487
25488125488
25489125489
25492125492
25497125497
25500125500
25503376509
25505251010
25508125508
25511125511
25514125514
25515251030
25517251034
25518251036
25519251038
25520125520
25523125523
25525376575
25530125530
25533125533
25534251068
25535125535
25537125537
25538251076
25539251078
255404102160
25541376623
25542125542
25543125543
25544125544
25547376641
25548125548
25549376647
25550251100
25551125551
25552376656
25554376662
25555251110
25558125558
25559125559
25562125562
25564125564
25565125565
25566251132
25568125568
25570125570
25571251142
25572125572
25573125573
25574125574
25576125576
25582125582
25584125584
25586125586
25590125590
25596125596
25597125597
25605125605
25609125609
25613125613
25620125620
25624125624
25627125627
25643125643
25646125646
25652125652
25654251308
25655251310
25658125658
25666251332
25668251336
25670125670
25673125673
25675377025
25678251356
25681125681
25683125683
25687251374
256894102756
25692251384
25693125693
25694125694
25695125695
25696125696
25697125697
25698377094
25699125699
25700125700
25701125701
25702125702
25703377109
25704251408
25706125706
25710251420
25712125712
25713125713
25714125714
25715125715
25716251432
25718125718
25720125720
25722125722
25723251446
25724251448
25725251450
25726125726
25727377181
25728125728
25729251458
25730251460
257314102924
25734125734
25735377205
25736125736
25737125737
25738125738
25739251478
25741377223
25742125742
25744251488
25745251490
25746125746
25748125748
25749125749
25750251500
25753251506
25754125754
25755125755
25756125756
25757125757
25760125760
25762251524
25767125767
25768125768
25770125770
25772125772
25777251554
25782125782
25783125783
25784251568
25785125785
25786125786
25787125787
25789125789
25790251580
25791125791
25792251584
25793377379
25794251588
25797251594
25798251596
25799125799
25801125801
25802125802
25803125803
25807125807
25808125808
25809251618
25814125814
25815251630
25818125818
25821125821
25826125826
25828125828
25829125829
25835251670
25849125849
25851125851
25854125854
25856125856
25869125869
25872125872
25875125875
25877251754
25884251768
25885125885
25886251772
25888251776
25889125889
25899125899
25905125905
25908125908
25909125909
25911125911
25916125916
25917125917
25932125932
25950125950
25969125969
25978125978
25981125981
25996125996
26013126013
26023126023
26033126033
26035126035
26037126037
26043126043
26061126061
26074126074
26085126085
26089126089
26090126090
26096126096
26114126114
26120126120
26125126125
26136126136
26146126146
26149126149
26152126152
26154126154
26155126155
26156252312
26157126157
26159126159
26161126161
26165252330
26166126166
26167126167
26169126169
26170126170
26171378513
26180252360
26181252362
26183126183
26189252378
26190126190
26191126191
26192126192
26194126194
26196252392
26197126197
26202126202
26205126205
26208126208
26211126211
26216126216
26219126219
26220126220
26227126227
26248126248
26249126249
26255126255
26256126256
26257126257
26263126263
26270126270
26272126272
26283126283
26288126288
26293126293
26294126294
26296126296
26301252602
26307126307
26317126317
26318126318
26962126962
Total100225253076
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333436266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882ea1e74a1e9f6
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6561316537346131
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_3_9.json b/autobahn/client/tungstenite_case_12_3_9.json new file mode 100644 index 0000000..5494370 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_3_9.json @@ -0,0 +1,1557 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 346, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 12369, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=346&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ItfhgqAv80Qpc3+3zsNe3A==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: MA0ZPC/dco5tmCj7K1qHnhNrC9w=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.3.9", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "24229": 1, + "24231": 1, + "24240": 1, + "24241": 1, + "24242": 1, + "24243": 2, + "24244": 1, + "24248": 2, + "24256": 1, + "24258": 2, + "24262": 1, + "24268": 1, + "24269": 1, + "24270": 1, + "24282": 1, + "24296": 3, + "24299": 1, + "24303": 1, + "24306": 1, + "24313": 1, + "24314": 1, + "24316": 1, + "24318": 1, + "24322": 1, + "24347": 1, + "24354": 1, + "24371": 1, + "24374": 1, + "24381": 1, + "24384": 1, + "24389": 2, + "24390": 1, + "24392": 1, + "24393": 2, + "24394": 3, + "24395": 2, + "24396": 1, + "24397": 2, + "24398": 2, + "24399": 1, + "24400": 1, + "24401": 2, + "24402": 1, + "24405": 1, + "24406": 1, + "24408": 1, + "24409": 1, + "24410": 2, + "24412": 1, + "24413": 1, + "24415": 1, + "24417": 1, + "24418": 2, + "24419": 2, + "24420": 2, + "24421": 1, + "24422": 1, + "24423": 3, + "24424": 2, + "24425": 1, + "24426": 2, + "24427": 2, + "24428": 2, + "24429": 1, + "24432": 2, + "24433": 1, + "24434": 4, + "24435": 2, + "24436": 1, + "24438": 1, + "24439": 3, + "24443": 1, + "24445": 1, + "24447": 1, + "24449": 1, + "24450": 1, + "24451": 2, + "24454": 2, + "24455": 1, + "24458": 1, + "24460": 1, + "24461": 1, + "24462": 2, + "24463": 1, + "24464": 1, + "24468": 2, + "24470": 2, + "24473": 2, + "24476": 1, + "24477": 3, + "24480": 1, + "24483": 1, + "24484": 2, + "24485": 2, + "24486": 2, + "24487": 2, + "24491": 2, + "24492": 1, + "24493": 2, + "24494": 1, + "24496": 2, + "24497": 2, + "24499": 1, + "24500": 2, + "24501": 1, + "24502": 1, + "24503": 3, + "24504": 4, + "24505": 1, + "24506": 3, + "24507": 3, + "24508": 6, + "24510": 1, + "24511": 1, + "24512": 5, + "24513": 1, + "24514": 4, + "24515": 1, + "24516": 5, + "24517": 2, + "24518": 1, + "24519": 3, + "24521": 2, + "24522": 2, + "24525": 1, + "24526": 1, + "24527": 2, + "24528": 1, + "24529": 1, + "24532": 2, + "24533": 5, + "24534": 3, + "24535": 1, + "24536": 2, + "24539": 2, + "24542": 6, + "24543": 3, + "24544": 1, + "24545": 1, + "24546": 2, + "24547": 2, + "24548": 2, + "24549": 1, + "24552": 1, + "24553": 2, + "24554": 1, + "24555": 3, + "24556": 2, + "24557": 1, + "24558": 2, + "24562": 2, + "24563": 1, + "24564": 1, + "24565": 1, + "24566": 2, + "24568": 1, + "24570": 1, + "24571": 1, + "24572": 1, + "24574": 1, + "24575": 3, + "24576": 1, + "24579": 1, + "24583": 1, + "24585": 1, + "24586": 1, + "24589": 2, + "24591": 1, + "24596": 1, + "24598": 1, + "24604": 1, + "24609": 1, + "24612": 1, + "24619": 1, + "24624": 1, + "24627": 1, + "24629": 1, + "24636": 1, + "24641": 1, + "24642": 1, + "24643": 2, + "24644": 1, + "24645": 1, + "24646": 1, + "24647": 2, + "24651": 1, + "24656": 1, + "24658": 1, + "24670": 2, + "24672": 1, + "24676": 2, + "24680": 1, + "24685": 1, + "24688": 1, + "24690": 1, + "24693": 2, + "24694": 1, + "24695": 3, + "24701": 1, + "24703": 1, + "24705": 2, + "24706": 3, + "24710": 2, + "24711": 3, + "24714": 1, + "24715": 1, + "24716": 1, + "24717": 2, + "24719": 1, + "24720": 2, + "24723": 1, + "24724": 2, + "24725": 1, + "24727": 1, + "24729": 2, + "24735": 1, + "24739": 1, + "24743": 1, + "24745": 4, + "24746": 1, + "24747": 1, + "24748": 1, + "24749": 1, + "24751": 1, + "24754": 1, + "24755": 1, + "24759": 1, + "24762": 1, + "24766": 1, + "24769": 1, + "24772": 3, + "24774": 2, + "24775": 2, + "24779": 1, + "24780": 2, + "24781": 2, + "24782": 1, + "24785": 1, + "24790": 2, + "24791": 1, + "24792": 2, + "24794": 1, + "24796": 1, + "24799": 1, + "24800": 1, + "24801": 1, + "24802": 1, + "24803": 1, + "24804": 1, + "24805": 1, + "24806": 1, + "24808": 1, + "24809": 1, + "24812": 1, + "24813": 1, + "24814": 2, + "24821": 1, + "24825": 1, + "24826": 2, + "24829": 1, + "24830": 1, + "24831": 1, + "24832": 2, + "24833": 1, + "24834": 1, + "24835": 1, + "24837": 1, + "24838": 2, + "24839": 1, + "24841": 2, + "24843": 1, + "24846": 1, + "24852": 1, + "24859": 1, + "24860": 1, + "24861": 1, + "24866": 1, + "24870": 2, + "24871": 2, + "24876": 1, + "24877": 1, + "24880": 1, + "24881": 1, + "24885": 2, + "24887": 1, + "24893": 1, + "24896": 1, + "24899": 1, + "24915": 2, + "24916": 1, + "24917": 1, + "24918": 1, + "24919": 1, + "24930": 1, + "24936": 1, + "24938": 1, + "24939": 1, + "24945": 1, + "24947": 1, + "24950": 2, + "24955": 1, + "24959": 1, + "24963": 1, + "24967": 1, + "24970": 1, + "24972": 3, + "24973": 1, + "24976": 1, + "24977": 2, + "24978": 2, + "24984": 1, + "24986": 2, + "24988": 2, + "24990": 1, + "24995": 1, + "24996": 2, + "24997": 1, + "24998": 1, + "25000": 1, + "25001": 1, + "25002": 1, + "25003": 1, + "25004": 1, + "25005": 3, + "25007": 1, + "25009": 2, + "25011": 1, + "25013": 1, + "25014": 1, + "25016": 1, + "25018": 1, + "25023": 1, + "25024": 1, + "25027": 1, + "25028": 1, + "25029": 2, + "25031": 1, + "25033": 2, + "25035": 2, + "25036": 1, + "25037": 2, + "25039": 2, + "25040": 2, + "25041": 2, + "25042": 2, + "25044": 4, + "25047": 1, + "25048": 1, + "25050": 1, + "25051": 2, + "25052": 1, + "25053": 2, + "25054": 1, + "25055": 2, + "25056": 1, + "25059": 1, + "25060": 1, + "25064": 2, + "25065": 1, + "25066": 3, + "25068": 1, + "25069": 1, + "25071": 2, + "25072": 2, + "25073": 1, + "25076": 2, + "25079": 1, + "25080": 1, + "25081": 2, + "25082": 2, + "25083": 1, + "25084": 1, + "25085": 1, + "25086": 1, + "25087": 2, + "25088": 1, + "25089": 2, + "25090": 1, + "25091": 1, + "25093": 1, + "25095": 1, + "25096": 2, + "25101": 1, + "25103": 1, + "25105": 1, + "25108": 1, + "25112": 1, + "25113": 1, + "25114": 2, + "25116": 1, + "25118": 1, + "25119": 1, + "25121": 2, + "25122": 1, + "25125": 2, + "25127": 1, + "25128": 1, + "25129": 1, + "25131": 1, + "25132": 2, + "25133": 1, + "25134": 4, + "25135": 1, + "25136": 2, + "25137": 1, + "25139": 1, + "25140": 2, + "25141": 3, + "25142": 1, + "25143": 1, + "25144": 1, + "25146": 2, + "25147": 2, + "25148": 1, + "25152": 1, + "25155": 1, + "25167": 1, + "25170": 1, + "25179": 1, + "25187": 1, + "25189": 1, + "25190": 1, + "25191": 1, + "25195": 1, + "25198": 1, + "25199": 1, + "25202": 1, + "25204": 1, + "25213": 1, + "25214": 1, + "25216": 1, + "25224": 2, + "25236": 1, + "25240": 1, + "25241": 1, + "25248": 1, + "25250": 2, + "25253": 1, + "25261": 1, + "25266": 1, + "25267": 1, + "25272": 1, + "25276": 1, + "25288": 1, + "25295": 1, + "25296": 1, + "25299": 1, + "25300": 1, + "25301": 1, + "25304": 1, + "25310": 1, + "25316": 1, + "25320": 1, + "25321": 1, + "25324": 1, + "25325": 1, + "25327": 2, + "25328": 1, + "25330": 1, + "25331": 1, + "25334": 2, + "25335": 1, + "25340": 1, + "25342": 1, + "25343": 1, + "25345": 1, + "25346": 2, + "25347": 1, + "25348": 1, + "25350": 1, + "25351": 1, + "25354": 1, + "25357": 1, + "25363": 3, + "25365": 1, + "25368": 1, + "25369": 1, + "25371": 1, + "25373": 2, + "25376": 1, + "25378": 1, + "25380": 1, + "25384": 1, + "25385": 1, + "25389": 2, + "25391": 1, + "25393": 1, + "25411": 1, + "25412": 1, + "25415": 1, + "25419": 1, + "25420": 1, + "25421": 1, + "25424": 2, + "25426": 1, + "25429": 1, + "25433": 1, + "25435": 2, + "25444": 2, + "25445": 1, + "25448": 1, + "25456": 2, + "25461": 1, + "25462": 1, + "25463": 1, + "25464": 2, + "25465": 1, + "25466": 1, + "25468": 4, + "25471": 2, + "25472": 2, + "25473": 2, + "25476": 1, + "25479": 1, + "25481": 1, + "25482": 1, + "25485": 1, + "25489": 1, + "25490": 1, + "25491": 2, + "25496": 1, + "25500": 1, + "25504": 1, + "25508": 1, + "25510": 1, + "25513": 1, + "25519": 1, + "25527": 1, + "25529": 1, + "25530": 1, + "25540": 1, + "25542": 1, + "25550": 1, + "25552": 1, + "25553": 1, + "25557": 1, + "25569": 2, + "25576": 1, + "25578": 1, + "25582": 1, + "25584": 2, + "25588": 1, + "25589": 2, + "25591": 1, + "25592": 2, + "25594": 1, + "25596": 1, + "25597": 1, + "25600": 1, + "25603": 1, + "25605": 1, + "25607": 1, + "25609": 1, + "25610": 2, + "25613": 1, + "25614": 2, + "25615": 2, + "25617": 1, + "25618": 2, + "25619": 1, + "25621": 1, + "25622": 1, + "25623": 2, + "25624": 1, + "25625": 2, + "25626": 4, + "25629": 1, + "25633": 3, + "25634": 1, + "25635": 1, + "25636": 4, + "25637": 1, + "25638": 1, + "25640": 2, + "25641": 1, + "25643": 1, + "25644": 2, + "25645": 5, + "25646": 1, + "25647": 1, + "25648": 1, + "25650": 1, + "25651": 1, + "25652": 1, + "25655": 3, + "25656": 2, + "25658": 2, + "25659": 1, + "25660": 2, + "25661": 1, + "25663": 1, + "25664": 2, + "25666": 3, + "25667": 1, + "25668": 1, + "25669": 1, + "25670": 3, + "25672": 2, + "25673": 1, + "25675": 1, + "25677": 1, + "25678": 1, + "25679": 1, + "25685": 1, + "25686": 1, + "25687": 1, + "25688": 2, + "25690": 1, + "25693": 1, + "25696": 1, + "25697": 2, + "25699": 1, + "25700": 1, + "25702": 6, + "25704": 2, + "25707": 2, + "25710": 1, + "25713": 1, + "25714": 2, + "25716": 1, + "25719": 1, + "25720": 1, + "25721": 1, + "25724": 1, + "25725": 1, + "25726": 2, + "25727": 1, + "25728": 2, + "25732": 1, + "25734": 1, + "25736": 2, + "25739": 1, + "25741": 1, + "25744": 1, + "25746": 3, + "25750": 1, + "25757": 2, + "25758": 1, + "25764": 1, + "25768": 1, + "25777": 1, + "25781": 1, + "25784": 1, + "25787": 1, + "25793": 1, + "25795": 2, + "25797": 1, + "25798": 2, + "25814": 1, + "25817": 1, + "25821": 1, + "25822": 1, + "25826": 1, + "25827": 1, + "25838": 1, + "25842": 1, + "25866": 1, + "25873": 1, + "25881": 1, + "25883": 1, + "25888": 1, + "25902": 1, + "25921": 1, + "25927": 1, + "25942": 1, + "25951": 1, + "25960": 1, + "25961": 1, + "25973": 2, + "25975": 1, + "25993": 1, + "25997": 1, + "26002": 1, + "26007": 1, + "26008": 1, + "26012": 2, + "26013": 1, + "26022": 1, + "26024": 2, + "26025": 2, + "26028": 1, + "26029": 1, + "26031": 1, + "26037": 1, + "26038": 1, + "26044": 1, + "26045": 1, + "26046": 4, + "26047": 1, + "26048": 1, + "26056": 2, + "26057": 3, + "26058": 1, + "26062": 1, + "26063": 2, + "26067": 2, + "26071": 1, + "26074": 1, + "26077": 1, + "26083": 1, + "26096": 1, + "26098": 1, + "26106": 1, + "26107": 2, + "26121": 1, + "26124": 1, + "26133": 1, + "26139": 1, + "26145": 2, + "26146": 1, + "26151": 1, + "26158": 1, + "26159": 1, + "26163": 1, + "26170": 1, + "26171": 1, + "26175": 1, + "26179": 1, + "26838": 1 + }, + "started": "2020-09-07T18:46:49.149Z", + "trafficStats": { + "incomingCompressionRatio": 0.3824972839355469, + "incomingOctetsAppLevel": 65536000, + "incomingOctetsWebSocketLevel": 25067342, + "incomingOctetsWireLevel": 25075342, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0003191403380541902, + "outgoingCompressionRatio": 0.38526641845703125, + "outgoingOctetsAppLevel": 65536000, + "outgoingOctetsWebSocketLevel": 25248820, + "outgoingOctetsWireLevel": 25252820, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.00015842324512591085, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "24482": 1, + "24485": 1, + "24493": 1, + "24495": 1, + "24496": 2, + "24498": 1, + "24499": 1, + "24501": 1, + "24503": 1, + "24508": 1, + "24509": 1, + "24512": 1, + "24517": 1, + "24518": 1, + "24519": 1, + "24521": 1, + "24531": 1, + "24545": 2, + "24547": 1, + "24551": 1, + "24554": 1, + "24557": 1, + "24561": 1, + "24562": 1, + "24563": 1, + "24566": 1, + "24573": 1, + "24602": 1, + "24608": 1, + "24622": 1, + "24626": 3, + "24628": 1, + "24629": 1, + "24632": 1, + "24635": 1, + "24638": 1, + "24639": 1, + "24642": 1, + "24643": 5, + "24645": 1, + "24646": 1, + "24648": 1, + "24649": 1, + "24650": 1, + "24651": 1, + "24652": 1, + "24653": 1, + "24654": 2, + "24656": 3, + "24657": 1, + "24660": 2, + "24662": 1, + "24663": 1, + "24664": 1, + "24665": 3, + "24666": 1, + "24667": 1, + "24668": 4, + "24669": 2, + "24670": 4, + "24671": 3, + "24672": 1, + "24673": 1, + "24675": 3, + "24676": 1, + "24677": 1, + "24678": 2, + "24680": 1, + "24684": 3, + "24685": 1, + "24686": 1, + "24687": 1, + "24688": 2, + "24690": 1, + "24693": 2, + "24694": 2, + "24695": 2, + "24698": 1, + "24699": 1, + "24701": 2, + "24702": 2, + "24703": 4, + "24704": 1, + "24705": 2, + "24706": 3, + "24707": 3, + "24709": 3, + "24711": 1, + "24713": 3, + "24715": 3, + "24716": 1, + "24717": 1, + "24719": 1, + "24720": 3, + "24721": 2, + "24722": 1, + "24723": 2, + "24724": 1, + "24725": 3, + "24726": 2, + "24727": 2, + "24728": 2, + "24729": 2, + "24730": 4, + "24732": 1, + "24733": 2, + "24734": 3, + "24736": 2, + "24737": 2, + "24738": 4, + "24739": 2, + "24740": 4, + "24742": 1, + "24743": 1, + "24744": 2, + "24745": 1, + "24747": 2, + "24749": 2, + "24750": 3, + "24753": 2, + "24755": 3, + "24756": 3, + "24757": 2, + "24758": 2, + "24759": 2, + "24760": 1, + "24761": 5, + "24762": 1, + "24763": 2, + "24764": 1, + "24765": 2, + "24766": 1, + "24767": 1, + "24768": 4, + "24769": 1, + "24770": 1, + "24775": 2, + "24776": 3, + "24779": 2, + "24780": 1, + "24781": 1, + "24782": 3, + "24783": 1, + "24784": 1, + "24785": 2, + "24790": 5, + "24793": 3, + "24794": 1, + "24796": 1, + "24798": 2, + "24800": 1, + "24803": 1, + "24805": 3, + "24806": 1, + "24809": 1, + "24814": 1, + "24815": 1, + "24821": 2, + "24825": 1, + "24826": 1, + "24827": 1, + "24833": 1, + "24835": 1, + "24837": 2, + "24839": 2, + "24840": 1, + "24846": 1, + "24847": 1, + "24849": 1, + "24854": 1, + "24855": 1, + "24856": 2, + "24857": 1, + "24858": 1, + "24859": 1, + "24860": 1, + "24866": 1, + "24867": 1, + "24873": 1, + "24874": 1, + "24888": 1, + "24889": 1, + "24893": 1, + "24905": 1, + "24913": 1, + "24917": 1, + "24924": 3, + "24925": 1, + "24927": 1, + "24928": 1, + "24929": 1, + "24933": 1, + "24935": 1, + "24937": 3, + "24940": 1, + "24941": 2, + "24942": 1, + "24943": 1, + "24945": 1, + "24946": 1, + "24947": 1, + "24949": 1, + "24950": 1, + "24954": 1, + "24955": 1, + "24957": 1, + "24958": 1, + "24960": 1, + "24961": 2, + "24962": 1, + "24963": 2, + "24964": 1, + "24965": 2, + "24966": 1, + "24967": 3, + "24970": 3, + "24972": 1, + "24973": 1, + "24976": 1, + "24977": 1, + "24986": 1, + "24988": 1, + "24991": 1, + "24992": 1, + "24993": 1, + "24994": 1, + "24996": 1, + "24997": 1, + "25005": 1, + "25006": 1, + "25008": 1, + "25009": 1, + "25012": 1, + "25015": 1, + "25016": 1, + "25020": 1, + "25022": 1, + "25023": 3, + "25025": 1, + "25027": 1, + "25028": 1, + "25030": 3, + "25031": 2, + "25032": 1, + "25033": 1, + "25034": 2, + "25035": 1, + "25036": 1, + "25037": 1, + "25038": 1, + "25039": 1, + "25041": 1, + "25043": 3, + "25044": 2, + "25045": 1, + "25049": 2, + "25050": 2, + "25051": 2, + "25052": 2, + "25053": 1, + "25054": 1, + "25055": 1, + "25056": 1, + "25057": 1, + "25058": 1, + "25059": 5, + "25062": 1, + "25063": 2, + "25070": 2, + "25072": 2, + "25073": 2, + "25074": 1, + "25076": 2, + "25077": 1, + "25078": 2, + "25081": 3, + "25083": 1, + "25085": 1, + "25087": 1, + "25088": 3, + "25089": 1, + "25091": 1, + "25092": 1, + "25093": 1, + "25096": 1, + "25101": 1, + "25104": 2, + "25105": 1, + "25114": 1, + "25119": 1, + "25122": 1, + "25123": 1, + "25124": 1, + "25125": 1, + "25127": 2, + "25128": 1, + "25129": 1, + "25136": 1, + "25140": 1, + "25143": 1, + "25146": 1, + "25147": 1, + "25151": 1, + "25153": 1, + "25158": 1, + "25161": 1, + "25165": 1, + "25166": 1, + "25171": 2, + "25172": 1, + "25173": 1, + "25175": 1, + "25177": 1, + "25182": 2, + "25183": 1, + "25184": 1, + "25185": 1, + "25186": 1, + "25187": 1, + "25188": 1, + "25189": 1, + "25190": 1, + "25191": 1, + "25192": 1, + "25193": 2, + "25194": 1, + "25196": 1, + "25197": 1, + "25198": 2, + "25200": 1, + "25201": 1, + "25202": 2, + "25205": 1, + "25206": 3, + "25211": 1, + "25212": 1, + "25216": 3, + "25217": 3, + "25218": 1, + "25219": 1, + "25220": 1, + "25222": 1, + "25223": 1, + "25225": 1, + "25226": 3, + "25227": 1, + "25228": 2, + "25232": 2, + "25233": 1, + "25234": 2, + "25235": 3, + "25236": 2, + "25237": 1, + "25238": 5, + "25239": 1, + "25240": 1, + "25241": 2, + "25243": 1, + "25244": 2, + "25245": 1, + "25246": 2, + "25248": 1, + "25249": 4, + "25250": 2, + "25253": 3, + "25254": 3, + "25255": 4, + "25258": 1, + "25259": 1, + "25261": 1, + "25262": 2, + "25265": 1, + "25270": 1, + "25272": 1, + "25273": 2, + "25276": 2, + "25278": 1, + "25279": 1, + "25283": 1, + "25288": 2, + "25290": 2, + "25291": 2, + "25294": 2, + "25295": 1, + "25296": 2, + "25297": 1, + "25298": 2, + "25301": 1, + "25304": 1, + "25305": 2, + "25312": 1, + "25314": 1, + "25317": 1, + "25318": 1, + "25319": 1, + "25326": 1, + "25329": 2, + "25330": 1, + "25333": 1, + "25334": 2, + "25335": 1, + "25336": 1, + "25338": 1, + "25344": 2, + "25345": 2, + "25346": 1, + "25348": 2, + "25350": 1, + "25353": 1, + "25356": 1, + "25359": 1, + "25363": 1, + "25371": 1, + "25381": 1, + "25391": 2, + "25392": 2, + "25396": 1, + "25400": 1, + "25415": 2, + "25417": 1, + "25426": 1, + "25427": 1, + "25432": 1, + "25439": 1, + "25444": 1, + "25447": 1, + "25452": 1, + "25455": 2, + "25457": 1, + "25458": 2, + "25460": 1, + "25470": 2, + "25474": 1, + "25484": 1, + "25487": 1, + "25488": 1, + "25489": 1, + "25492": 1, + "25497": 1, + "25500": 1, + "25503": 3, + "25505": 2, + "25508": 1, + "25511": 1, + "25514": 1, + "25515": 2, + "25517": 2, + "25518": 2, + "25519": 2, + "25520": 1, + "25523": 1, + "25525": 3, + "25530": 1, + "25533": 1, + "25534": 2, + "25535": 1, + "25537": 1, + "25538": 2, + "25539": 2, + "25540": 4, + "25541": 3, + "25542": 1, + "25543": 1, + "25544": 1, + "25547": 3, + "25548": 1, + "25549": 3, + "25550": 2, + "25551": 1, + "25552": 3, + "25554": 3, + "25555": 2, + "25558": 1, + "25559": 1, + "25562": 1, + "25564": 1, + "25565": 1, + "25566": 2, + "25568": 1, + "25570": 1, + "25571": 2, + "25572": 1, + "25573": 1, + "25574": 1, + "25576": 1, + "25582": 1, + "25584": 1, + "25586": 1, + "25590": 1, + "25596": 1, + "25597": 1, + "25605": 1, + "25609": 1, + "25613": 1, + "25620": 1, + "25624": 1, + "25627": 1, + "25643": 1, + "25646": 1, + "25652": 1, + "25654": 2, + "25655": 2, + "25658": 1, + "25666": 2, + "25668": 2, + "25670": 1, + "25673": 1, + "25675": 3, + "25678": 2, + "25681": 1, + "25683": 1, + "25687": 2, + "25689": 4, + "25692": 2, + "25693": 1, + "25694": 1, + "25695": 1, + "25696": 1, + "25697": 1, + "25698": 3, + "25699": 1, + "25700": 1, + "25701": 1, + "25702": 1, + "25703": 3, + "25704": 2, + "25706": 1, + "25710": 2, + "25712": 1, + "25713": 1, + "25714": 1, + "25715": 1, + "25716": 2, + "25718": 1, + "25720": 1, + "25722": 1, + "25723": 2, + "25724": 2, + "25725": 2, + "25726": 1, + "25727": 3, + "25728": 1, + "25729": 2, + "25730": 2, + "25731": 4, + "25734": 1, + "25735": 3, + "25736": 1, + "25737": 1, + "25738": 1, + "25739": 2, + "25741": 3, + "25742": 1, + "25744": 2, + "25745": 2, + "25746": 1, + "25748": 1, + "25749": 1, + "25750": 2, + "25753": 2, + "25754": 1, + "25755": 1, + "25756": 1, + "25757": 1, + "25760": 1, + "25762": 2, + "25767": 1, + "25768": 1, + "25770": 1, + "25772": 1, + "25777": 2, + "25782": 1, + "25783": 1, + "25784": 2, + "25785": 1, + "25786": 1, + "25787": 1, + "25789": 1, + "25790": 2, + "25791": 1, + "25792": 2, + "25793": 3, + "25794": 2, + "25797": 2, + "25798": 2, + "25799": 1, + "25801": 1, + "25802": 1, + "25803": 1, + "25807": 1, + "25808": 1, + "25809": 2, + "25814": 1, + "25815": 2, + "25818": 1, + "25821": 1, + "25826": 1, + "25828": 1, + "25829": 1, + "25835": 2, + "25849": 1, + "25851": 1, + "25854": 1, + "25856": 1, + "25869": 1, + "25872": 1, + "25875": 1, + "25877": 2, + "25884": 2, + "25885": 1, + "25886": 2, + "25888": 2, + "25889": 1, + "25899": 1, + "25905": 1, + "25908": 1, + "25909": 1, + "25911": 1, + "25916": 1, + "25917": 1, + "25932": 1, + "25950": 1, + "25969": 1, + "25978": 1, + "25981": 1, + "25996": 1, + "26013": 1, + "26023": 1, + "26033": 1, + "26035": 1, + "26037": 1, + "26043": 1, + "26061": 1, + "26074": 1, + "26085": 1, + "26089": 1, + "26090": 1, + "26096": 1, + "26114": 1, + "26120": 1, + "26125": 1, + "26136": 1, + "26146": 1, + "26149": 1, + "26152": 1, + "26154": 1, + "26155": 1, + "26156": 2, + "26157": 1, + "26159": 1, + "26161": 1, + "26165": 2, + "26166": 1, + "26167": 1, + "26169": 1, + "26170": 1, + "26171": 3, + "26180": 2, + "26181": 2, + "26183": 1, + "26189": 2, + "26190": 1, + "26191": 1, + "26192": 1, + "26194": 1, + "26196": 2, + "26197": 1, + "26202": 1, + "26205": 1, + "26208": 1, + "26211": 1, + "26216": 1, + "26219": 1, + "26220": 1, + "26227": 1, + "26248": 1, + "26249": 1, + "26255": 1, + "26256": 1, + "26257": 1, + "26263": 1, + "26270": 1, + "26272": 1, + "26283": 1, + "26288": 1, + "26293": 1, + "26294": 1, + "26296": 1, + "26301": 2, + "26307": 1, + "26317": 1, + "26318": 1, + "26962": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333436266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882ea1e74a1e9f6" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "ea1e74a1" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_4_1.html b/autobahn/client/tungstenite_case_12_4_1.html new file mode 100644 index 0000000..fffd5df --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_1.html @@ -0,0 +1,328 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.4.1 : Pass - 755 ms @ 2020-09-07T18:49:44.796Z

+

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=356&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: XGaYvF4egPNtP55WIWmwkQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: LEfAGcP7/QActK8MWuQMVQcwHBA=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
104524520
111361496
1240480
13861118
1448672
1551765
1637592
1732544
1823414
1919361
2017340
2121441
2217374
238184
2413312
2571257
Total100212878
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
64522712
7136952
840320
986774
1048480
1151561
1237444
1332416
1423322
1520300
1616256
1721357
1817306
198152
2013260
2521252
Total10028868
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333536266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88827fd1d4497c39
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3766643164343439
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_4_1.json b/autobahn/client/tungstenite_case_12_4_1.json new file mode 100644 index 0000000..0ffbcee --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_1.json @@ -0,0 +1,175 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 356, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 755, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=356&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: XGaYvF4egPNtP55WIWmwkQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: LEfAGcP7/QActK8MWuQMVQcwHBA=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.4.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 452, + "11": 136, + "12": 40, + "13": 86, + "14": 48, + "15": 51, + "16": 37, + "17": 32, + "18": 23, + "19": 19, + "20": 17, + "21": 21, + "22": 17, + "23": 8, + "24": 13, + "257": 1 + }, + "started": "2020-09-07T18:49:44.796Z", + "trafficStats": { + "incomingCompressionRatio": 0.4133125, + "incomingOctetsAppLevel": 16000, + "incomingOctetsWebSocketLevel": 6613, + "incomingOctetsWireLevel": 12613, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.9073037955542114, + "outgoingCompressionRatio": 0.41325, + "outgoingOctetsAppLevel": 16000, + "outgoingOctetsWebSocketLevel": 6612, + "outgoingOctetsWireLevel": 8612, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.3024803387779794, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 452, + "7": 136, + "8": 40, + "9": 86, + "10": 48, + "11": 51, + "12": 37, + "13": 32, + "14": 23, + "15": 20, + "16": 16, + "17": 21, + "18": 17, + "19": 8, + "20": 13, + "252": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333536266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88827fd1d4497c39" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "7fd1d449" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_4_10.html b/autobahn/client/tungstenite_case_12_4_10.html new file mode 100644 index 0000000..96a6c8b --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_10.html @@ -0,0 +1,1488 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.4.10 : Pass - 5602 ms @ 2020-09-07T18:49:57.034Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=365&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 5xe8VDJglrjK1r5gTXKNsw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: B7nXov6BIWVKpZJHP2pk54tJwbQ=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
5292210584
5293210586
529815298
5301210602
530315303
530615306
531415314
531615316
537915379
538515385
538715387
538815388
5390210780
5421210842
5424210848
543315433
543615436
5465210930
5492210984
5510211020
551215512
5515211030
5519211038
552015520
552115521
5526211052
552715527
5535211070
5537211074
5538211076
556315563
556415564
5573211146
560815608
561115611
5619211238
563415634
563515635
563615636
563715637
563815638
563915639
5643211286
566615666
566915669
572215722
572315723
573615736
576915769
577315773
578515785
5800211600
5810211620
582015820
582415824
584115841
585215852
585415854
586115861
588315883
589015890
592515925
592615926
5927211854
596815968
597015970
600816008
601016010
601816018
608916089
609016090
609816098
6100212200
610116101
6102212204
610916109
6114212228
6119212238
612716127
612816128
6157318471
616016160
6163318489
6165212330
616616166
6167212334
6168212336
616916169
617116171
617216172
617516175
6186212372
619216192
619416194
623316233
630216302
630816308
631116311
631516315
631816318
632116321
632416324
632816328
6329212658
633116331
633316333
633516335
634116341
6343212686
6344212688
634616346
6348212696
635916359
636016360
636216362
636916369
637116371
637316373
638116381
638316383
638516385
638816388
6390212780
639716397
6399212798
6401425604
640316403
641516415
6416319248
641716417
6418532090
641916419
6420319260
642516425
642616426
642816428
643216432
6433212866
6435319305
644716447
645216452
6453212906
6456212912
645716457
6465212930
6467212934
6468319404
646916469
6470212940
6471212942
647316473
6474319422
647516475
6481212962
6483212966
6484212968
6485425940
648616486
648716487
6488319464
649016490
6492212984
649416494
649516495
649716497
6498319494
6501319503
6502213004
6503213006
650416504
650516505
651016510
651116511
651216512
6515319545
6517213034
651916519
652216522
6524213048
6526213052
652716527
652916529
653216532
6540213080
654216542
6544213088
6546213092
6550213100
655116551
655216552
6553319659
655416554
6556319668
6557213114
6559319677
6560426240
6561213122
656316563
656516565
656716567
6568319704
656916569
657116571
657216572
6575213150
657616576
658416584
658916589
659316593
659516595
6596213192
659916599
6600426400
660116601
660216602
660416604
6605319815
6606213212
660816608
661016610
661316613
661516615
661616616
661816618
6619213238
6620319860
6621213242
6624213248
6626213252
662916629
663216632
663316633
663616636
663916639
664016640
664116641
6646213292
6648213296
665016650
665116651
6652213304
665316653
6654213308
665516655
665716657
6659319977
6661319983
6662213324
6665213330
6666319998
6668213336
6669213338
667116671
6672213344
667316673
667416674
6675426700
6676426704
6677213354
668216682
668916689
6690426760
6692320076
6693426772
6695213390
6696320088
669716697
669916699
6700320100
6703213406
670716707
671016710
6713213426
671516715
671616716
671916719
672016720
672216722
672316723
6724320172
6729213458
6731213462
673416734
6735213470
6736213472
6737213474
6738213476
674016740
6741320223
674216742
674516745
674616746
674816748
6750213500
675116751
675316753
6755320265
6756213512
6758213516
6759213518
6760427040
6761320283
676416764
6765213530
6766320298
6767427068
6768533840
676916769
6770213540
6771213542
6772213544
677416774
6776213552
677816778
677916779
6780213560
6783427132
678416784
678616786
6791213582
6792213584
6793427172
679416794
679716797
6798320394
6800213600
6801213602
680216802
680716807
6808213616
6809320427
6810427240
6811427244
681216812
6813213626
6814427256
6815213630
681616816
6817213634
6819320457
6820213640
6822747754
682316823
6824320472
6825213650
6826534130
6832213664
6833213666
6838213676
683916839
684416844
6846213692
684916849
685016850
685216852
685316853
6859213718
686116861
6862320586
686316863
686416864
6866213732
6867534335
686916869
6870213740
687316873
687516875
687816878
688016880
6881213762
688316883
688416884
688516885
6886320658
688916889
6890213780
6893213786
689616896
6897213794
689816898
6901320703
690316903
690416904
6905213810
6907320721
690816908
691016910
691316913
691616916
691716917
692016920
692116921
6925213850
6930320790
6934213868
693516935
6936427744
6937213874
6938213876
693916939
6940320820
694116941
694316943
6947427788
694816948
6949534745
695016950
6952213904
6953213906
695516955
6957213914
6958213916
6960213920
6961320883
696316963
696416964
696516965
696616966
697416974
697516975
6976213952
697716977
698016980
698316983
698516985
6986213972
6987213974
6988213976
6989320967
6990213980
6991213982
6993213986
6995320985
7000321000
700217002
700717007
7008214016
700917009
7010214020
701117011
701417014
701517015
701617016
7017214034
702017020
702217022
7030214060
703117031
703217032
703417034
703517035
7037214074
7038428152
7039214078
7040321120
7042214084
704617046
704917049
7051214102
705917059
7061214122
7062428248
7063214126
7064214128
7065214130
706617066
7067214134
7068428272
7069214138
707017070
707217072
7078321234
7084321252
7086214172
708717087
7088214176
7089428356
709017090
7091321273
7092214184
7093214186
709417094
710017100
710217102
7103321309
7104428416
710517105
7106214212
7107321321
7110214220
711217112
7116321348
711817118
7119214238
712217122
712317123
7125214250
7134214268
713517135
713717137
7138321414
713917139
714017140
714417144
714617146
715917159
716217162
716317163
716617166
7168214336
7172214344
717517175
717617176
717817178
718317183
718517185
718917189
719017190
719117191
720217202
720317203
720517205
720817208
720917209
721217212
721317213
721517215
721717217
721917219
7225214450
732717327
733617336
734217342
734317343
734417344
7346214692
734717347
734917349
7354214708
735517355
735717357
7361322083
736217362
736417364
736517365
7366214732
7367322101
736817368
737017370
737217372
737817378
738017380
740117401
740617406
741117411
741517415
741617416
741817418
742917429
743017430
744217442
744517445
745117451
745717457
751417514
753517535
753817538
757217572
757717577
758017580
758517585
7620215240
7621215242
765517655
7661215322
766617666
7732215464
7744215488
775317753
781817818
781917819
785617856
785817858
787017870
787317873
7894215788
7899215798
790417904
790617906
792117921
792217922
792717927
793017930
796217962
796317963
797117971
797217972
798717987
7994431976
7996215992
799717997
8004216008
801218012
801418014
8015216030
8017216034
8020216040
8039216078
8059216118
808918089
809118091
8100216200
8102216204
8132216264
813618136
813718137
814118141
814418144
820518205
820918209
821218212
821418214
821818218
825918259
Total10026764594
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
593315933
5934317802
593915939
594015940
594415944
594515945
594915949
595715957
595815958
602016020
602616026
6027212054
6032212064
6063212126
606716067
606816068
608216082
608416084
6112212224
6135212270
6149212298
6153212306
615516155
6160318480
616216162
616816168
6171212342
617716177
6178318534
618216182
618316183
6203212406
6213212426
624616246
624916249
6254212508
626716267
626916269
627016270
627116271
627416274
6275318825
629516295
629916299
6349212698
637316373
641516415
641916419
642516425
6426212852
6437212874
645916459
646516465
648316483
649316493
649416494
650116501
651216512
651816518
655216552
6553319659
659216592
659416594
663116631
663516635
665516655
672116721
672216722
672316723
672516725
672716727
6728213456
672916729
673316733
673816738
674016740
6742213484
675216752
675316753
677916779
678116781
6782213564
6783213566
6784320352
678516785
678616786
6787213574
679016790
679216792
679516795
680116801
6808213616
680916809
681516815
681716817
686416864
692816928
693116931
693216932
693616936
694216942
694616946
6949213898
695016950
6952213904
695316953
695416954
696216962
696416964
6965320895
696716967
6970427880
6971213942
697216972
6974213948
697516975
697716977
697916979
6981213962
698216982
6987213974
6989320967
699216992
699416994
700117001
7002214004
700317003
7005428020
7006214012
700717007
700817008
7010428040
7011321033
701217012
701317013
7015321045
7017214034
7020428080
7021535105
7022214044
702317023
7024321072
702617026
702717027
702817028
702917029
703017030
703217032
703317033
7035214070
703617036
7037428148
7039535195
704217042
7043428172
7045214090
7047214094
7048214096
7050428200
705117051
7052321156
7053214106
705417054
7055321165
7056214112
705717057
705817058
7059321177
7061214122
7062214124
7063428252
7064321192
7065214130
7066428264
7067214134
7068321204
706917069
707017070
7072214144
7073428292
707417074
707517075
707617076
707817078
7080321240
7081321243
708217082
708317083
708517085
708917089
7092428368
7095428380
709617096
7097321291
7098214196
7099214198
710017100
7102321306
7104321312
7105535525
7107214214
710817108
711117111
7113321339
711417114
711517115
7116428464
7117214234
7118321354
711917119
712017120
7121214242
7122321366
7123214246
712417124
712617126
712717127
7128214256
7129214258
7130214260
7131214262
713217132
713417134
713617136
713817138
713917139
714017140
7141321423
7142214284
714317143
714417144
714517145
7151214302
7152214304
7153321459
7154428616
7155535775
7156214312
7158428632
7159214318
7161214322
7162642972
716317163
7164428656
7165428660
7166321498
7167321501
7168214336
716917169
7171428684
717317173
7174214348
7175321525
717617176
717817178
717917179
718117181
7182321546
7183214366
7184214368
718617186
718717187
7188214376
718917189
719117191
7195321585
7198214396
7199214398
7200321600
7201214402
7202214404
7203214406
720417204
7205214410
7206214412
720717207
7210214420
721217212
721317213
721417214
7215321645
721817218
722017220
7221214442
722217222
722717227
7228214456
723017230
723117231
723317233
723417234
7237321711
7238214476
723917239
724217242
7245214490
724617246
725017250
725117251
725217252
7253321759
725417254
7255536275
7256321768
7257321771
725817258
7259214518
7261321783
726517265
7266429064
7267214534
726917269
7270214540
7271429084
727217272
7273429092
727417274
727717277
7278321834
728017280
728117281
728217282
728317283
728517285
7289214578
729017290
729117291
7293214586
7294321882
7295214590
729817298
729917299
730117301
7303214606
7304214608
7305321915
7306643836
7309214618
7310321930
731517315
731617316
732017320
732117321
7325214650
7327321981
7328214656
732917329
733017330
733217332
7333429332
733417334
7336322008
7337322011
7338536690
7339322017
7340751380
7341322023
7343429372
7344536720
7345429380
7346214692
734717347
7348214696
7349214698
7350322050
7351322053
7352536760
7353322059
735417354
7355536775
735617356
735717357
7358214716
735917359
7361429444
7362214724
7363214726
736417364
7365214730
736617366
736717367
736817368
7369214738
7370322110
7371214742
7373214746
7374214748
737517375
7376322128
7378214756
737917379
7380214760
7382214764
738417384
738617386
7387214774
739017390
7392429568
739317393
7394214788
7395214790
7396322188
7397322191
7398429592
7399214798
7400429600
740117401
7402322206
740317403
7404322212
7405322215
7407537035
740817408
7409429636
7410214820
741117411
741217412
741317413
741417414
7415214830
741617416
741817418
7419214838
7420214840
742317423
7424214848
7426537130
742717427
7428322284
7429322287
7430322290
743117431
743217432
743317433
7434214868
7435322305
7436322308
743717437
7438214876
744117441
7442322326
744417444
744517445
7446322338
744717447
744817448
744917449
7451214902
7460214920
7463214926
7464214928
746917469
7470214940
747117471
747317473
747417474
747517475
747617476
747717477
747817478
747917479
748317483
7490214980
7491214982
7492429968
749317493
749717497
7498322494
750117501
7506215012
750817508
7509537545
751017510
751217512
751317513
7516215032
761717617
762017620
762117621
762417624
762717627
762817628
763117631
763217632
763617636
763717637
7638215276
7641215282
7642322926
7643215286
764417644
764517645
764617646
7647215294
7648322944
7657215314
767617676
768117681
7695215390
769917699
770317703
7707215414
771817718
772117721
772817728
773417734
779517795
781317813
781617816
785117851
785617856
785917859
786517865
7898215796
7899215798
793017930
793517935
794117941
794617946
8005216010
8016216032
803518035
8089216178
813318133
813518135
8146216292
8166216332
8171216342
817218172
817418174
818618186
818718187
819118191
819518195
8225216450
823418234
823518235
8255216510
8257216514
8258216516
826218262
8267216534
827118271
827318273
8274216548
827518275
8279216558
8284216568
8298216596
8318216636
834618346
834818348
8359216718
836418364
836618366
8397216794
840218402
840618406
841018410
841518415
847418474
847818478
848418484
848518485
848918489
853118531
Total10027218429
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333635266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88828e4b325e8da3
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3865346233323565
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_4_10.json b/autobahn/client/tungstenite_case_12_4_10.json new file mode 100644 index 0000000..e5352f6 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_10.json @@ -0,0 +1,1335 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 365, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 5602, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=365&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 5xe8VDJglrjK1r5gTXKNsw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: B7nXov6BIWVKpZJHP2pk54tJwbQ=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.4.10", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "5292": 2, + "5293": 2, + "5298": 1, + "5301": 2, + "5303": 1, + "5306": 1, + "5314": 1, + "5316": 1, + "5379": 1, + "5385": 1, + "5387": 1, + "5388": 1, + "5390": 2, + "5421": 2, + "5424": 2, + "5433": 1, + "5436": 1, + "5465": 2, + "5492": 2, + "5510": 2, + "5512": 1, + "5515": 2, + "5519": 2, + "5520": 1, + "5521": 1, + "5526": 2, + "5527": 1, + "5535": 2, + "5537": 2, + "5538": 2, + "5563": 1, + "5564": 1, + "5573": 2, + "5608": 1, + "5611": 1, + "5619": 2, + "5634": 1, + "5635": 1, + "5636": 1, + "5637": 1, + "5638": 1, + "5639": 1, + "5643": 2, + "5666": 1, + "5669": 1, + "5722": 1, + "5723": 1, + "5736": 1, + "5769": 1, + "5773": 1, + "5785": 1, + "5800": 2, + "5810": 2, + "5820": 1, + "5824": 1, + "5841": 1, + "5852": 1, + "5854": 1, + "5861": 1, + "5883": 1, + "5890": 1, + "5925": 1, + "5926": 1, + "5927": 2, + "5968": 1, + "5970": 1, + "6008": 1, + "6010": 1, + "6018": 1, + "6089": 1, + "6090": 1, + "6098": 1, + "6100": 2, + "6101": 1, + "6102": 2, + "6109": 1, + "6114": 2, + "6119": 2, + "6127": 1, + "6128": 1, + "6157": 3, + "6160": 1, + "6163": 3, + "6165": 2, + "6166": 1, + "6167": 2, + "6168": 2, + "6169": 1, + "6171": 1, + "6172": 1, + "6175": 1, + "6186": 2, + "6192": 1, + "6194": 1, + "6233": 1, + "6302": 1, + "6308": 1, + "6311": 1, + "6315": 1, + "6318": 1, + "6321": 1, + "6324": 1, + "6328": 1, + "6329": 2, + "6331": 1, + "6333": 1, + "6335": 1, + "6341": 1, + "6343": 2, + "6344": 2, + "6346": 1, + "6348": 2, + "6359": 1, + "6360": 1, + "6362": 1, + "6369": 1, + "6371": 1, + "6373": 1, + "6381": 1, + "6383": 1, + "6385": 1, + "6388": 1, + "6390": 2, + "6397": 1, + "6399": 2, + "6401": 4, + "6403": 1, + "6415": 1, + "6416": 3, + "6417": 1, + "6418": 5, + "6419": 1, + "6420": 3, + "6425": 1, + "6426": 1, + "6428": 1, + "6432": 1, + "6433": 2, + "6435": 3, + "6447": 1, + "6452": 1, + "6453": 2, + "6456": 2, + "6457": 1, + "6465": 2, + "6467": 2, + "6468": 3, + "6469": 1, + "6470": 2, + "6471": 2, + "6473": 1, + "6474": 3, + "6475": 1, + "6481": 2, + "6483": 2, + "6484": 2, + "6485": 4, + "6486": 1, + "6487": 1, + "6488": 3, + "6490": 1, + "6492": 2, + "6494": 1, + "6495": 1, + "6497": 1, + "6498": 3, + "6501": 3, + "6502": 2, + "6503": 2, + "6504": 1, + "6505": 1, + "6510": 1, + "6511": 1, + "6512": 1, + "6515": 3, + "6517": 2, + "6519": 1, + "6522": 1, + "6524": 2, + "6526": 2, + "6527": 1, + "6529": 1, + "6532": 1, + "6540": 2, + "6542": 1, + "6544": 2, + "6546": 2, + "6550": 2, + "6551": 1, + "6552": 1, + "6553": 3, + "6554": 1, + "6556": 3, + "6557": 2, + "6559": 3, + "6560": 4, + "6561": 2, + "6563": 1, + "6565": 1, + "6567": 1, + "6568": 3, + "6569": 1, + "6571": 1, + "6572": 1, + "6575": 2, + "6576": 1, + "6584": 1, + "6589": 1, + "6593": 1, + "6595": 1, + "6596": 2, + "6599": 1, + "6600": 4, + "6601": 1, + "6602": 1, + "6604": 1, + "6605": 3, + "6606": 2, + "6608": 1, + "6610": 1, + "6613": 1, + "6615": 1, + "6616": 1, + "6618": 1, + "6619": 2, + "6620": 3, + "6621": 2, + "6624": 2, + "6626": 2, + "6629": 1, + "6632": 1, + "6633": 1, + "6636": 1, + "6639": 1, + "6640": 1, + "6641": 1, + "6646": 2, + "6648": 2, + "6650": 1, + "6651": 1, + "6652": 2, + "6653": 1, + "6654": 2, + "6655": 1, + "6657": 1, + "6659": 3, + "6661": 3, + "6662": 2, + "6665": 2, + "6666": 3, + "6668": 2, + "6669": 2, + "6671": 1, + "6672": 2, + "6673": 1, + "6674": 1, + "6675": 4, + "6676": 4, + "6677": 2, + "6682": 1, + "6689": 1, + "6690": 4, + "6692": 3, + "6693": 4, + "6695": 2, + "6696": 3, + "6697": 1, + "6699": 1, + "6700": 3, + "6703": 2, + "6707": 1, + "6710": 1, + "6713": 2, + "6715": 1, + "6716": 1, + "6719": 1, + "6720": 1, + "6722": 1, + "6723": 1, + "6724": 3, + "6729": 2, + "6731": 2, + "6734": 1, + "6735": 2, + "6736": 2, + "6737": 2, + "6738": 2, + "6740": 1, + "6741": 3, + "6742": 1, + "6745": 1, + "6746": 1, + "6748": 1, + "6750": 2, + "6751": 1, + "6753": 1, + "6755": 3, + "6756": 2, + "6758": 2, + "6759": 2, + "6760": 4, + "6761": 3, + "6764": 1, + "6765": 2, + "6766": 3, + "6767": 4, + "6768": 5, + "6769": 1, + "6770": 2, + "6771": 2, + "6772": 2, + "6774": 1, + "6776": 2, + "6778": 1, + "6779": 1, + "6780": 2, + "6783": 4, + "6784": 1, + "6786": 1, + "6791": 2, + "6792": 2, + "6793": 4, + "6794": 1, + "6797": 1, + "6798": 3, + "6800": 2, + "6801": 2, + "6802": 1, + "6807": 1, + "6808": 2, + "6809": 3, + "6810": 4, + "6811": 4, + "6812": 1, + "6813": 2, + "6814": 4, + "6815": 2, + "6816": 1, + "6817": 2, + "6819": 3, + "6820": 2, + "6822": 7, + "6823": 1, + "6824": 3, + "6825": 2, + "6826": 5, + "6832": 2, + "6833": 2, + "6838": 2, + "6839": 1, + "6844": 1, + "6846": 2, + "6849": 1, + "6850": 1, + "6852": 1, + "6853": 1, + "6859": 2, + "6861": 1, + "6862": 3, + "6863": 1, + "6864": 1, + "6866": 2, + "6867": 5, + "6869": 1, + "6870": 2, + "6873": 1, + "6875": 1, + "6878": 1, + "6880": 1, + "6881": 2, + "6883": 1, + "6884": 1, + "6885": 1, + "6886": 3, + "6889": 1, + "6890": 2, + "6893": 2, + "6896": 1, + "6897": 2, + "6898": 1, + "6901": 3, + "6903": 1, + "6904": 1, + "6905": 2, + "6907": 3, + "6908": 1, + "6910": 1, + "6913": 1, + "6916": 1, + "6917": 1, + "6920": 1, + "6921": 1, + "6925": 2, + "6930": 3, + "6934": 2, + "6935": 1, + "6936": 4, + "6937": 2, + "6938": 2, + "6939": 1, + "6940": 3, + "6941": 1, + "6943": 1, + "6947": 4, + "6948": 1, + "6949": 5, + "6950": 1, + "6952": 2, + "6953": 2, + "6955": 1, + "6957": 2, + "6958": 2, + "6960": 2, + "6961": 3, + "6963": 1, + "6964": 1, + "6965": 1, + "6966": 1, + "6974": 1, + "6975": 1, + "6976": 2, + "6977": 1, + "6980": 1, + "6983": 1, + "6985": 1, + "6986": 2, + "6987": 2, + "6988": 2, + "6989": 3, + "6990": 2, + "6991": 2, + "6993": 2, + "6995": 3, + "7000": 3, + "7002": 1, + "7007": 1, + "7008": 2, + "7009": 1, + "7010": 2, + "7011": 1, + "7014": 1, + "7015": 1, + "7016": 1, + "7017": 2, + "7020": 1, + "7022": 1, + "7030": 2, + "7031": 1, + "7032": 1, + "7034": 1, + "7035": 1, + "7037": 2, + "7038": 4, + "7039": 2, + "7040": 3, + "7042": 2, + "7046": 1, + "7049": 1, + "7051": 2, + "7059": 1, + "7061": 2, + "7062": 4, + "7063": 2, + "7064": 2, + "7065": 2, + "7066": 1, + "7067": 2, + "7068": 4, + "7069": 2, + "7070": 1, + "7072": 1, + "7078": 3, + "7084": 3, + "7086": 2, + "7087": 1, + "7088": 2, + "7089": 4, + "7090": 1, + "7091": 3, + "7092": 2, + "7093": 2, + "7094": 1, + "7100": 1, + "7102": 1, + "7103": 3, + "7104": 4, + "7105": 1, + "7106": 2, + "7107": 3, + "7110": 2, + "7112": 1, + "7116": 3, + "7118": 1, + "7119": 2, + "7122": 1, + "7123": 1, + "7125": 2, + "7134": 2, + "7135": 1, + "7137": 1, + "7138": 3, + "7139": 1, + "7140": 1, + "7144": 1, + "7146": 1, + "7159": 1, + "7162": 1, + "7163": 1, + "7166": 1, + "7168": 2, + "7172": 2, + "7175": 1, + "7176": 1, + "7178": 1, + "7183": 1, + "7185": 1, + "7189": 1, + "7190": 1, + "7191": 1, + "7202": 1, + "7203": 1, + "7205": 1, + "7208": 1, + "7209": 1, + "7212": 1, + "7213": 1, + "7215": 1, + "7217": 1, + "7219": 1, + "7225": 2, + "7327": 1, + "7336": 1, + "7342": 1, + "7343": 1, + "7344": 1, + "7346": 2, + "7347": 1, + "7349": 1, + "7354": 2, + "7355": 1, + "7357": 1, + "7361": 3, + "7362": 1, + "7364": 1, + "7365": 1, + "7366": 2, + "7367": 3, + "7368": 1, + "7370": 1, + "7372": 1, + "7378": 1, + "7380": 1, + "7401": 1, + "7406": 1, + "7411": 1, + "7415": 1, + "7416": 1, + "7418": 1, + "7429": 1, + "7430": 1, + "7442": 1, + "7445": 1, + "7451": 1, + "7457": 1, + "7514": 1, + "7535": 1, + "7538": 1, + "7572": 1, + "7577": 1, + "7580": 1, + "7585": 1, + "7620": 2, + "7621": 2, + "7655": 1, + "7661": 2, + "7666": 1, + "7732": 2, + "7744": 2, + "7753": 1, + "7818": 1, + "7819": 1, + "7856": 1, + "7858": 1, + "7870": 1, + "7873": 1, + "7894": 2, + "7899": 2, + "7904": 1, + "7906": 1, + "7921": 1, + "7922": 1, + "7927": 1, + "7930": 1, + "7962": 1, + "7963": 1, + "7971": 1, + "7972": 1, + "7987": 1, + "7994": 4, + "7996": 2, + "7997": 1, + "8004": 2, + "8012": 1, + "8014": 1, + "8015": 2, + "8017": 2, + "8020": 2, + "8039": 2, + "8059": 2, + "8089": 1, + "8091": 1, + "8100": 2, + "8102": 2, + "8132": 2, + "8136": 1, + "8137": 1, + "8141": 1, + "8144": 1, + "8205": 1, + "8209": 1, + "8212": 1, + "8214": 1, + "8218": 1, + "8259": 1 + }, + "started": "2020-09-07T18:49:57.034Z", + "trafficStats": { + "incomingCompressionRatio": 0.05154142277258159, + "incomingOctetsAppLevel": 131085419, + "incomingOctetsWebSocketLevel": 6756329, + "incomingOctetsWireLevel": 6764329, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0011840749614176575, + "outgoingCompressionRatio": 0.05503413770222606, + "outgoingOctetsAppLevel": 131085419, + "outgoingOctetsWebSocketLevel": 7214173, + "outgoingOctetsWireLevel": 7218173, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0005544641083600297, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "5933": 1, + "5934": 3, + "5939": 1, + "5940": 1, + "5944": 1, + "5945": 1, + "5949": 1, + "5957": 1, + "5958": 1, + "6020": 1, + "6026": 1, + "6027": 2, + "6032": 2, + "6063": 2, + "6067": 1, + "6068": 1, + "6082": 1, + "6084": 1, + "6112": 2, + "6135": 2, + "6149": 2, + "6153": 2, + "6155": 1, + "6160": 3, + "6162": 1, + "6168": 1, + "6171": 2, + "6177": 1, + "6178": 3, + "6182": 1, + "6183": 1, + "6203": 2, + "6213": 2, + "6246": 1, + "6249": 1, + "6254": 2, + "6267": 1, + "6269": 1, + "6270": 1, + "6271": 1, + "6274": 1, + "6275": 3, + "6295": 1, + "6299": 1, + "6349": 2, + "6373": 1, + "6415": 1, + "6419": 1, + "6425": 1, + "6426": 2, + "6437": 2, + "6459": 1, + "6465": 1, + "6483": 1, + "6493": 1, + "6494": 1, + "6501": 1, + "6512": 1, + "6518": 1, + "6552": 1, + "6553": 3, + "6592": 1, + "6594": 1, + "6631": 1, + "6635": 1, + "6655": 1, + "6721": 1, + "6722": 1, + "6723": 1, + "6725": 1, + "6727": 1, + "6728": 2, + "6729": 1, + "6733": 1, + "6738": 1, + "6740": 1, + "6742": 2, + "6752": 1, + "6753": 1, + "6779": 1, + "6781": 1, + "6782": 2, + "6783": 2, + "6784": 3, + "6785": 1, + "6786": 1, + "6787": 2, + "6790": 1, + "6792": 1, + "6795": 1, + "6801": 1, + "6808": 2, + "6809": 1, + "6815": 1, + "6817": 1, + "6864": 1, + "6928": 1, + "6931": 1, + "6932": 1, + "6936": 1, + "6942": 1, + "6946": 1, + "6949": 2, + "6950": 1, + "6952": 2, + "6953": 1, + "6954": 1, + "6962": 1, + "6964": 1, + "6965": 3, + "6967": 1, + "6970": 4, + "6971": 2, + "6972": 1, + "6974": 2, + "6975": 1, + "6977": 1, + "6979": 1, + "6981": 2, + "6982": 1, + "6987": 2, + "6989": 3, + "6992": 1, + "6994": 1, + "7001": 1, + "7002": 2, + "7003": 1, + "7005": 4, + "7006": 2, + "7007": 1, + "7008": 1, + "7010": 4, + "7011": 3, + "7012": 1, + "7013": 1, + "7015": 3, + "7017": 2, + "7020": 4, + "7021": 5, + "7022": 2, + "7023": 1, + "7024": 3, + "7026": 1, + "7027": 1, + "7028": 1, + "7029": 1, + "7030": 1, + "7032": 1, + "7033": 1, + "7035": 2, + "7036": 1, + "7037": 4, + "7039": 5, + "7042": 1, + "7043": 4, + "7045": 2, + "7047": 2, + "7048": 2, + "7050": 4, + "7051": 1, + "7052": 3, + "7053": 2, + "7054": 1, + "7055": 3, + "7056": 2, + "7057": 1, + "7058": 1, + "7059": 3, + "7061": 2, + "7062": 2, + "7063": 4, + "7064": 3, + "7065": 2, + "7066": 4, + "7067": 2, + "7068": 3, + "7069": 1, + "7070": 1, + "7072": 2, + "7073": 4, + "7074": 1, + "7075": 1, + "7076": 1, + "7078": 1, + "7080": 3, + "7081": 3, + "7082": 1, + "7083": 1, + "7085": 1, + "7089": 1, + "7092": 4, + "7095": 4, + "7096": 1, + "7097": 3, + "7098": 2, + "7099": 2, + "7100": 1, + "7102": 3, + "7104": 3, + "7105": 5, + "7107": 2, + "7108": 1, + "7111": 1, + "7113": 3, + "7114": 1, + "7115": 1, + "7116": 4, + "7117": 2, + "7118": 3, + "7119": 1, + "7120": 1, + "7121": 2, + "7122": 3, + "7123": 2, + "7124": 1, + "7126": 1, + "7127": 1, + "7128": 2, + "7129": 2, + "7130": 2, + "7131": 2, + "7132": 1, + "7134": 1, + "7136": 1, + "7138": 1, + "7139": 1, + "7140": 1, + "7141": 3, + "7142": 2, + "7143": 1, + "7144": 1, + "7145": 1, + "7151": 2, + "7152": 2, + "7153": 3, + "7154": 4, + "7155": 5, + "7156": 2, + "7158": 4, + "7159": 2, + "7161": 2, + "7162": 6, + "7163": 1, + "7164": 4, + "7165": 4, + "7166": 3, + "7167": 3, + "7168": 2, + "7169": 1, + "7171": 4, + "7173": 1, + "7174": 2, + "7175": 3, + "7176": 1, + "7178": 1, + "7179": 1, + "7181": 1, + "7182": 3, + "7183": 2, + "7184": 2, + "7186": 1, + "7187": 1, + "7188": 2, + "7189": 1, + "7191": 1, + "7195": 3, + "7198": 2, + "7199": 2, + "7200": 3, + "7201": 2, + "7202": 2, + "7203": 2, + "7204": 1, + "7205": 2, + "7206": 2, + "7207": 1, + "7210": 2, + "7212": 1, + "7213": 1, + "7214": 1, + "7215": 3, + "7218": 1, + "7220": 1, + "7221": 2, + "7222": 1, + "7227": 1, + "7228": 2, + "7230": 1, + "7231": 1, + "7233": 1, + "7234": 1, + "7237": 3, + "7238": 2, + "7239": 1, + "7242": 1, + "7245": 2, + "7246": 1, + "7250": 1, + "7251": 1, + "7252": 1, + "7253": 3, + "7254": 1, + "7255": 5, + "7256": 3, + "7257": 3, + "7258": 1, + "7259": 2, + "7261": 3, + "7265": 1, + "7266": 4, + "7267": 2, + "7269": 1, + "7270": 2, + "7271": 4, + "7272": 1, + "7273": 4, + "7274": 1, + "7277": 1, + "7278": 3, + "7280": 1, + "7281": 1, + "7282": 1, + "7283": 1, + "7285": 1, + "7289": 2, + "7290": 1, + "7291": 1, + "7293": 2, + "7294": 3, + "7295": 2, + "7298": 1, + "7299": 1, + "7301": 1, + "7303": 2, + "7304": 2, + "7305": 3, + "7306": 6, + "7309": 2, + "7310": 3, + "7315": 1, + "7316": 1, + "7320": 1, + "7321": 1, + "7325": 2, + "7327": 3, + "7328": 2, + "7329": 1, + "7330": 1, + "7332": 1, + "7333": 4, + "7334": 1, + "7336": 3, + "7337": 3, + "7338": 5, + "7339": 3, + "7340": 7, + "7341": 3, + "7343": 4, + "7344": 5, + "7345": 4, + "7346": 2, + "7347": 1, + "7348": 2, + "7349": 2, + "7350": 3, + "7351": 3, + "7352": 5, + "7353": 3, + "7354": 1, + "7355": 5, + "7356": 1, + "7357": 1, + "7358": 2, + "7359": 1, + "7361": 4, + "7362": 2, + "7363": 2, + "7364": 1, + "7365": 2, + "7366": 1, + "7367": 1, + "7368": 1, + "7369": 2, + "7370": 3, + "7371": 2, + "7373": 2, + "7374": 2, + "7375": 1, + "7376": 3, + "7378": 2, + "7379": 1, + "7380": 2, + "7382": 2, + "7384": 1, + "7386": 1, + "7387": 2, + "7390": 1, + "7392": 4, + "7393": 1, + "7394": 2, + "7395": 2, + "7396": 3, + "7397": 3, + "7398": 4, + "7399": 2, + "7400": 4, + "7401": 1, + "7402": 3, + "7403": 1, + "7404": 3, + "7405": 3, + "7407": 5, + "7408": 1, + "7409": 4, + "7410": 2, + "7411": 1, + "7412": 1, + "7413": 1, + "7414": 1, + "7415": 2, + "7416": 1, + "7418": 1, + "7419": 2, + "7420": 2, + "7423": 1, + "7424": 2, + "7426": 5, + "7427": 1, + "7428": 3, + "7429": 3, + "7430": 3, + "7431": 1, + "7432": 1, + "7433": 1, + "7434": 2, + "7435": 3, + "7436": 3, + "7437": 1, + "7438": 2, + "7441": 1, + "7442": 3, + "7444": 1, + "7445": 1, + "7446": 3, + "7447": 1, + "7448": 1, + "7449": 1, + "7451": 2, + "7460": 2, + "7463": 2, + "7464": 2, + "7469": 1, + "7470": 2, + "7471": 1, + "7473": 1, + "7474": 1, + "7475": 1, + "7476": 1, + "7477": 1, + "7478": 1, + "7479": 1, + "7483": 1, + "7490": 2, + "7491": 2, + "7492": 4, + "7493": 1, + "7497": 1, + "7498": 3, + "7501": 1, + "7506": 2, + "7508": 1, + "7509": 5, + "7510": 1, + "7512": 1, + "7513": 1, + "7516": 2, + "7617": 1, + "7620": 1, + "7621": 1, + "7624": 1, + "7627": 1, + "7628": 1, + "7631": 1, + "7632": 1, + "7636": 1, + "7637": 1, + "7638": 2, + "7641": 2, + "7642": 3, + "7643": 2, + "7644": 1, + "7645": 1, + "7646": 1, + "7647": 2, + "7648": 3, + "7657": 2, + "7676": 1, + "7681": 1, + "7695": 2, + "7699": 1, + "7703": 1, + "7707": 2, + "7718": 1, + "7721": 1, + "7728": 1, + "7734": 1, + "7795": 1, + "7813": 1, + "7816": 1, + "7851": 1, + "7856": 1, + "7859": 1, + "7865": 1, + "7898": 2, + "7899": 2, + "7930": 1, + "7935": 1, + "7941": 1, + "7946": 1, + "8005": 2, + "8016": 2, + "8035": 1, + "8089": 2, + "8133": 1, + "8135": 1, + "8146": 2, + "8166": 2, + "8171": 2, + "8172": 1, + "8174": 1, + "8186": 1, + "8187": 1, + "8191": 1, + "8195": 1, + "8225": 2, + "8234": 1, + "8235": 1, + "8255": 2, + "8257": 2, + "8258": 2, + "8262": 1, + "8267": 2, + "8271": 1, + "8273": 1, + "8274": 2, + "8275": 1, + "8279": 2, + "8284": 2, + "8298": 2, + "8318": 2, + "8346": 1, + "8348": 1, + "8359": 2, + "8364": 1, + "8366": 1, + "8397": 2, + "8402": 1, + "8406": 1, + "8410": 1, + "8415": 1, + "8474": 1, + "8478": 1, + "8484": 1, + "8485": 1, + "8489": 1, + "8531": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333635266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88828e4b325e8da3" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "8e4b325e" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_4_11.html b/autobahn/client/tungstenite_case_12_4_11.html new file mode 100644 index 0000000..9971764 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_11.html @@ -0,0 +1,956 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.4.11 : Pass - 1170 ms @ 2020-09-07T18:50:02.636Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=366&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: DfaRiClRQha8dX79fCNprg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: yQOUx+E6aegNmf2ugMq3sNO6TGY=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
1504600
1514604
1525760
1536918
15471078
1554620
1565780
1572314
1592318
1631163
1651165
1701170
1762352
1791179
1801180
1812362
1832366
1855925
1865930
1873561
1883564
1893567
1912382
1922384
1935965
1945970
1952390
1964784
1973591
1985990
19991791
20061200
2014804
2024808
2032406
20451020
2051205
2063618
2072414
2083624
20961254
2102420
2113633
21291908
21371491
2144856
2152430
2164864
2251225
2272454
2311231
2323696
2333699
2343702
2354940
2371237
23851190
23971673
24071680
2411241
2423726
2433729
2451245
2461246
24792223
24871736
2502500
2511251
2522504
2541254
2551255
2573771
2611261
2631263
26441056
2653795
2672534
2681268
2693807
2703810
2712542
27441096
2751275
2763828
27741108
27841112
28061680
28141124
28251410
28351415
2843852
2853855
2872574
2881288
2893867
2911291
2923876
2951295
29841192
2992598
3001300
3021302
3031303
3041304
3061306
3081308
30951545
3103930
3111311
3122624
3141314
31541260
3162632
31851590
31941276
3201320
3211321
3221322
3251325
3261326
3273981
32882624
3291329
3302660
3313993
33241328
33341332
3341334
3352670
3362672
3372674
33882704
33993051
34093060
34131023
34272394
34331029
34441376
34541380
34672422
34772429
34882784
34951745
35062100
35182808
35272464
35382824
35472478
35531065
35651780
35772499
35851790
35993231
36062160
36172527
36282896
36351815
36493276
36562190
36693294
36751835
3682736
36931107
37062220
37162226
3722744
3741374
3752750
37651880
3772754
3781378
3791379
3811381
3822764
3842768
3852770
3862772
38741548
38831164
3891389
3901390
39231176
3932786
39431182
3951395
3981398
4031403
40431212
4071407
4081408
4111411
4151415
41631248
41731251
4182836
41993771
42072940
42141684
42241688
4231423
42431272
4251425
42631278
42731281
4282856
42931287
43241728
43441736
43531305
4382876
4421442
4431443
4441444
4502900
4511451
45231356
4531453
45531365
4561456
4572914
4582916
4591459
4601460
4611461
4632926
4641464
4671467
46862808
4692938
47031410
4722944
47341892
4741474
4761476
4781478
47941916
4811481
4821482
48531455
4861486
4871487
4901490
4941494
4952990
5071507
5091509
51021020
5141514
5151515
5181518
51931557
5211521
5221522
5291529
5301530
5351535
5381538
54031620
5411541
5431543
54421088
5461546
5471547
54921098
5531553
55421108
5551555
55621112
55731671
5581558
5611561
5621562
56531695
5661566
5751575
5761576
5771577
5781578
57921158
5801580
58152905
5851585
58621172
5911591
6001600
6041604
60531815
6071607
6091609
6111611
61221224
6141614
6151615
61821236
62042480
6211621
62221244
62521250
6261626
6271627
63021260
63131893
6331633
6361636
6381638
6401640
6431643
6581658
6601660
6631663
6661666
6681668
6781678
6821682
6831683
6851685
68821376
6901690
69321386
6941694
7011701
70221404
70321406
70421408
7061706
70721414
7101710
7301730
7311731
7321732
73532205
7371737
7381738
7391739
74221484
7441744
7451745
75121502
75821516
76021520
7611761
7621762
76343052
7641764
7691769
8031803
8111811
8411841
8471847
8581858
86821736
8711871
8821882
9061906
9091909
9101910
92321846
9251925
9391939
9441944
9481948
9491949
95321906
9551955
9561956
9571957
9701970
9741974
100411004
102811028
103311033
104311043
105611056
113111131
115511155
118011180
119511195
120811208
121511215
123411234
124111241
124422488
124511245
124711247
124811248
124911249
125911259
129811298
131111311
131411314
132011320
134211342
156011560
156611566
157511575
158511585
159211592
169611696
171311713
172611726
175311753
176111761
177811778
179711797
181211812
182711827
184011840
205112051
206212062
208212082
209712097
210312103
212012120
212112121
214612146
215512155
218912189
221512215
228412284
Total1002440085
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
224
326
4520
6212
7214
8216
9436
10550
11555
12112
13339
14456
16116
17234
186108
19238
20480
21484
22122
2311253
24372
258200
266156
274108
285140
294116
305150
317217
325160
337231
34268
353105
366216
37137
38276
393117
40140
415205
42142
435215
443132
455225
464184
47294
494196
504200
512102
525260
536318
545270
556330
563168
57157
58158
594236
603180
616366
624248
637441
649576
652130
667462
672134
683204
694276
70170
71171
72172
732146
743222
752150
76176
77177
783234
792158
804320
81181
822164
833249
84184
854340
864344
874348
884352
892178
905450
913273
923276
938744
942188
957665
964384
976582
985490
993297
1004400
1012202
1026612
1034412
1043312
1059945
1065530
1078856
108121296
1095545
1108880
111101110
112131456
1133339
1146684
1155575
1164464
1177819
118131534
1195595
1203360
1212242
1221122
1233369
1248992
1254500
1263378
12781016
1306780
1323396
1341134
1356810
1363408
1384552
1393417
1402280
1444576
1451145
1471147
1483444
1491149
1504600
1512302
1525760
1541154
1552310
1566936
15791413
1584632
1594636
1603480
1615805
1624648
1632326
1645820
1653495
1664664
1672334
16871176
16971183
1702340
1722344
1732346
1744696
17591575
1762352
1773531
1781178
1794716
1804720
18161086
182101820
18371281
18471288
1852370
1863558
1874748
18861128
18971323
1905950
1912382
19271344
19371351
19461164
1952390
19671372
1972394
1983594
1995995
2004800
2014804
2021202
20351015
20451020
2051205
2062412
2071207
2084832
20951045
2112422
2133639
2143642
2151215
2161216
2173651
2182436
2191219
2203660
2214884
22291998
22361338
22471568
22571575
2263678
22761362
2281228
2291229
23051150
23171617
2323696
2332466
23461404
23551175
23681888
23761422
2384952
23951195
240102400
2414964
24261452
24351215
24492196
24561470
24671722
24792223
248102480
24961494
25061500
25141004
2523756
2533759
2542508
25541020
2573771
2592518
2601278332280
Total2280467550
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
01278
11000
81
Total2279
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333636266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88828e8d94738d65
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3865386439343733
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_4_11.json b/autobahn/client/tungstenite_case_12_4_11.json new file mode 100644 index 0000000..183631a --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_11.json @@ -0,0 +1,803 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 366, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 1170, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=366&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: DfaRiClRQha8dX79fCNprg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: yQOUx+E6aegNmf2ugMq3sNO6TGY=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.4.11", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "150": 4, + "151": 4, + "152": 5, + "153": 6, + "154": 7, + "155": 4, + "156": 5, + "157": 2, + "159": 2, + "163": 1, + "165": 1, + "170": 1, + "176": 2, + "179": 1, + "180": 1, + "181": 2, + "183": 2, + "185": 5, + "186": 5, + "187": 3, + "188": 3, + "189": 3, + "191": 2, + "192": 2, + "193": 5, + "194": 5, + "195": 2, + "196": 4, + "197": 3, + "198": 5, + "199": 9, + "200": 6, + "201": 4, + "202": 4, + "203": 2, + "204": 5, + "205": 1, + "206": 3, + "207": 2, + "208": 3, + "209": 6, + "210": 2, + "211": 3, + "212": 9, + "213": 7, + "214": 4, + "215": 2, + "216": 4, + "225": 1, + "227": 2, + "231": 1, + "232": 3, + "233": 3, + "234": 3, + "235": 4, + "237": 1, + "238": 5, + "239": 7, + "240": 7, + "241": 1, + "242": 3, + "243": 3, + "245": 1, + "246": 1, + "247": 9, + "248": 7, + "250": 2, + "251": 1, + "252": 2, + "254": 1, + "255": 1, + "257": 3, + "261": 1, + "263": 1, + "264": 4, + "265": 3, + "267": 2, + "268": 1, + "269": 3, + "270": 3, + "271": 2, + "274": 4, + "275": 1, + "276": 3, + "277": 4, + "278": 4, + "280": 6, + "281": 4, + "282": 5, + "283": 5, + "284": 3, + "285": 3, + "287": 2, + "288": 1, + "289": 3, + "291": 1, + "292": 3, + "295": 1, + "298": 4, + "299": 2, + "300": 1, + "302": 1, + "303": 1, + "304": 1, + "306": 1, + "308": 1, + "309": 5, + "310": 3, + "311": 1, + "312": 2, + "314": 1, + "315": 4, + "316": 2, + "318": 5, + "319": 4, + "320": 1, + "321": 1, + "322": 1, + "325": 1, + "326": 1, + "327": 3, + "328": 8, + "329": 1, + "330": 2, + "331": 3, + "332": 4, + "333": 4, + "334": 1, + "335": 2, + "336": 2, + "337": 2, + "338": 8, + "339": 9, + "340": 9, + "341": 3, + "342": 7, + "343": 3, + "344": 4, + "345": 4, + "346": 7, + "347": 7, + "348": 8, + "349": 5, + "350": 6, + "351": 8, + "352": 7, + "353": 8, + "354": 7, + "355": 3, + "356": 5, + "357": 7, + "358": 5, + "359": 9, + "360": 6, + "361": 7, + "362": 8, + "363": 5, + "364": 9, + "365": 6, + "366": 9, + "367": 5, + "368": 2, + "369": 3, + "370": 6, + "371": 6, + "372": 2, + "374": 1, + "375": 2, + "376": 5, + "377": 2, + "378": 1, + "379": 1, + "381": 1, + "382": 2, + "384": 2, + "385": 2, + "386": 2, + "387": 4, + "388": 3, + "389": 1, + "390": 1, + "392": 3, + "393": 2, + "394": 3, + "395": 1, + "398": 1, + "403": 1, + "404": 3, + "407": 1, + "408": 1, + "411": 1, + "415": 1, + "416": 3, + "417": 3, + "418": 2, + "419": 9, + "420": 7, + "421": 4, + "422": 4, + "423": 1, + "424": 3, + "425": 1, + "426": 3, + "427": 3, + "428": 2, + "429": 3, + "432": 4, + "434": 4, + "435": 3, + "438": 2, + "442": 1, + "443": 1, + "444": 1, + "450": 2, + "451": 1, + "452": 3, + "453": 1, + "455": 3, + "456": 1, + "457": 2, + "458": 2, + "459": 1, + "460": 1, + "461": 1, + "463": 2, + "464": 1, + "467": 1, + "468": 6, + "469": 2, + "470": 3, + "472": 2, + "473": 4, + "474": 1, + "476": 1, + "478": 1, + "479": 4, + "481": 1, + "482": 1, + "485": 3, + "486": 1, + "487": 1, + "490": 1, + "494": 1, + "495": 2, + "507": 1, + "509": 1, + "510": 2, + "514": 1, + "515": 1, + "518": 1, + "519": 3, + "521": 1, + "522": 1, + "529": 1, + "530": 1, + "535": 1, + "538": 1, + "540": 3, + "541": 1, + "543": 1, + "544": 2, + "546": 1, + "547": 1, + "549": 2, + "553": 1, + "554": 2, + "555": 1, + "556": 2, + "557": 3, + "558": 1, + "561": 1, + "562": 1, + "565": 3, + "566": 1, + "575": 1, + "576": 1, + "577": 1, + "578": 1, + "579": 2, + "580": 1, + "581": 5, + "585": 1, + "586": 2, + "591": 1, + "600": 1, + "604": 1, + "605": 3, + "607": 1, + "609": 1, + "611": 1, + "612": 2, + "614": 1, + "615": 1, + "618": 2, + "620": 4, + "621": 1, + "622": 2, + "625": 2, + "626": 1, + "627": 1, + "630": 2, + "631": 3, + "633": 1, + "636": 1, + "638": 1, + "640": 1, + "643": 1, + "658": 1, + "660": 1, + "663": 1, + "666": 1, + "668": 1, + "678": 1, + "682": 1, + "683": 1, + "685": 1, + "688": 2, + "690": 1, + "693": 2, + "694": 1, + "701": 1, + "702": 2, + "703": 2, + "704": 2, + "706": 1, + "707": 2, + "710": 1, + "730": 1, + "731": 1, + "732": 1, + "735": 3, + "737": 1, + "738": 1, + "739": 1, + "742": 2, + "744": 1, + "745": 1, + "751": 2, + "758": 2, + "760": 2, + "761": 1, + "762": 1, + "763": 4, + "764": 1, + "769": 1, + "803": 1, + "811": 1, + "841": 1, + "847": 1, + "858": 1, + "868": 2, + "871": 1, + "882": 1, + "906": 1, + "909": 1, + "910": 1, + "923": 2, + "925": 1, + "939": 1, + "944": 1, + "948": 1, + "949": 1, + "953": 2, + "955": 1, + "956": 1, + "957": 1, + "970": 1, + "974": 1, + "1004": 1, + "1028": 1, + "1033": 1, + "1043": 1, + "1056": 1, + "1131": 1, + "1155": 1, + "1180": 1, + "1195": 1, + "1208": 1, + "1215": 1, + "1234": 1, + "1241": 1, + "1244": 2, + "1245": 1, + "1247": 1, + "1248": 1, + "1249": 1, + "1259": 1, + "1298": 1, + "1311": 1, + "1314": 1, + "1320": 1, + "1342": 1, + "1560": 1, + "1566": 1, + "1575": 1, + "1585": 1, + "1592": 1, + "1696": 1, + "1713": 1, + "1726": 1, + "1753": 1, + "1761": 1, + "1778": 1, + "1797": 1, + "1812": 1, + "1827": 1, + "1840": 1, + "2051": 1, + "2062": 1, + "2082": 1, + "2097": 1, + "2103": 1, + "2120": 1, + "2121": 1, + "2146": 1, + "2155": 1, + "2189": 1, + "2215": 1, + "2284": 1 + }, + "started": "2020-09-07T18:50:02.636Z", + "trafficStats": { + "incomingCompressionRatio": 0.05270701711751375, + "incomingOctetsAppLevel": 8192837, + "incomingOctetsWebSocketLevel": 431820, + "incomingOctetsWireLevel": 439820, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.018526237784261962, + "outgoingCompressionRatio": 0.056048716702163125, + "outgoingOctetsAppLevel": 8192837, + "outgoingOctetsWebSocketLevel": 459198, + "outgoingOctetsWireLevel": 467294, + "outgoingWebSocketFrames": 2278, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.017630738809838023, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 1278, + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 2, + "3": 2, + "4": 5, + "6": 2, + "7": 2, + "8": 2, + "9": 4, + "10": 5, + "11": 5, + "12": 1, + "13": 3, + "14": 4, + "16": 1, + "17": 2, + "18": 6, + "19": 2, + "20": 4, + "21": 4, + "22": 1, + "23": 11, + "24": 3, + "25": 8, + "26": 6, + "27": 4, + "28": 5, + "29": 4, + "30": 5, + "31": 7, + "32": 5, + "33": 7, + "34": 2, + "35": 3, + "36": 6, + "37": 1, + "38": 2, + "39": 3, + "40": 1, + "41": 5, + "42": 1, + "43": 5, + "44": 3, + "45": 5, + "46": 4, + "47": 2, + "49": 4, + "50": 4, + "51": 2, + "52": 5, + "53": 6, + "54": 5, + "55": 6, + "56": 3, + "57": 1, + "58": 1, + "59": 4, + "60": 3, + "61": 6, + "62": 4, + "63": 7, + "64": 9, + "65": 2, + "66": 7, + "67": 2, + "68": 3, + "69": 4, + "70": 1, + "71": 1, + "72": 1, + "73": 2, + "74": 3, + "75": 2, + "76": 1, + "77": 1, + "78": 3, + "79": 2, + "80": 4, + "81": 1, + "82": 2, + "83": 3, + "84": 1, + "85": 4, + "86": 4, + "87": 4, + "88": 4, + "89": 2, + "90": 5, + "91": 3, + "92": 3, + "93": 8, + "94": 2, + "95": 7, + "96": 4, + "97": 6, + "98": 5, + "99": 3, + "100": 4, + "101": 2, + "102": 6, + "103": 4, + "104": 3, + "105": 9, + "106": 5, + "107": 8, + "108": 12, + "109": 5, + "110": 8, + "111": 10, + "112": 13, + "113": 3, + "114": 6, + "115": 5, + "116": 4, + "117": 7, + "118": 13, + "119": 5, + "120": 3, + "121": 2, + "122": 1, + "123": 3, + "124": 8, + "125": 4, + "126": 3, + "127": 8, + "130": 6, + "132": 3, + "134": 1, + "135": 6, + "136": 3, + "138": 4, + "139": 3, + "140": 2, + "144": 4, + "145": 1, + "147": 1, + "148": 3, + "149": 1, + "150": 4, + "151": 2, + "152": 5, + "154": 1, + "155": 2, + "156": 6, + "157": 9, + "158": 4, + "159": 4, + "160": 3, + "161": 5, + "162": 4, + "163": 2, + "164": 5, + "165": 3, + "166": 4, + "167": 2, + "168": 7, + "169": 7, + "170": 2, + "172": 2, + "173": 2, + "174": 4, + "175": 9, + "176": 2, + "177": 3, + "178": 1, + "179": 4, + "180": 4, + "181": 6, + "182": 10, + "183": 7, + "184": 7, + "185": 2, + "186": 3, + "187": 4, + "188": 6, + "189": 7, + "190": 5, + "191": 2, + "192": 7, + "193": 7, + "194": 6, + "195": 2, + "196": 7, + "197": 2, + "198": 3, + "199": 5, + "200": 4, + "201": 4, + "202": 1, + "203": 5, + "204": 5, + "205": 1, + "206": 2, + "207": 1, + "208": 4, + "209": 5, + "211": 2, + "213": 3, + "214": 3, + "215": 1, + "216": 1, + "217": 3, + "218": 2, + "219": 1, + "220": 3, + "221": 4, + "222": 9, + "223": 6, + "224": 7, + "225": 7, + "226": 3, + "227": 6, + "228": 1, + "229": 1, + "230": 5, + "231": 7, + "232": 3, + "233": 2, + "234": 6, + "235": 5, + "236": 8, + "237": 6, + "238": 4, + "239": 5, + "240": 10, + "241": 4, + "242": 6, + "243": 5, + "244": 9, + "245": 6, + "246": 7, + "247": 9, + "248": 10, + "249": 6, + "250": 6, + "251": 4, + "252": 3, + "253": 3, + "254": 2, + "255": 4, + "257": 3, + "259": 2, + "260": 1278 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333636266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88828e8d94738d65" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "8e8d9473" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_4_12.html b/autobahn/client/tungstenite_case_12_4_12.html new file mode 100644 index 0000000..b5b7a5e --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_12.html @@ -0,0 +1,1116 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.4.12 : Pass - 1596 ms @ 2020-09-07T18:50:03.807Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=367&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 5wd4OCm9+u3azE4YW7INbA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: WlBxcG+nAraLxXEzkPvfX8AQ7a4=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
2722544
2731273
2752550
2762552
2771277
2781278
2841284
2851285
2931293
2951295
2971297
2992598
3071307
3171317
3182636
3191319
3231323
3332666
3351335
3381338
3411341
3481348
3501350
3511351
3521352
35331059
3551355
35731071
3602720
36151805
36251810
36341452
36451820
36562190
36651830
36772569
36862208
36941476
37041480
37141484
3721372
37331119
3742748
3751375
3772754
3781378
3792758
38031140
3812762
3821382
3832766
3961396
4131413
4191419
4321432
4342868
4391439
4401440
4491449
4542908
4551455
4581458
4631463
4671467
4691469
47031410
4711471
4721472
4742948
4791479
4801480
4811481
4851485
4871487
4881488
4892978
4902980
4911491
4931493
49531485
4981498
4991499
5001500
5101510
5111511
5131513
5141514
5151515
51821036
5191519
5211521
5231523
5291529
5331533
5341534
53542140
53621072
53852690
53942156
5401540
54131623
54221084
5431543
54421088
54521090
54621092
54721094
5481548
55131653
5521552
5541554
5561556
55731671
55942236
56063360
56121122
56221124
56421128
56521130
56721134
56821136
5691569
57021140
57152855
5721572
57621152
57731731
5781578
5791579
58021160
58131743
58321166
58442336
5851585
58631758
5881588
58931767
59021180
59163546
59231776
59321186
59421188
59531785
59631788
59863588
59921198
60031800
60184808
6021602
60342412
60431812
60521210
60621212
60731821
608127296
60953045
6101610
61142444
61221224
61321226
61442456
61531845
61621232
61742468
61831854
61931857
62021240
6211621
6221622
62431872
62521250
62653130
62753135
62842512
62921258
63021260
63131893
63242528
6331633
63421268
63521270
6361636
63721274
63863828
63921278
64021280
64131923
64321286
64431932
64621292
64731941
64842592
6501650
65121302
65221304
65321306
6541654
6551655
65631968
65721314
65831974
65921318
66031980
66231986
66421328
66521330
6661666
6671667
6691669
67064020
6711671
67264032
6731673
67432022
67564050
6761676
67732031
67821356
6791679
68021360
68121362
6831683
6841684
68521370
6881688
68921378
69021380
69221384
6931693
69432082
69521390
69621392
6971697
69821396
6991699
7001700
70121402
70232106
70332109
7051705
7061706
70842832
70932127
71032130
71121422
7131713
71421428
71532145
7161716
71742868
71821436
71921438
72021440
7221722
72321446
7241724
72532175
7271727
7291729
73021460
7311731
7321732
7381738
7401740
74121482
7421742
74321486
7441744
7451745
7481748
7501750
7531753
7541754
75721514
7581758
76132283
7621762
7631763
7671767
7681768
7701770
7751775
77821556
7791779
7801780
7821782
7831783
7841784
7971797
7981798
8101810
8111811
81321626
8151815
8161816
8201820
8251825
8261826
8271827
8281828
83821676
8411841
84321686
84432532
8451845
84632538
8501850
85121702
8521852
85332559
85432562
8551855
85643424
8591859
86221724
8841884
8861886
8881888
8941894
8961896
9011901
9031903
9071907
9091909
91021820
9121912
91354565
9141914
9151915
9161916
91721834
9181918
9191919
92032760
9221922
9231923
9241924
92543700
92643704
9281928
93232796
9331933
93721874
93832814
93932817
94032820
94121882
94243768
94321886
94421888
94532835
94821896
94932847
95021900
9511951
95221904
9561956
9571957
9581958
95921918
9601960
96221924
96632898
9671967
97021940
9721972
9741974
9751975
97621952
9771977
9781978
98021960
98132943
98443936
9901990
9941994
99621992
100011000
100122002
100411004
100511005
100611006
100833024
101111011
101411014
101711017
101911019
102311023
102422048
102511025
102911029
103011030
103111031
103522070
103822076
103911039
104011040
104311043
104611046
105011050
105111051
105411054
105811058
106111061
106211062
106311063
106511065
106611066
106711067
106833204
107022140
107211072
107311073
107611076
108111081
108211082
108911089
109311093
109422188
109511095
109611096
110322206
110711107
110911109
111511115
111722234
111911119
112711127
112911129
113011130
113111131
113211132
113411134
113722274
113811138
113933417
114311143
114411144
114511145
114622292
114711147
114811148
115011150
115511155
115911159
116011160
116111161
116811168
117511175
117811178
118311183
118511185
119311193
119522390
119611196
120411204
123111231
123411234
124211242
124311243
125011250
125511255
125611256
125922518
126011260
126111261
126222524
126445056
126811268
127011270
128111281
128811288
129511295
129711297
130111301
130411304
131011310
133711337
134411344
134811348
134911349
135011350
144211442
147411474
147611476
147811478
148311483
149411494
150711507
150811508
151023020
151811518
151911519
152511525
152811528
152911529
153011530
153211532
153423068
153723074
153911539
154011540
154423088
154723094
154911549
155411554
155623112
155711557
158911589
159111591
159611596
159811598
160123202
160411604
160711607
161711617
163011630
163211632
163311633
165011650
165534965
165611656
165723314
165811658
183411834
185011850
186511865
188011880
188211882
190111901
192611926
193511935
197711977
203412034
206312063
207412074
208312083
211312113
214212142
223912239
228412284
232312323
234112341
234412344
236012360
237112371
240912409
244012440
244312443
244412444
244724894
244812448
246312463
246724934
247012470
247112471
248512485
248812488
249212492
249712497
249912499
250537515
250937527
251812518
253025060
253112531
253612536
253712537
254812548
254912549
255312553
255912559
256412564
257112571
260712607
Total1002849497
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
2510
313
428
5315
6318
7214
8216
9436
10330
11444
12224
13339
14114
15115
16232
17468
18236
20240
21363
22366
236138
24372
25375
26252
274108
284112
294116
30390
314124
324128
33266
34134
35270
36136
374148
383114
395195
40280
414164
42142
43286
44288
455225
463138
474188
483144
49149
505250
512102
522104
532106
543162
552110
563168
574228
582116
594236
604240
615305
622124
634252
643192
65165
664264
67167
682136
695345
70170
712142
724288
732146
743222
753225
762152
78178
804320
81181
822164
84184
852170
88188
893267
904360
912182
923276
934372
945470
953285
962192
972194
983294
99199
1003300
1014404
1022204
1033309
1041104
1054420
1064424
1073321
1081108
1106660
1112222
1124448
1136678
1144456
1154460
1164464
1174468
1184472
1195595
1202240
1217847
1227854
1238984
12491116
1255625
1267882
127121524
1303390
1314524
1326792
1333399
1343402
1355675
13691224
1372274
1383414
139111529
14081120
1417987
1425710
1436858
1446864
1455725
1465730
1475735
1481148
1493447
1502300
1511151
1525760
1535765
1541154
15581240
1566936
1575785
1583474
159101590
1605800
1612322
16291458
16391467
16471148
16581320
1662332
16781336
16881344
1695845
170122040
171101710
1721172
1735865
17461044
17571225
17681408
17761062
17881424
17961074
1804720
1815905
18271274
18381464
18461104
1854740
186101860
187101870
188101880
189101890
19081520
19181528
19291728
193132509
194101940
19581560
19671372
19791773
1984792
1995995
2001200
2013603
2034812
20471428
20561230
20681648
2074828
2084832
20971463
21081680
2113633
2124848
21371491
2144856
2153645
2161216
2172434
2184872
2194876
22051100
2214884
2223666
22351115
2241224
2251225
22651130
2273681
22961374
2301230
2314924
2322464
2333699
2344936
2353705
2362472
2373711
2393717
2412482
2423726
2431243
2441244
2452490
2463738
24792223
2483744
2492498
2512502
2523756
2532506
2542508
2563768
2571257
25851290
2593777
2602964770640
Total3966913021
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
02964
11000
81
Total3965
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333637266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88821301ff0410e9
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3133303166663034
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_4_12.json b/autobahn/client/tungstenite_case_12_4_12.json new file mode 100644 index 0000000..5515f04 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_12.json @@ -0,0 +1,963 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 367, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 1596, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=367&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 5wd4OCm9+u3azE4YW7INbA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: WlBxcG+nAraLxXEzkPvfX8AQ7a4=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.4.12", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "272": 2, + "273": 1, + "275": 2, + "276": 2, + "277": 1, + "278": 1, + "284": 1, + "285": 1, + "293": 1, + "295": 1, + "297": 1, + "299": 2, + "307": 1, + "317": 1, + "318": 2, + "319": 1, + "323": 1, + "333": 2, + "335": 1, + "338": 1, + "341": 1, + "348": 1, + "350": 1, + "351": 1, + "352": 1, + "353": 3, + "355": 1, + "357": 3, + "360": 2, + "361": 5, + "362": 5, + "363": 4, + "364": 5, + "365": 6, + "366": 5, + "367": 7, + "368": 6, + "369": 4, + "370": 4, + "371": 4, + "372": 1, + "373": 3, + "374": 2, + "375": 1, + "377": 2, + "378": 1, + "379": 2, + "380": 3, + "381": 2, + "382": 1, + "383": 2, + "396": 1, + "413": 1, + "419": 1, + "432": 1, + "434": 2, + "439": 1, + "440": 1, + "449": 1, + "454": 2, + "455": 1, + "458": 1, + "463": 1, + "467": 1, + "469": 1, + "470": 3, + "471": 1, + "472": 1, + "474": 2, + "479": 1, + "480": 1, + "481": 1, + "485": 1, + "487": 1, + "488": 1, + "489": 2, + "490": 2, + "491": 1, + "493": 1, + "495": 3, + "498": 1, + "499": 1, + "500": 1, + "510": 1, + "511": 1, + "513": 1, + "514": 1, + "515": 1, + "518": 2, + "519": 1, + "521": 1, + "523": 1, + "529": 1, + "533": 1, + "534": 1, + "535": 4, + "536": 2, + "538": 5, + "539": 4, + "540": 1, + "541": 3, + "542": 2, + "543": 1, + "544": 2, + "545": 2, + "546": 2, + "547": 2, + "548": 1, + "551": 3, + "552": 1, + "554": 1, + "556": 1, + "557": 3, + "559": 4, + "560": 6, + "561": 2, + "562": 2, + "564": 2, + "565": 2, + "567": 2, + "568": 2, + "569": 1, + "570": 2, + "571": 5, + "572": 1, + "576": 2, + "577": 3, + "578": 1, + "579": 1, + "580": 2, + "581": 3, + "583": 2, + "584": 4, + "585": 1, + "586": 3, + "588": 1, + "589": 3, + "590": 2, + "591": 6, + "592": 3, + "593": 2, + "594": 2, + "595": 3, + "596": 3, + "598": 6, + "599": 2, + "600": 3, + "601": 8, + "602": 1, + "603": 4, + "604": 3, + "605": 2, + "606": 2, + "607": 3, + "608": 12, + "609": 5, + "610": 1, + "611": 4, + "612": 2, + "613": 2, + "614": 4, + "615": 3, + "616": 2, + "617": 4, + "618": 3, + "619": 3, + "620": 2, + "621": 1, + "622": 1, + "624": 3, + "625": 2, + "626": 5, + "627": 5, + "628": 4, + "629": 2, + "630": 2, + "631": 3, + "632": 4, + "633": 1, + "634": 2, + "635": 2, + "636": 1, + "637": 2, + "638": 6, + "639": 2, + "640": 2, + "641": 3, + "643": 2, + "644": 3, + "646": 2, + "647": 3, + "648": 4, + "650": 1, + "651": 2, + "652": 2, + "653": 2, + "654": 1, + "655": 1, + "656": 3, + "657": 2, + "658": 3, + "659": 2, + "660": 3, + "662": 3, + "664": 2, + "665": 2, + "666": 1, + "667": 1, + "669": 1, + "670": 6, + "671": 1, + "672": 6, + "673": 1, + "674": 3, + "675": 6, + "676": 1, + "677": 3, + "678": 2, + "679": 1, + "680": 2, + "681": 2, + "683": 1, + "684": 1, + "685": 2, + "688": 1, + "689": 2, + "690": 2, + "692": 2, + "693": 1, + "694": 3, + "695": 2, + "696": 2, + "697": 1, + "698": 2, + "699": 1, + "700": 1, + "701": 2, + "702": 3, + "703": 3, + "705": 1, + "706": 1, + "708": 4, + "709": 3, + "710": 3, + "711": 2, + "713": 1, + "714": 2, + "715": 3, + "716": 1, + "717": 4, + "718": 2, + "719": 2, + "720": 2, + "722": 1, + "723": 2, + "724": 1, + "725": 3, + "727": 1, + "729": 1, + "730": 2, + "731": 1, + "732": 1, + "738": 1, + "740": 1, + "741": 2, + "742": 1, + "743": 2, + "744": 1, + "745": 1, + "748": 1, + "750": 1, + "753": 1, + "754": 1, + "757": 2, + "758": 1, + "761": 3, + "762": 1, + "763": 1, + "767": 1, + "768": 1, + "770": 1, + "775": 1, + "778": 2, + "779": 1, + "780": 1, + "782": 1, + "783": 1, + "784": 1, + "797": 1, + "798": 1, + "810": 1, + "811": 1, + "813": 2, + "815": 1, + "816": 1, + "820": 1, + "825": 1, + "826": 1, + "827": 1, + "828": 1, + "838": 2, + "841": 1, + "843": 2, + "844": 3, + "845": 1, + "846": 3, + "850": 1, + "851": 2, + "852": 1, + "853": 3, + "854": 3, + "855": 1, + "856": 4, + "859": 1, + "862": 2, + "884": 1, + "886": 1, + "888": 1, + "894": 1, + "896": 1, + "901": 1, + "903": 1, + "907": 1, + "909": 1, + "910": 2, + "912": 1, + "913": 5, + "914": 1, + "915": 1, + "916": 1, + "917": 2, + "918": 1, + "919": 1, + "920": 3, + "922": 1, + "923": 1, + "924": 1, + "925": 4, + "926": 4, + "928": 1, + "932": 3, + "933": 1, + "937": 2, + "938": 3, + "939": 3, + "940": 3, + "941": 2, + "942": 4, + "943": 2, + "944": 2, + "945": 3, + "948": 2, + "949": 3, + "950": 2, + "951": 1, + "952": 2, + "956": 1, + "957": 1, + "958": 1, + "959": 2, + "960": 1, + "962": 2, + "966": 3, + "967": 1, + "970": 2, + "972": 1, + "974": 1, + "975": 1, + "976": 2, + "977": 1, + "978": 1, + "980": 2, + "981": 3, + "984": 4, + "990": 1, + "994": 1, + "996": 2, + "1000": 1, + "1001": 2, + "1004": 1, + "1005": 1, + "1006": 1, + "1008": 3, + "1011": 1, + "1014": 1, + "1017": 1, + "1019": 1, + "1023": 1, + "1024": 2, + "1025": 1, + "1029": 1, + "1030": 1, + "1031": 1, + "1035": 2, + "1038": 2, + "1039": 1, + "1040": 1, + "1043": 1, + "1046": 1, + "1050": 1, + "1051": 1, + "1054": 1, + "1058": 1, + "1061": 1, + "1062": 1, + "1063": 1, + "1065": 1, + "1066": 1, + "1067": 1, + "1068": 3, + "1070": 2, + "1072": 1, + "1073": 1, + "1076": 1, + "1081": 1, + "1082": 1, + "1089": 1, + "1093": 1, + "1094": 2, + "1095": 1, + "1096": 1, + "1103": 2, + "1107": 1, + "1109": 1, + "1115": 1, + "1117": 2, + "1119": 1, + "1127": 1, + "1129": 1, + "1130": 1, + "1131": 1, + "1132": 1, + "1134": 1, + "1137": 2, + "1138": 1, + "1139": 3, + "1143": 1, + "1144": 1, + "1145": 1, + "1146": 2, + "1147": 1, + "1148": 1, + "1150": 1, + "1155": 1, + "1159": 1, + "1160": 1, + "1161": 1, + "1168": 1, + "1175": 1, + "1178": 1, + "1183": 1, + "1185": 1, + "1193": 1, + "1195": 2, + "1196": 1, + "1204": 1, + "1231": 1, + "1234": 1, + "1242": 1, + "1243": 1, + "1250": 1, + "1255": 1, + "1256": 1, + "1259": 2, + "1260": 1, + "1261": 1, + "1262": 2, + "1264": 4, + "1268": 1, + "1270": 1, + "1281": 1, + "1288": 1, + "1295": 1, + "1297": 1, + "1301": 1, + "1304": 1, + "1310": 1, + "1337": 1, + "1344": 1, + "1348": 1, + "1349": 1, + "1350": 1, + "1442": 1, + "1474": 1, + "1476": 1, + "1478": 1, + "1483": 1, + "1494": 1, + "1507": 1, + "1508": 1, + "1510": 2, + "1518": 1, + "1519": 1, + "1525": 1, + "1528": 1, + "1529": 1, + "1530": 1, + "1532": 1, + "1534": 2, + "1537": 2, + "1539": 1, + "1540": 1, + "1544": 2, + "1547": 2, + "1549": 1, + "1554": 1, + "1556": 2, + "1557": 1, + "1589": 1, + "1591": 1, + "1596": 1, + "1598": 1, + "1601": 2, + "1604": 1, + "1607": 1, + "1617": 1, + "1630": 1, + "1632": 1, + "1633": 1, + "1650": 1, + "1655": 3, + "1656": 1, + "1657": 2, + "1658": 1, + "1834": 1, + "1850": 1, + "1865": 1, + "1880": 1, + "1882": 1, + "1901": 1, + "1926": 1, + "1935": 1, + "1977": 1, + "2034": 1, + "2063": 1, + "2074": 1, + "2083": 1, + "2113": 1, + "2142": 1, + "2239": 1, + "2284": 1, + "2323": 1, + "2341": 1, + "2344": 1, + "2360": 1, + "2371": 1, + "2409": 1, + "2440": 1, + "2443": 1, + "2444": 1, + "2447": 2, + "2448": 1, + "2463": 1, + "2467": 2, + "2470": 1, + "2471": 1, + "2485": 1, + "2488": 1, + "2492": 1, + "2497": 1, + "2499": 1, + "2505": 3, + "2509": 3, + "2518": 1, + "2530": 2, + "2531": 1, + "2536": 1, + "2537": 1, + "2548": 1, + "2549": 1, + "2553": 1, + "2559": 1, + "2564": 1, + "2571": 1, + "2607": 1 + }, + "started": "2020-09-07T18:50:03.807Z", + "trafficStats": { + "incomingCompressionRatio": 0.051339481061322224, + "incomingOctetsAppLevel": 16385674, + "incomingOctetsWebSocketLevel": 841232, + "incomingOctetsWireLevel": 849232, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.009509861726610495, + "outgoingCompressionRatio": 0.05478364820391276, + "outgoingOctetsAppLevel": 16385674, + "outgoingOctetsWebSocketLevel": 897667, + "outgoingOctetsWireLevel": 912765, + "outgoingWebSocketFrames": 3964, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.016819154541717587, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 2964, + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 5, + "3": 1, + "4": 2, + "5": 3, + "6": 3, + "7": 2, + "8": 2, + "9": 4, + "10": 3, + "11": 4, + "12": 2, + "13": 3, + "14": 1, + "15": 1, + "16": 2, + "17": 4, + "18": 2, + "20": 2, + "21": 3, + "22": 3, + "23": 6, + "24": 3, + "25": 3, + "26": 2, + "27": 4, + "28": 4, + "29": 4, + "30": 3, + "31": 4, + "32": 4, + "33": 2, + "34": 1, + "35": 2, + "36": 1, + "37": 4, + "38": 3, + "39": 5, + "40": 2, + "41": 4, + "42": 1, + "43": 2, + "44": 2, + "45": 5, + "46": 3, + "47": 4, + "48": 3, + "49": 1, + "50": 5, + "51": 2, + "52": 2, + "53": 2, + "54": 3, + "55": 2, + "56": 3, + "57": 4, + "58": 2, + "59": 4, + "60": 4, + "61": 5, + "62": 2, + "63": 4, + "64": 3, + "65": 1, + "66": 4, + "67": 1, + "68": 2, + "69": 5, + "70": 1, + "71": 2, + "72": 4, + "73": 2, + "74": 3, + "75": 3, + "76": 2, + "78": 1, + "80": 4, + "81": 1, + "82": 2, + "84": 1, + "85": 2, + "88": 1, + "89": 3, + "90": 4, + "91": 2, + "92": 3, + "93": 4, + "94": 5, + "95": 3, + "96": 2, + "97": 2, + "98": 3, + "99": 1, + "100": 3, + "101": 4, + "102": 2, + "103": 3, + "104": 1, + "105": 4, + "106": 4, + "107": 3, + "108": 1, + "110": 6, + "111": 2, + "112": 4, + "113": 6, + "114": 4, + "115": 4, + "116": 4, + "117": 4, + "118": 4, + "119": 5, + "120": 2, + "121": 7, + "122": 7, + "123": 8, + "124": 9, + "125": 5, + "126": 7, + "127": 12, + "130": 3, + "131": 4, + "132": 6, + "133": 3, + "134": 3, + "135": 5, + "136": 9, + "137": 2, + "138": 3, + "139": 11, + "140": 8, + "141": 7, + "142": 5, + "143": 6, + "144": 6, + "145": 5, + "146": 5, + "147": 5, + "148": 1, + "149": 3, + "150": 2, + "151": 1, + "152": 5, + "153": 5, + "154": 1, + "155": 8, + "156": 6, + "157": 5, + "158": 3, + "159": 10, + "160": 5, + "161": 2, + "162": 9, + "163": 9, + "164": 7, + "165": 8, + "166": 2, + "167": 8, + "168": 8, + "169": 5, + "170": 12, + "171": 10, + "172": 1, + "173": 5, + "174": 6, + "175": 7, + "176": 8, + "177": 6, + "178": 8, + "179": 6, + "180": 4, + "181": 5, + "182": 7, + "183": 8, + "184": 6, + "185": 4, + "186": 10, + "187": 10, + "188": 10, + "189": 10, + "190": 8, + "191": 8, + "192": 9, + "193": 13, + "194": 10, + "195": 8, + "196": 7, + "197": 9, + "198": 4, + "199": 5, + "200": 1, + "201": 3, + "203": 4, + "204": 7, + "205": 6, + "206": 8, + "207": 4, + "208": 4, + "209": 7, + "210": 8, + "211": 3, + "212": 4, + "213": 7, + "214": 4, + "215": 3, + "216": 1, + "217": 2, + "218": 4, + "219": 4, + "220": 5, + "221": 4, + "222": 3, + "223": 5, + "224": 1, + "225": 1, + "226": 5, + "227": 3, + "229": 6, + "230": 1, + "231": 4, + "232": 2, + "233": 3, + "234": 4, + "235": 3, + "236": 2, + "237": 3, + "239": 3, + "241": 2, + "242": 3, + "243": 1, + "244": 1, + "245": 2, + "246": 3, + "247": 9, + "248": 3, + "249": 2, + "251": 2, + "252": 3, + "253": 2, + "254": 2, + "256": 3, + "257": 1, + "258": 5, + "259": 3, + "260": 2964 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333637266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88821301ff0410e9" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "1301ff04" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_4_13.html b/autobahn/client/tungstenite_case_12_4_13.html new file mode 100644 index 0000000..6cf2b1e --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_13.html @@ -0,0 +1,1233 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.4.13 : Pass - 2177 ms @ 2020-09-07T18:50:05.404Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=368&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: d2CEokfg8yu3oUpZgYB5Lw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: I3rE9Blf+FLHGq5Uvmbb4mJMKHw=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
70621412
70721414
7081708
70932127
71032130
71221424
71332139
7141714
71532145
7161716
7211721
7231723
7241724
7521752
7531753
7871787
7991799
8091809
8151815
8171817
8191819
8581858
8701870
8761876
8781878
8791879
88032640
88121762
88221764
8831883
88421768
88532655
8861886
88721774
88921778
8901890
89121782
89321786
8941894
8951895
89621792
89732691
89821796
9001900
9011901
9021902
9041904
9071907
90921818
9101910
9111911
91221824
9131913
9141914
91521830
91932757
9211921
92221844
9241924
92554625
92621852
9281928
9301930
9341934
9381938
9401940
94132823
9431943
94621892
9471947
94843792
94932847
9511951
95232856
9531953
95432862
9561956
9571957
9641964
97221944
97521950
97621952
9771977
97821956
97932937
98021960
9901990
9961996
100011000
100311003
100411004
101011010
101811018
102011020
102211022
102611026
102711027
102911029
103611036
103911039
104122082
104211042
104911049
105211052
105511055
105622112
106411064
106611066
107011070
108311083
108611086
108811088
109511095
110911109
111511115
111922238
112611126
112711127
112811128
113211132
113511135
114311143
114422288
115511155
116011160
116111161
116811168
117022340
117233516
117311173
117611176
117711177
117811178
117911179
118111181
118233546
118311183
118422368
118511185
118611186
118811188
119022380
119111191
119355965
119422388
119511195
119644784
119711197
119811198
119911199
120011200
120111201
120222404
120333609
120411204
120911209
121033630
121122422
121211212
121333639
121444856
121511215
121711217
121922438
122022440
122122442
122311223
122511225
122922458
123033690
123144924
123222464
123311233
123433702
123811238
123911239
124311243
124411244
124711247
124933747
125011250
125111251
125211252
125311253
125422508
125522510
125667536
125856290
125911259
126011260
126122522
126233786
126422528
126533795
126645064
126722534
126833804
126933807
127022540
127211272
127345092
127411274
127522550
127611276
127722554
127833834
127922558
128033840
128133843
128411284
128522570
128633858
128711287
128911289
129211292
129311293
129411294
129611296
129811298
130011300
130111301
130211302
130311303
130611306
130822616
130911309
131011310
131222624
131411314
131622632
131711317
131811318
131933957
132411324
132511325
132722654
132811328
132922658
133133993
133233996
133322666
133411334
133822676
133911339
134011340
134122682
134311343
134511345
134734041
134811348
134911349
135011350
135222704
135311353
135411354
1355810840
135645424
135722714
135822716
135934077
136111361
136222724
136334089
136422728
136522730
136634098
136811368
136911369
137211372
137311373
137911379
138122762
138411384
138511385
139111391
139511395
140022800
140122802
140311403
140622812
140911409
141411414
141711417
142111421
142211422
142811428
143211432
143611436
143711437
143822876
144311443
144457220
144811448
144922898
145111451
145211452
145411454
145611456
145734371
145811458
145911459
146022920
146111461
146211462
146322926
146434392
146522930
147111471
147422948
147634428
147711477
147911479
148122962
148222964
148411484
148511485
148622972
148745948
148822976
148922978
149034470
149134473
149245968
149345972
149457470
149511495
149634488
150023000
150111501
150234506
150311503
150423008
150523010
150646024
150723014
150911509
151046040
151123022
151311513
151411514
151911519
152323046
152511525
152811528
153311533
153611536
153723074
153911539
154211542
154611546
155711557
156111561
156423128
157323146
158111581
159011590
159211592
159311593
159423188
159523190
159723194
159823196
159911599
160023200
160511605
161011610
161111611
161311613
161411614
161623232
161711617
162023240
162211622
163111631
164411644
164511645
167311673
169611696
170311703
171011710
171711717
173711737
173911739
174011740
174611746
174911749
177811778
179311793
179411794
180611806
180711807
181323626
181411814
181523630
181611816
181911819
182023640
182323646
182611826
182711827
182911829
183023660
183111831
183311833
183411834
183511835
183735511
184111841
185111851
185311853
186311863
186411864
186611866
187311873
188111881
188311883
188511885
195411954
198111981
199011990
199111991
199611996
201112011
201324026
201612016
201712017
201924038
202112021
202212022
202424048
202624052
202712027
203312033
204124082
204212042
204312043
204624092
204712047
205012050
205224104
205436162
205736171
205948236
206112061
206224124
206312063
206412064
206512065
206712067
206912069
207012070
207212072
207312073
207412074
207736231
207812078
208012080
208312083
208412084
208912089
209024180
209112091
209512095
210024200
210324206
210412104
210512105
210612106
210712107
210812108
211012110
211112111
211212112
211612116
211712117
211812118
211912119
212312123
212424248
212512125
212612126
212724254
212812128
212912129
213224264
213312133
213512135
213612136
213812138
214112141
214212142
214312143
214424288
214524290
214612146
214812148
214924298
215024300
215112151
215248608
215312153
215412154
215512155
215712157
215812158
215912159
216036480
217312173
217412174
217812178
217912179
218012180
218112181
218212182
220212202
220324406
220512205
220712207
221112211
221612216
221912219
222112221
222324446
222724454
223112231
223712237
224512245
225612256
225812258
227512275
228112281
228512285
231612316
233312333
233812338
234912349
235112351
235312353
235424708
235924718
237612376
242112421
242612426
243012430
243112431
243212432
244312443
245712457
246612466
246712467
246912469
247024940
247712477
248012480
248812488
250312503
250412504
252212522
252512525
253112531
253412534
253912539
254312543
255912559
256712567
257012570
257712577
258912589
260112601
261812618
262825256
262912629
264012640
264225284
265112651
265725314
266025320
266912669
267012670
268025360
268112681
268338049
268412684
268512685
268612686
268712687
268912689
269012690
269112691
269212692
269312693
269612696
270412704
274612746
276412764
278712787
282612826
282812828
285125702
2852411408
285325706
285412854
285512855
285712857
285812858
286412864
286625732
286712867
286912869
287012870
287112871
287212872
287512875
288012880
289412894
290412904
291012910
291225824
291312913
2915411660
292225844
292712927
293112931
293312933
293412934
293812938
294525890
295912959
296112961
296612966
297012970
297112971
297612976
297712977
298212982
298312983
299625992
300013000
300113001
300613006
301113011
301213012
301813018
302613026
303013030
305913059
306413064
306513065
309513095
309613096
309726194
310513105
312326246
312513125
313013130
314713147
315213152
315326306
316613166
316713167
317613176
318013180
318313183
318513185
322113221
322413224
322513225
322913229
323313233
324113241
324213242
324313243
324513245
324926498
325013250
327213272
328013280
328613286
328813288
329213292
330713307
331013310
331213312
333413334
Total10021679074
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
236
3412
41040
5420
616
7321
8324
9218
10550
11222
12224
13339
14114
15230
16232
17468
18236
205100
217147
227154
23492
24248
25125
266156
277189
284112
295145
30390
317217
324128
33399
347238
356210
36272
373111
383114
396234
405200
41141
428336
43286
444176
453135
464184
474188
48296
493147
504200
516306
526312
536318
544216
552110
563168
57157
587406
595295
602120
614244
627434
636378
645320
653195
665330
675335
68168
69169
703210
71171
725360
733219
746444
758600
762152
777539
788624
796474
803240
819729
828656
834332
845420
853255
865430
876522
892178
903270
914364
922184
936558
946564
956570
967672
975485
986588
995495
1006600
1013303
1027714
1033309
1044416
1053315
1064424
1072214
1087756
1096654
1104440
1116666
112111232
1133339
1146684
1158920
116151740
117101170
1185590
1192238
1204480
121121452
1225610
1235615
1247868
1253375
1264504
1273381
1304520
1314524
1327924
1335665
1345670
1355675
1363408
1372274
1386828
13981112
1406840
1413423
1422284
1436858
1443432
1454580
1462292
1472294
1483444
1496894
1502300
1513453
1522304
1533459
1541154
1555775
1565780
1573471
1583474
1595795
1605800
1622324
1636978
1645820
1654660
1664664
16771169
1682336
1693507
17161026
17261032
17361038
17461044
1751175
17681408
1772354
1782356
1793537
1802360
1811181
18271274
1833549
1843552
1853555
1863558
1874748
1882376
1893567
1901190
1912382
1925960
1933579
1941194
1952390
1962392
1974788
1984792
1995995
2003600
2012402
2024808
20351015
2042408
2053615
2061206
2071207
2084832
2093627
2101210
2112422
2121212
2133639
2142428
2151215
2161216
2172434
21861308
21951095
2203660
2213663
22251110
2234892
2243672
2254900
2264904
2274908
22861368
23061380
2312462
23271624
2331233
2344936
2352470
2364944
2371237
2382476
2392478
24051200
2414964
2422484
2432486
2443732
2452490
2463738
2474988
2481248
2493747
25041000
2512502
25261512
2532506
25441016
2551255
2563768
25741028
2583774
2593777
26065071691820
Total75091814594
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
06507
11000
81
Total7508
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333638266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882b14b8fc6b2a3
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6231346238666336
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_4_13.json b/autobahn/client/tungstenite_case_12_4_13.json new file mode 100644 index 0000000..218ae38 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_13.json @@ -0,0 +1,1080 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 368, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 2177, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=368&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: d2CEokfg8yu3oUpZgYB5Lw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: I3rE9Blf+FLHGq5Uvmbb4mJMKHw=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.4.13", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "706": 2, + "707": 2, + "708": 1, + "709": 3, + "710": 3, + "712": 2, + "713": 3, + "714": 1, + "715": 3, + "716": 1, + "721": 1, + "723": 1, + "724": 1, + "752": 1, + "753": 1, + "787": 1, + "799": 1, + "809": 1, + "815": 1, + "817": 1, + "819": 1, + "858": 1, + "870": 1, + "876": 1, + "878": 1, + "879": 1, + "880": 3, + "881": 2, + "882": 2, + "883": 1, + "884": 2, + "885": 3, + "886": 1, + "887": 2, + "889": 2, + "890": 1, + "891": 2, + "893": 2, + "894": 1, + "895": 1, + "896": 2, + "897": 3, + "898": 2, + "900": 1, + "901": 1, + "902": 1, + "904": 1, + "907": 1, + "909": 2, + "910": 1, + "911": 1, + "912": 2, + "913": 1, + "914": 1, + "915": 2, + "919": 3, + "921": 1, + "922": 2, + "924": 1, + "925": 5, + "926": 2, + "928": 1, + "930": 1, + "934": 1, + "938": 1, + "940": 1, + "941": 3, + "943": 1, + "946": 2, + "947": 1, + "948": 4, + "949": 3, + "951": 1, + "952": 3, + "953": 1, + "954": 3, + "956": 1, + "957": 1, + "964": 1, + "972": 2, + "975": 2, + "976": 2, + "977": 1, + "978": 2, + "979": 3, + "980": 2, + "990": 1, + "996": 1, + "1000": 1, + "1003": 1, + "1004": 1, + "1010": 1, + "1018": 1, + "1020": 1, + "1022": 1, + "1026": 1, + "1027": 1, + "1029": 1, + "1036": 1, + "1039": 1, + "1041": 2, + "1042": 1, + "1049": 1, + "1052": 1, + "1055": 1, + "1056": 2, + "1064": 1, + "1066": 1, + "1070": 1, + "1083": 1, + "1086": 1, + "1088": 1, + "1095": 1, + "1109": 1, + "1115": 1, + "1119": 2, + "1126": 1, + "1127": 1, + "1128": 1, + "1132": 1, + "1135": 1, + "1143": 1, + "1144": 2, + "1155": 1, + "1160": 1, + "1161": 1, + "1168": 1, + "1170": 2, + "1172": 3, + "1173": 1, + "1176": 1, + "1177": 1, + "1178": 1, + "1179": 1, + "1181": 1, + "1182": 3, + "1183": 1, + "1184": 2, + "1185": 1, + "1186": 1, + "1188": 1, + "1190": 2, + "1191": 1, + "1193": 5, + "1194": 2, + "1195": 1, + "1196": 4, + "1197": 1, + "1198": 1, + "1199": 1, + "1200": 1, + "1201": 1, + "1202": 2, + "1203": 3, + "1204": 1, + "1209": 1, + "1210": 3, + "1211": 2, + "1212": 1, + "1213": 3, + "1214": 4, + "1215": 1, + "1217": 1, + "1219": 2, + "1220": 2, + "1221": 2, + "1223": 1, + "1225": 1, + "1229": 2, + "1230": 3, + "1231": 4, + "1232": 2, + "1233": 1, + "1234": 3, + "1238": 1, + "1239": 1, + "1243": 1, + "1244": 1, + "1247": 1, + "1249": 3, + "1250": 1, + "1251": 1, + "1252": 1, + "1253": 1, + "1254": 2, + "1255": 2, + "1256": 6, + "1258": 5, + "1259": 1, + "1260": 1, + "1261": 2, + "1262": 3, + "1264": 2, + "1265": 3, + "1266": 4, + "1267": 2, + "1268": 3, + "1269": 3, + "1270": 2, + "1272": 1, + "1273": 4, + "1274": 1, + "1275": 2, + "1276": 1, + "1277": 2, + "1278": 3, + "1279": 2, + "1280": 3, + "1281": 3, + "1284": 1, + "1285": 2, + "1286": 3, + "1287": 1, + "1289": 1, + "1292": 1, + "1293": 1, + "1294": 1, + "1296": 1, + "1298": 1, + "1300": 1, + "1301": 1, + "1302": 1, + "1303": 1, + "1306": 1, + "1308": 2, + "1309": 1, + "1310": 1, + "1312": 2, + "1314": 1, + "1316": 2, + "1317": 1, + "1318": 1, + "1319": 3, + "1324": 1, + "1325": 1, + "1327": 2, + "1328": 1, + "1329": 2, + "1331": 3, + "1332": 3, + "1333": 2, + "1334": 1, + "1338": 2, + "1339": 1, + "1340": 1, + "1341": 2, + "1343": 1, + "1345": 1, + "1347": 3, + "1348": 1, + "1349": 1, + "1350": 1, + "1352": 2, + "1353": 1, + "1354": 1, + "1355": 8, + "1356": 4, + "1357": 2, + "1358": 2, + "1359": 3, + "1361": 1, + "1362": 2, + "1363": 3, + "1364": 2, + "1365": 2, + "1366": 3, + "1368": 1, + "1369": 1, + "1372": 1, + "1373": 1, + "1379": 1, + "1381": 2, + "1384": 1, + "1385": 1, + "1391": 1, + "1395": 1, + "1400": 2, + "1401": 2, + "1403": 1, + "1406": 2, + "1409": 1, + "1414": 1, + "1417": 1, + "1421": 1, + "1422": 1, + "1428": 1, + "1432": 1, + "1436": 1, + "1437": 1, + "1438": 2, + "1443": 1, + "1444": 5, + "1448": 1, + "1449": 2, + "1451": 1, + "1452": 1, + "1454": 1, + "1456": 1, + "1457": 3, + "1458": 1, + "1459": 1, + "1460": 2, + "1461": 1, + "1462": 1, + "1463": 2, + "1464": 3, + "1465": 2, + "1471": 1, + "1474": 2, + "1476": 3, + "1477": 1, + "1479": 1, + "1481": 2, + "1482": 2, + "1484": 1, + "1485": 1, + "1486": 2, + "1487": 4, + "1488": 2, + "1489": 2, + "1490": 3, + "1491": 3, + "1492": 4, + "1493": 4, + "1494": 5, + "1495": 1, + "1496": 3, + "1500": 2, + "1501": 1, + "1502": 3, + "1503": 1, + "1504": 2, + "1505": 2, + "1506": 4, + "1507": 2, + "1509": 1, + "1510": 4, + "1511": 2, + "1513": 1, + "1514": 1, + "1519": 1, + "1523": 2, + "1525": 1, + "1528": 1, + "1533": 1, + "1536": 1, + "1537": 2, + "1539": 1, + "1542": 1, + "1546": 1, + "1557": 1, + "1561": 1, + "1564": 2, + "1573": 2, + "1581": 1, + "1590": 1, + "1592": 1, + "1593": 1, + "1594": 2, + "1595": 2, + "1597": 2, + "1598": 2, + "1599": 1, + "1600": 2, + "1605": 1, + "1610": 1, + "1611": 1, + "1613": 1, + "1614": 1, + "1616": 2, + "1617": 1, + "1620": 2, + "1622": 1, + "1631": 1, + "1644": 1, + "1645": 1, + "1673": 1, + "1696": 1, + "1703": 1, + "1710": 1, + "1717": 1, + "1737": 1, + "1739": 1, + "1740": 1, + "1746": 1, + "1749": 1, + "1778": 1, + "1793": 1, + "1794": 1, + "1806": 1, + "1807": 1, + "1813": 2, + "1814": 1, + "1815": 2, + "1816": 1, + "1819": 1, + "1820": 2, + "1823": 2, + "1826": 1, + "1827": 1, + "1829": 1, + "1830": 2, + "1831": 1, + "1833": 1, + "1834": 1, + "1835": 1, + "1837": 3, + "1841": 1, + "1851": 1, + "1853": 1, + "1863": 1, + "1864": 1, + "1866": 1, + "1873": 1, + "1881": 1, + "1883": 1, + "1885": 1, + "1954": 1, + "1981": 1, + "1990": 1, + "1991": 1, + "1996": 1, + "2011": 1, + "2013": 2, + "2016": 1, + "2017": 1, + "2019": 2, + "2021": 1, + "2022": 1, + "2024": 2, + "2026": 2, + "2027": 1, + "2033": 1, + "2041": 2, + "2042": 1, + "2043": 1, + "2046": 2, + "2047": 1, + "2050": 1, + "2052": 2, + "2054": 3, + "2057": 3, + "2059": 4, + "2061": 1, + "2062": 2, + "2063": 1, + "2064": 1, + "2065": 1, + "2067": 1, + "2069": 1, + "2070": 1, + "2072": 1, + "2073": 1, + "2074": 1, + "2077": 3, + "2078": 1, + "2080": 1, + "2083": 1, + "2084": 1, + "2089": 1, + "2090": 2, + "2091": 1, + "2095": 1, + "2100": 2, + "2103": 2, + "2104": 1, + "2105": 1, + "2106": 1, + "2107": 1, + "2108": 1, + "2110": 1, + "2111": 1, + "2112": 1, + "2116": 1, + "2117": 1, + "2118": 1, + "2119": 1, + "2123": 1, + "2124": 2, + "2125": 1, + "2126": 1, + "2127": 2, + "2128": 1, + "2129": 1, + "2132": 2, + "2133": 1, + "2135": 1, + "2136": 1, + "2138": 1, + "2141": 1, + "2142": 1, + "2143": 1, + "2144": 2, + "2145": 2, + "2146": 1, + "2148": 1, + "2149": 2, + "2150": 2, + "2151": 1, + "2152": 4, + "2153": 1, + "2154": 1, + "2155": 1, + "2157": 1, + "2158": 1, + "2159": 1, + "2160": 3, + "2173": 1, + "2174": 1, + "2178": 1, + "2179": 1, + "2180": 1, + "2181": 1, + "2182": 1, + "2202": 1, + "2203": 2, + "2205": 1, + "2207": 1, + "2211": 1, + "2216": 1, + "2219": 1, + "2221": 1, + "2223": 2, + "2227": 2, + "2231": 1, + "2237": 1, + "2245": 1, + "2256": 1, + "2258": 1, + "2275": 1, + "2281": 1, + "2285": 1, + "2316": 1, + "2333": 1, + "2338": 1, + "2349": 1, + "2351": 1, + "2353": 1, + "2354": 2, + "2359": 2, + "2376": 1, + "2421": 1, + "2426": 1, + "2430": 1, + "2431": 1, + "2432": 1, + "2443": 1, + "2457": 1, + "2466": 1, + "2467": 1, + "2469": 1, + "2470": 2, + "2477": 1, + "2480": 1, + "2488": 1, + "2503": 1, + "2504": 1, + "2522": 1, + "2525": 1, + "2531": 1, + "2534": 1, + "2539": 1, + "2543": 1, + "2559": 1, + "2567": 1, + "2570": 1, + "2577": 1, + "2589": 1, + "2601": 1, + "2618": 1, + "2628": 2, + "2629": 1, + "2640": 1, + "2642": 2, + "2651": 1, + "2657": 2, + "2660": 2, + "2669": 1, + "2670": 1, + "2680": 2, + "2681": 1, + "2683": 3, + "2684": 1, + "2685": 1, + "2686": 1, + "2687": 1, + "2689": 1, + "2690": 1, + "2691": 1, + "2692": 1, + "2693": 1, + "2696": 1, + "2704": 1, + "2746": 1, + "2764": 1, + "2787": 1, + "2826": 1, + "2828": 1, + "2851": 2, + "2852": 4, + "2853": 2, + "2854": 1, + "2855": 1, + "2857": 1, + "2858": 1, + "2864": 1, + "2866": 2, + "2867": 1, + "2869": 1, + "2870": 1, + "2871": 1, + "2872": 1, + "2875": 1, + "2880": 1, + "2894": 1, + "2904": 1, + "2910": 1, + "2912": 2, + "2913": 1, + "2915": 4, + "2922": 2, + "2927": 1, + "2931": 1, + "2933": 1, + "2934": 1, + "2938": 1, + "2945": 2, + "2959": 1, + "2961": 1, + "2966": 1, + "2970": 1, + "2971": 1, + "2976": 1, + "2977": 1, + "2982": 1, + "2983": 1, + "2996": 2, + "3000": 1, + "3001": 1, + "3006": 1, + "3011": 1, + "3012": 1, + "3018": 1, + "3026": 1, + "3030": 1, + "3059": 1, + "3064": 1, + "3065": 1, + "3095": 1, + "3096": 1, + "3097": 2, + "3105": 1, + "3123": 2, + "3125": 1, + "3130": 1, + "3147": 1, + "3152": 1, + "3153": 2, + "3166": 1, + "3167": 1, + "3176": 1, + "3180": 1, + "3183": 1, + "3185": 1, + "3221": 1, + "3224": 1, + "3225": 1, + "3229": 1, + "3233": 1, + "3241": 1, + "3242": 1, + "3243": 1, + "3245": 1, + "3249": 2, + "3250": 1, + "3272": 1, + "3280": 1, + "3286": 1, + "3288": 1, + "3292": 1, + "3307": 1, + "3310": 1, + "3312": 1, + "3334": 1 + }, + "started": "2020-09-07T18:50:05.404Z", + "trafficStats": { + "incomingCompressionRatio": 0.050983835025644964, + "incomingOctetsAppLevel": 32771348, + "incomingOctetsWebSocketLevel": 1670809, + "incomingOctetsWireLevel": 1678809, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.004788099657112213, + "outgoingCompressionRatio": 0.054481738132956876, + "outgoingOctetsAppLevel": 32771348, + "outgoingOctetsWebSocketLevel": 1785440, + "outgoingOctetsWireLevel": 1814338, + "outgoingWebSocketFrames": 7507, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.016185366072228695, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 6507, + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 3, + "3": 4, + "4": 10, + "5": 4, + "6": 1, + "7": 3, + "8": 3, + "9": 2, + "10": 5, + "11": 2, + "12": 2, + "13": 3, + "14": 1, + "15": 2, + "16": 2, + "17": 4, + "18": 2, + "20": 5, + "21": 7, + "22": 7, + "23": 4, + "24": 2, + "25": 1, + "26": 6, + "27": 7, + "28": 4, + "29": 5, + "30": 3, + "31": 7, + "32": 4, + "33": 3, + "34": 7, + "35": 6, + "36": 2, + "37": 3, + "38": 3, + "39": 6, + "40": 5, + "41": 1, + "42": 8, + "43": 2, + "44": 4, + "45": 3, + "46": 4, + "47": 4, + "48": 2, + "49": 3, + "50": 4, + "51": 6, + "52": 6, + "53": 6, + "54": 4, + "55": 2, + "56": 3, + "57": 1, + "58": 7, + "59": 5, + "60": 2, + "61": 4, + "62": 7, + "63": 6, + "64": 5, + "65": 3, + "66": 5, + "67": 5, + "68": 1, + "69": 1, + "70": 3, + "71": 1, + "72": 5, + "73": 3, + "74": 6, + "75": 8, + "76": 2, + "77": 7, + "78": 8, + "79": 6, + "80": 3, + "81": 9, + "82": 8, + "83": 4, + "84": 5, + "85": 3, + "86": 5, + "87": 6, + "89": 2, + "90": 3, + "91": 4, + "92": 2, + "93": 6, + "94": 6, + "95": 6, + "96": 7, + "97": 5, + "98": 6, + "99": 5, + "100": 6, + "101": 3, + "102": 7, + "103": 3, + "104": 4, + "105": 3, + "106": 4, + "107": 2, + "108": 7, + "109": 6, + "110": 4, + "111": 6, + "112": 11, + "113": 3, + "114": 6, + "115": 8, + "116": 15, + "117": 10, + "118": 5, + "119": 2, + "120": 4, + "121": 12, + "122": 5, + "123": 5, + "124": 7, + "125": 3, + "126": 4, + "127": 3, + "130": 4, + "131": 4, + "132": 7, + "133": 5, + "134": 5, + "135": 5, + "136": 3, + "137": 2, + "138": 6, + "139": 8, + "140": 6, + "141": 3, + "142": 2, + "143": 6, + "144": 3, + "145": 4, + "146": 2, + "147": 2, + "148": 3, + "149": 6, + "150": 2, + "151": 3, + "152": 2, + "153": 3, + "154": 1, + "155": 5, + "156": 5, + "157": 3, + "158": 3, + "159": 5, + "160": 5, + "162": 2, + "163": 6, + "164": 5, + "165": 4, + "166": 4, + "167": 7, + "168": 2, + "169": 3, + "171": 6, + "172": 6, + "173": 6, + "174": 6, + "175": 1, + "176": 8, + "177": 2, + "178": 2, + "179": 3, + "180": 2, + "181": 1, + "182": 7, + "183": 3, + "184": 3, + "185": 3, + "186": 3, + "187": 4, + "188": 2, + "189": 3, + "190": 1, + "191": 2, + "192": 5, + "193": 3, + "194": 1, + "195": 2, + "196": 2, + "197": 4, + "198": 4, + "199": 5, + "200": 3, + "201": 2, + "202": 4, + "203": 5, + "204": 2, + "205": 3, + "206": 1, + "207": 1, + "208": 4, + "209": 3, + "210": 1, + "211": 2, + "212": 1, + "213": 3, + "214": 2, + "215": 1, + "216": 1, + "217": 2, + "218": 6, + "219": 5, + "220": 3, + "221": 3, + "222": 5, + "223": 4, + "224": 3, + "225": 4, + "226": 4, + "227": 4, + "228": 6, + "230": 6, + "231": 2, + "232": 7, + "233": 1, + "234": 4, + "235": 2, + "236": 4, + "237": 1, + "238": 2, + "239": 2, + "240": 5, + "241": 4, + "242": 2, + "243": 2, + "244": 3, + "245": 2, + "246": 3, + "247": 4, + "248": 1, + "249": 3, + "250": 4, + "251": 2, + "252": 6, + "253": 2, + "254": 4, + "255": 1, + "256": 3, + "257": 4, + "258": 3, + "259": 3, + "260": 6507 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333638266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882b14b8fc6b2a3" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "b14b8fc6" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_4_14.html b/autobahn/client/tungstenite_case_12_4_14.html new file mode 100644 index 0000000..190900c --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_14.html @@ -0,0 +1,1157 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.4.14 : Pass - 3955 ms @ 2020-09-07T18:50:07.581Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=369&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Qs9pSY1yFAIjyB42b0gkLg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: +ddBB11AbSKi5Ce6sz6/SzHGjhs=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
223012230
223424468
224824496
225024500
225312253
225412254
225512255
225624512
225824516
225912259
226024520
226212262
226336789
226449056
226549060
226849072
227112271
227212272
227512275
227712277
227836834
228012280
228136843
228212282
228424568
228624572
228824576
229012290
229212292
229312293
229512295
231712317
231812318
231912319
232212322
232324646
233324666
233824676
234012340
234312343
234424688
234912349
235024700
235524710
235837074
236012360
236212362
236812368
236924738
237124742
237337119
237537125
237624752
237912379
238212382
238424768
238537155
238612386
238812388
238912389
239012390
239112391
239412394
239812398
240012400
240312403
240412404
240824816
241012410
241112411
241212412
241412414
241524830
241612416
241712417
241824836
2419512095
242037260
242124842
242212422
2424512120
242749708
243124862
243224864
243324866
243624872
243712437
243824876
243924878
244137323
244324886
244512445
244612446
244812448
244912449
245012450
245112451
245224904
245337359
245412454
245812458
246212462
246312463
246424928
246624932
246724934
246812468
247049880
247212472
247312473
247712477
247824956
247912479
248312483
248537455
248812488
248912489
249024980
249149964
249237476
249324986
249412494
2495512475
249624992
249812498
250012500
250137503
250725014
250812508
250925018
251037530
251112511
251337539
251412514
251525030
251637548
251812518
252525050
252612526
252712527
253337599
2534410136
253512535
253637608
253712537
253925078
254225084
254312543
254412544
254537635
254612546
2549512745
255012550
255337659
255437662
255537665
255612556
255925118
256312563
257212572
258325166
259312593
259412594
260912609
264012640
264112641
264412644
264512645
266725334
267412674
267725354
267812678
268212682
268412684
268512685
269312693
269625392
269725394
269812698
270212702
270312703
270612706
270712707
271025420
271112711
271412714
272412724
272825456
273212732
273312733
274112741
274212742
275712757
276012760
276612766
277012770
277112771
277225544
277412774
277512775
278125562
278512785
278838364
278912789
279512795
279738391
281538445
281812818
282112821
282212822
282412824
282812828
283012830
283125662
283312833
283812838
284025680
284225684
284338529
284712847
284912849
285012850
285312853
285412854
285525710
285712857
286512865
287512875
287712877
2879411516
288212882
288525770
288712887
288912889
289012890
289138673
289438682
290125802
296012960
296212962
296512965
296612966
296725934
298412984
298612986
299625992
299825996
299912999
300313003
300526010
300613006
301213012
303113031
303413034
303726074
303813038
303913039
304213042
304313043
304526090
304813048
305026100
306126122
306613066
306813068
307013070
307126142
307213072
307313073
307513075
3076515380
307726154
308013080
308126162
308239246
308339249
308426168
308613086
309026180
3091412364
309213092
309326186
309713097
311413114
311513115
312026240
313113131
315313153
315613156
315913159
316313163
317013170
317513175
317813178
317913179
318013180
318413184
319826396
320513205
320713207
323413234
323613236
323813238
324013240
324313243
324726494
325026500
326713267
327313273
330113301
330613306
331913319
332613326
332713327
333126662
333413334
340313403
340826816
340913409
343613436
344113441
344513445
344626892
345013450
346113461
346213462
347913479
348126962
348313483
348626972
348713487
348813488
348913489
349113491
350013500
350113501
3504310512
350513505
350627012
351527030
352327046
352513525
352713527
352827056
352927058
353027060
353727074
3538414152
353913539
354027080
354127082
354227084
354327086
354413544
354527090
354713547
354813548
357713577
358313583
358513585
358713587
3588310764
359013590
359113591
3593310779
359413594
360427208
360813608
361613616
3618310854
363127262
364413644
367213672
367813678
368213682
368413684
368513685
369327386
369513695
3696518480
369827396
370213702
370313703
370713707
371113711
371927438
372613726
3742726194
3744311232
375213752
375413754
382413824
383013830
383213832
383513835
384113841
384713847
385013850
390713907
391213912
391613916
395527910
395613956
395713957
396713967
397013970
397213972
397313973
397713977
398027960
399127982
400228004
402114021
403714037
403814038
405214052
405314053
406114061
406414064
406728134
4074312222
407728154
4078312234
4079312237
4080624480
408214082
408314083
408528170
408628172
408714087
408814088
408928178
409014090
4091520455
409214092
409314093
409914099
410028200
410214102
4104312312
410528210
410628212
410714107
410928218
411114111
411214112
411328226
411428228
411514115
411614116
411728234
4118312354
411914119
412014120
412114121
412314123
4126312378
4127312381
412828256
412928258
413514135
413614136
413914139
414028280
414228284
4143416572
414414144
414614146
414714147
4149312447
4150416600
415114151
4152416608
415628312
416628332
416928338
417028340
417914179
4181416724
418228364
418628372
4187416748
419514195
419728394
420114201
420328406
420628412
420728414
420928418
421014210
421814218
422128442
423014230
423314233
423628472
423928478
424128482
4242416968
424514245
424614246
424914249
425014250
425528510
425814258
425914259
426314263
4264312792
4265625590
426614266
426828536
426914269
427014270
427128542
4272834176
427314273
4274312822
4275312825
427614276
4277417108
427914279
428114281
428228564
428314283
428828576
428928578
429128582
4294312882
429528590
4296312888
429814298
430028600
430214302
430428608
430614306
430714307
431228624
431714317
431914319
432014320
433014330
4335417340
434314343
435514355
435614356
436128722
436414364
436614366
437828756
438414384
438714387
439014390
439214392
439414394
439828796
440428808
440714407
440914409
441428828
441614416
441928838
442714427
443514435
443614436
444028880
4444417776
444828896
445028900
445528910
445714457
445914459
446014460
446114461
446428928
446728934
446914469
447214472
447314473
447528950
447914479
448028960
448228964
448328966
449014490
449614496
449814498
449914499
4500313500
4504313512
450629012
450814508
450914509
451029020
451329026
451514515
4516313548
451714517
451914519
452114521
4522313566
4524313572
452514525
455429108
4558313674
455914559
456014560
456514565
458929178
459229184
459529190
460414604
460514605
460714607
461529230
465514655
Total10023367746
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
224
313
4624
5525
6318
7321
8216
9436
10550
11555
12112
13113
14456
15460
16348
186108
1910190
20360
21121
22122
235115
24248
25250
266156
27254
284112
294116
30390
31262
326192
3313429
346204
354140
36272
374148
386228
395195
40280
413123
428336
434172
4410440
454180
465230
4712564
483144
495245
504200
5110510
525260
537371
543162
553165
563168
575285
587406
5915885
603180
615305
623186
638504
645320
653195
669594
673201
6811748
693207
706420
71171
727504
739657
742148
753225
769684
778616
783234
798632
803240
826492
837581
846504
85121020
865430
875435
883264
899801
903270
913273
927644
932186
942188
954380
96196
97197
99199
1022204
1031103
1042208
1054420
1064424
1072214
1085540
1092218
1107770
1117777
1123336
1133339
114101140
1157805
1166696
1175585
1186708
1191119
1203360
1215605
1221122
1231123
1243372
1252250
1261126
1271127
1304520
1311131
132101320
1331133
1342268
1352270
1362272
1374548
1381138
1393417
1407980
1415705
1423426
1432286
1445720
1455725
1461146
1473441
1486888
1495745
1505750
1514604
1522304
15391377
1544616
15681248
1571157
1581158
1596954
1605800
1613483
1624648
1634652
1645820
1653495
1666996
1675835
1682336
1691169
1702340
1712342
1721172
1732346
1742348
1755875
1761176
1775885
1782356
1794716
1802360
18161086
1825910
1833549
18461104
1854740
1865930
1871187
1882376
18981512
1904760
1914764
1925960
1945970
1953585
1962392
1973591
1982396
199101990
20061200
2013603
2024808
2033609
20471428
20561230
20651030
20751035
20851040
20981672
21051050
2111211
21261272
21391917
2144856
2152430
2172434
2194876
2202440
22151105
2221222
22361338
2242448
2252450
2264904
2273681
2282456
2291229
2301230
23261392
2332466
2343702
2353705
2363708
23761422
23881904
2392478
2401240
2421242
2434972
2441244
2454980
24671722
2473741
2482496
2491249
2501250
2513753
25271764
2532506
2543762
2552510
2563768
25741028
2581258
2592518
260135593525340
Total145613647024
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
013559
11000
81
Total14560
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333639266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882a706ec94a4ee
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6137303665633934
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_4_14.json b/autobahn/client/tungstenite_case_12_4_14.json new file mode 100644 index 0000000..99eb363 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_14.json @@ -0,0 +1,1004 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 369, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 3955, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=369&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Qs9pSY1yFAIjyB42b0gkLg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: +ddBB11AbSKi5Ce6sz6/SzHGjhs=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.4.14", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "2230": 1, + "2234": 2, + "2248": 2, + "2250": 2, + "2253": 1, + "2254": 1, + "2255": 1, + "2256": 2, + "2258": 2, + "2259": 1, + "2260": 2, + "2262": 1, + "2263": 3, + "2264": 4, + "2265": 4, + "2268": 4, + "2271": 1, + "2272": 1, + "2275": 1, + "2277": 1, + "2278": 3, + "2280": 1, + "2281": 3, + "2282": 1, + "2284": 2, + "2286": 2, + "2288": 2, + "2290": 1, + "2292": 1, + "2293": 1, + "2295": 1, + "2317": 1, + "2318": 1, + "2319": 1, + "2322": 1, + "2323": 2, + "2333": 2, + "2338": 2, + "2340": 1, + "2343": 1, + "2344": 2, + "2349": 1, + "2350": 2, + "2355": 2, + "2358": 3, + "2360": 1, + "2362": 1, + "2368": 1, + "2369": 2, + "2371": 2, + "2373": 3, + "2375": 3, + "2376": 2, + "2379": 1, + "2382": 1, + "2384": 2, + "2385": 3, + "2386": 1, + "2388": 1, + "2389": 1, + "2390": 1, + "2391": 1, + "2394": 1, + "2398": 1, + "2400": 1, + "2403": 1, + "2404": 1, + "2408": 2, + "2410": 1, + "2411": 1, + "2412": 1, + "2414": 1, + "2415": 2, + "2416": 1, + "2417": 1, + "2418": 2, + "2419": 5, + "2420": 3, + "2421": 2, + "2422": 1, + "2424": 5, + "2427": 4, + "2431": 2, + "2432": 2, + "2433": 2, + "2436": 2, + "2437": 1, + "2438": 2, + "2439": 2, + "2441": 3, + "2443": 2, + "2445": 1, + "2446": 1, + "2448": 1, + "2449": 1, + "2450": 1, + "2451": 1, + "2452": 2, + "2453": 3, + "2454": 1, + "2458": 1, + "2462": 1, + "2463": 1, + "2464": 2, + "2466": 2, + "2467": 2, + "2468": 1, + "2470": 4, + "2472": 1, + "2473": 1, + "2477": 1, + "2478": 2, + "2479": 1, + "2483": 1, + "2485": 3, + "2488": 1, + "2489": 1, + "2490": 2, + "2491": 4, + "2492": 3, + "2493": 2, + "2494": 1, + "2495": 5, + "2496": 2, + "2498": 1, + "2500": 1, + "2501": 3, + "2507": 2, + "2508": 1, + "2509": 2, + "2510": 3, + "2511": 1, + "2513": 3, + "2514": 1, + "2515": 2, + "2516": 3, + "2518": 1, + "2525": 2, + "2526": 1, + "2527": 1, + "2533": 3, + "2534": 4, + "2535": 1, + "2536": 3, + "2537": 1, + "2539": 2, + "2542": 2, + "2543": 1, + "2544": 1, + "2545": 3, + "2546": 1, + "2549": 5, + "2550": 1, + "2553": 3, + "2554": 3, + "2555": 3, + "2556": 1, + "2559": 2, + "2563": 1, + "2572": 1, + "2583": 2, + "2593": 1, + "2594": 1, + "2609": 1, + "2640": 1, + "2641": 1, + "2644": 1, + "2645": 1, + "2667": 2, + "2674": 1, + "2677": 2, + "2678": 1, + "2682": 1, + "2684": 1, + "2685": 1, + "2693": 1, + "2696": 2, + "2697": 2, + "2698": 1, + "2702": 1, + "2703": 1, + "2706": 1, + "2707": 1, + "2710": 2, + "2711": 1, + "2714": 1, + "2724": 1, + "2728": 2, + "2732": 1, + "2733": 1, + "2741": 1, + "2742": 1, + "2757": 1, + "2760": 1, + "2766": 1, + "2770": 1, + "2771": 1, + "2772": 2, + "2774": 1, + "2775": 1, + "2781": 2, + "2785": 1, + "2788": 3, + "2789": 1, + "2795": 1, + "2797": 3, + "2815": 3, + "2818": 1, + "2821": 1, + "2822": 1, + "2824": 1, + "2828": 1, + "2830": 1, + "2831": 2, + "2833": 1, + "2838": 1, + "2840": 2, + "2842": 2, + "2843": 3, + "2847": 1, + "2849": 1, + "2850": 1, + "2853": 1, + "2854": 1, + "2855": 2, + "2857": 1, + "2865": 1, + "2875": 1, + "2877": 1, + "2879": 4, + "2882": 1, + "2885": 2, + "2887": 1, + "2889": 1, + "2890": 1, + "2891": 3, + "2894": 3, + "2901": 2, + "2960": 1, + "2962": 1, + "2965": 1, + "2966": 1, + "2967": 2, + "2984": 1, + "2986": 1, + "2996": 2, + "2998": 2, + "2999": 1, + "3003": 1, + "3005": 2, + "3006": 1, + "3012": 1, + "3031": 1, + "3034": 1, + "3037": 2, + "3038": 1, + "3039": 1, + "3042": 1, + "3043": 1, + "3045": 2, + "3048": 1, + "3050": 2, + "3061": 2, + "3066": 1, + "3068": 1, + "3070": 1, + "3071": 2, + "3072": 1, + "3073": 1, + "3075": 1, + "3076": 5, + "3077": 2, + "3080": 1, + "3081": 2, + "3082": 3, + "3083": 3, + "3084": 2, + "3086": 1, + "3090": 2, + "3091": 4, + "3092": 1, + "3093": 2, + "3097": 1, + "3114": 1, + "3115": 1, + "3120": 2, + "3131": 1, + "3153": 1, + "3156": 1, + "3159": 1, + "3163": 1, + "3170": 1, + "3175": 1, + "3178": 1, + "3179": 1, + "3180": 1, + "3184": 1, + "3198": 2, + "3205": 1, + "3207": 1, + "3234": 1, + "3236": 1, + "3238": 1, + "3240": 1, + "3243": 1, + "3247": 2, + "3250": 2, + "3267": 1, + "3273": 1, + "3301": 1, + "3306": 1, + "3319": 1, + "3326": 1, + "3327": 1, + "3331": 2, + "3334": 1, + "3403": 1, + "3408": 2, + "3409": 1, + "3436": 1, + "3441": 1, + "3445": 1, + "3446": 2, + "3450": 1, + "3461": 1, + "3462": 1, + "3479": 1, + "3481": 2, + "3483": 1, + "3486": 2, + "3487": 1, + "3488": 1, + "3489": 1, + "3491": 1, + "3500": 1, + "3501": 1, + "3504": 3, + "3505": 1, + "3506": 2, + "3515": 2, + "3523": 2, + "3525": 1, + "3527": 1, + "3528": 2, + "3529": 2, + "3530": 2, + "3537": 2, + "3538": 4, + "3539": 1, + "3540": 2, + "3541": 2, + "3542": 2, + "3543": 2, + "3544": 1, + "3545": 2, + "3547": 1, + "3548": 1, + "3577": 1, + "3583": 1, + "3585": 1, + "3587": 1, + "3588": 3, + "3590": 1, + "3591": 1, + "3593": 3, + "3594": 1, + "3604": 2, + "3608": 1, + "3616": 1, + "3618": 3, + "3631": 2, + "3644": 1, + "3672": 1, + "3678": 1, + "3682": 1, + "3684": 1, + "3685": 1, + "3693": 2, + "3695": 1, + "3696": 5, + "3698": 2, + "3702": 1, + "3703": 1, + "3707": 1, + "3711": 1, + "3719": 2, + "3726": 1, + "3742": 7, + "3744": 3, + "3752": 1, + "3754": 1, + "3824": 1, + "3830": 1, + "3832": 1, + "3835": 1, + "3841": 1, + "3847": 1, + "3850": 1, + "3907": 1, + "3912": 1, + "3916": 1, + "3955": 2, + "3956": 1, + "3957": 1, + "3967": 1, + "3970": 1, + "3972": 1, + "3973": 1, + "3977": 1, + "3980": 2, + "3991": 2, + "4002": 2, + "4021": 1, + "4037": 1, + "4038": 1, + "4052": 1, + "4053": 1, + "4061": 1, + "4064": 1, + "4067": 2, + "4074": 3, + "4077": 2, + "4078": 3, + "4079": 3, + "4080": 6, + "4082": 1, + "4083": 1, + "4085": 2, + "4086": 2, + "4087": 1, + "4088": 1, + "4089": 2, + "4090": 1, + "4091": 5, + "4092": 1, + "4093": 1, + "4099": 1, + "4100": 2, + "4102": 1, + "4104": 3, + "4105": 2, + "4106": 2, + "4107": 1, + "4109": 2, + "4111": 1, + "4112": 1, + "4113": 2, + "4114": 2, + "4115": 1, + "4116": 1, + "4117": 2, + "4118": 3, + "4119": 1, + "4120": 1, + "4121": 1, + "4123": 1, + "4126": 3, + "4127": 3, + "4128": 2, + "4129": 2, + "4135": 1, + "4136": 1, + "4139": 1, + "4140": 2, + "4142": 2, + "4143": 4, + "4144": 1, + "4146": 1, + "4147": 1, + "4149": 3, + "4150": 4, + "4151": 1, + "4152": 4, + "4156": 2, + "4166": 2, + "4169": 2, + "4170": 2, + "4179": 1, + "4181": 4, + "4182": 2, + "4186": 2, + "4187": 4, + "4195": 1, + "4197": 2, + "4201": 1, + "4203": 2, + "4206": 2, + "4207": 2, + "4209": 2, + "4210": 1, + "4218": 1, + "4221": 2, + "4230": 1, + "4233": 1, + "4236": 2, + "4239": 2, + "4241": 2, + "4242": 4, + "4245": 1, + "4246": 1, + "4249": 1, + "4250": 1, + "4255": 2, + "4258": 1, + "4259": 1, + "4263": 1, + "4264": 3, + "4265": 6, + "4266": 1, + "4268": 2, + "4269": 1, + "4270": 1, + "4271": 2, + "4272": 8, + "4273": 1, + "4274": 3, + "4275": 3, + "4276": 1, + "4277": 4, + "4279": 1, + "4281": 1, + "4282": 2, + "4283": 1, + "4288": 2, + "4289": 2, + "4291": 2, + "4294": 3, + "4295": 2, + "4296": 3, + "4298": 1, + "4300": 2, + "4302": 1, + "4304": 2, + "4306": 1, + "4307": 1, + "4312": 2, + "4317": 1, + "4319": 1, + "4320": 1, + "4330": 1, + "4335": 4, + "4343": 1, + "4355": 1, + "4356": 1, + "4361": 2, + "4364": 1, + "4366": 1, + "4378": 2, + "4384": 1, + "4387": 1, + "4390": 1, + "4392": 1, + "4394": 1, + "4398": 2, + "4404": 2, + "4407": 1, + "4409": 1, + "4414": 2, + "4416": 1, + "4419": 2, + "4427": 1, + "4435": 1, + "4436": 1, + "4440": 2, + "4444": 4, + "4448": 2, + "4450": 2, + "4455": 2, + "4457": 1, + "4459": 1, + "4460": 1, + "4461": 1, + "4464": 2, + "4467": 2, + "4469": 1, + "4472": 1, + "4473": 1, + "4475": 2, + "4479": 1, + "4480": 2, + "4482": 2, + "4483": 2, + "4490": 1, + "4496": 1, + "4498": 1, + "4499": 1, + "4500": 3, + "4504": 3, + "4506": 2, + "4508": 1, + "4509": 1, + "4510": 2, + "4513": 2, + "4515": 1, + "4516": 3, + "4517": 1, + "4519": 1, + "4521": 1, + "4522": 3, + "4524": 3, + "4525": 1, + "4554": 2, + "4558": 3, + "4559": 1, + "4560": 1, + "4565": 1, + "4589": 2, + "4592": 2, + "4595": 2, + "4604": 1, + "4605": 1, + "4607": 1, + "4615": 2, + "4655": 1 + }, + "started": "2020-09-07T18:50:07.581Z", + "trafficStats": { + "incomingCompressionRatio": 0.05125635381367967, + "incomingOctetsAppLevel": 65542723, + "incomingOctetsWebSocketLevel": 3359481, + "incomingOctetsWireLevel": 3367481, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0023813202098776566, + "outgoingCompressionRatio": 0.054767697094305956, + "outgoingOctetsAppLevel": 65542723, + "outgoingOctetsWebSocketLevel": 3589624, + "outgoingOctetsWireLevel": 3646768, + "outgoingWebSocketFrames": 14559, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.015919216051597605, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 13559, + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 2, + "3": 1, + "4": 6, + "5": 5, + "6": 3, + "7": 3, + "8": 2, + "9": 4, + "10": 5, + "11": 5, + "12": 1, + "13": 1, + "14": 4, + "15": 4, + "16": 3, + "18": 6, + "19": 10, + "20": 3, + "21": 1, + "22": 1, + "23": 5, + "24": 2, + "25": 2, + "26": 6, + "27": 2, + "28": 4, + "29": 4, + "30": 3, + "31": 2, + "32": 6, + "33": 13, + "34": 6, + "35": 4, + "36": 2, + "37": 4, + "38": 6, + "39": 5, + "40": 2, + "41": 3, + "42": 8, + "43": 4, + "44": 10, + "45": 4, + "46": 5, + "47": 12, + "48": 3, + "49": 5, + "50": 4, + "51": 10, + "52": 5, + "53": 7, + "54": 3, + "55": 3, + "56": 3, + "57": 5, + "58": 7, + "59": 15, + "60": 3, + "61": 5, + "62": 3, + "63": 8, + "64": 5, + "65": 3, + "66": 9, + "67": 3, + "68": 11, + "69": 3, + "70": 6, + "71": 1, + "72": 7, + "73": 9, + "74": 2, + "75": 3, + "76": 9, + "77": 8, + "78": 3, + "79": 8, + "80": 3, + "82": 6, + "83": 7, + "84": 6, + "85": 12, + "86": 5, + "87": 5, + "88": 3, + "89": 9, + "90": 3, + "91": 3, + "92": 7, + "93": 2, + "94": 2, + "95": 4, + "96": 1, + "97": 1, + "99": 1, + "102": 2, + "103": 1, + "104": 2, + "105": 4, + "106": 4, + "107": 2, + "108": 5, + "109": 2, + "110": 7, + "111": 7, + "112": 3, + "113": 3, + "114": 10, + "115": 7, + "116": 6, + "117": 5, + "118": 6, + "119": 1, + "120": 3, + "121": 5, + "122": 1, + "123": 1, + "124": 3, + "125": 2, + "126": 1, + "127": 1, + "130": 4, + "131": 1, + "132": 10, + "133": 1, + "134": 2, + "135": 2, + "136": 2, + "137": 4, + "138": 1, + "139": 3, + "140": 7, + "141": 5, + "142": 3, + "143": 2, + "144": 5, + "145": 5, + "146": 1, + "147": 3, + "148": 6, + "149": 5, + "150": 5, + "151": 4, + "152": 2, + "153": 9, + "154": 4, + "156": 8, + "157": 1, + "158": 1, + "159": 6, + "160": 5, + "161": 3, + "162": 4, + "163": 4, + "164": 5, + "165": 3, + "166": 6, + "167": 5, + "168": 2, + "169": 1, + "170": 2, + "171": 2, + "172": 1, + "173": 2, + "174": 2, + "175": 5, + "176": 1, + "177": 5, + "178": 2, + "179": 4, + "180": 2, + "181": 6, + "182": 5, + "183": 3, + "184": 6, + "185": 4, + "186": 5, + "187": 1, + "188": 2, + "189": 8, + "190": 4, + "191": 4, + "192": 5, + "194": 5, + "195": 3, + "196": 2, + "197": 3, + "198": 2, + "199": 10, + "200": 6, + "201": 3, + "202": 4, + "203": 3, + "204": 7, + "205": 6, + "206": 5, + "207": 5, + "208": 5, + "209": 8, + "210": 5, + "211": 1, + "212": 6, + "213": 9, + "214": 4, + "215": 2, + "217": 2, + "219": 4, + "220": 2, + "221": 5, + "222": 1, + "223": 6, + "224": 2, + "225": 2, + "226": 4, + "227": 3, + "228": 2, + "229": 1, + "230": 1, + "232": 6, + "233": 2, + "234": 3, + "235": 3, + "236": 3, + "237": 6, + "238": 8, + "239": 2, + "240": 1, + "242": 1, + "243": 4, + "244": 1, + "245": 4, + "246": 7, + "247": 3, + "248": 2, + "249": 1, + "250": 1, + "251": 3, + "252": 7, + "253": 2, + "254": 3, + "255": 2, + "256": 3, + "257": 4, + "258": 1, + "259": 2, + "260": 13559 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333639266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882a706ec94a4ee" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "a706ec94" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_4_15.html b/autobahn/client/tungstenite_case_12_4_15.html new file mode 100644 index 0000000..95ae0ec --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_15.html @@ -0,0 +1,1172 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.4.15 : Pass - 6135 ms @ 2020-09-07T18:50:11.537Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=370&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: T9PVJyAoJOnQqOGv+3qmLw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: eBjnbZb1an3f2xJjqf7fb5jNP+I=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
5292210584
5293210586
529815298
5301210602
530315303
530615306
531415314
531615316
537915379
538515385
538715387
538815388
5390210780
5421210842
5424210848
543315433
543615436
5465210930
5492210984
5510211020
551215512
5515211030
5519211038
552015520
552115521
5526211052
552715527
5535211070
5537211074
5538211076
556315563
556415564
5573211146
560815608
561115611
5619211238
563415634
563515635
563615636
563715637
563815638
563915639
5643211286
566615666
566915669
572215722
572315723
573615736
576915769
577315773
578515785
5800211600
5810211620
582015820
582415824
584115841
585215852
585415854
586115861
588315883
589015890
592515925
592615926
5927211854
596815968
597015970
600816008
601016010
601816018
608916089
609016090
609816098
6100212200
610116101
6102212204
610916109
6114212228
6119212238
612716127
612816128
6157318471
616016160
6163318489
6165212330
616616166
6167212334
6168212336
616916169
617116171
617216172
617516175
6186212372
619216192
619416194
623316233
630216302
630816308
631116311
631516315
631816318
632116321
632416324
632816328
6329212658
633116331
633316333
633516335
634116341
6343212686
6344212688
634616346
6348212696
635916359
636016360
636216362
636916369
637116371
637316373
638116381
638316383
638516385
638816388
6390212780
639716397
6399212798
6401425604
640316403
641516415
6416319248
641716417
6418532090
641916419
6420319260
642516425
642616426
642816428
643216432
6433212866
6435319305
644716447
645216452
6453212906
6456212912
645716457
6465212930
6467212934
6468319404
646916469
6470212940
6471212942
647316473
6474319422
647516475
6481212962
6483212966
6484212968
6485425940
648616486
648716487
6488319464
649016490
6492212984
649416494
649516495
649716497
6498319494
6501319503
6502213004
6503213006
650416504
650516505
651016510
651116511
651216512
6515319545
6517213034
651916519
652216522
6524213048
6526213052
652716527
652916529
653216532
6540213080
654216542
6544213088
6546213092
6550213100
655116551
655216552
6553319659
655416554
6556319668
6557213114
6559319677
6560426240
6561213122
656316563
656516565
656716567
6568319704
656916569
657116571
657216572
6575213150
657616576
658416584
658916589
659316593
659516595
6596213192
659916599
6600426400
660116601
660216602
660416604
6605319815
6606213212
660816608
661016610
661316613
661516615
661616616
661816618
6619213238
6620319860
6621213242
6624213248
6626213252
662916629
663216632
663316633
663616636
663916639
664016640
664116641
6646213292
6648213296
665016650
665116651
6652213304
665316653
6654213308
665516655
665716657
6659319977
6661319983
6662213324
6665213330
6666319998
6668213336
6669213338
667116671
6672213344
667316673
667416674
6675426700
6676426704
6677213354
668216682
668916689
6690426760
6692320076
6693426772
6695213390
6696320088
669716697
669916699
6700320100
6703213406
670716707
671016710
6713213426
671516715
671616716
671916719
672016720
672216722
672316723
6724320172
6729213458
6731213462
673416734
6735213470
6736213472
6737213474
6738213476
674016740
6741320223
674216742
674516745
674616746
674816748
6750213500
675116751
675316753
6755320265
6756213512
6758213516
6759213518
6760427040
6761320283
676416764
6765213530
6766320298
6767427068
6768533840
676916769
6770213540
6771213542
6772213544
677416774
6776213552
677816778
677916779
6780213560
6783427132
678416784
678616786
6791213582
6792213584
6793427172
679416794
679716797
6798320394
6800213600
6801213602
680216802
680716807
6808213616
6809320427
6810427240
6811427244
681216812
6813213626
6814427256
6815213630
681616816
6817213634
6819320457
6820213640
6822747754
682316823
6824320472
6825213650
6826534130
6832213664
6833213666
6838213676
683916839
684416844
6846213692
684916849
685016850
685216852
685316853
6859213718
686116861
6862320586
686316863
686416864
6866213732
6867534335
686916869
6870213740
687316873
687516875
687816878
688016880
6881213762
688316883
688416884
688516885
6886320658
688916889
6890213780
6893213786
689616896
6897213794
689816898
6901320703
690316903
690416904
6905213810
6907320721
690816908
691016910
691316913
691616916
691716917
692016920
692116921
6925213850
6930320790
6934213868
693516935
6936427744
6937213874
6938213876
693916939
6940320820
694116941
694316943
6947427788
694816948
6949534745
695016950
6952213904
6953213906
695516955
6957213914
6958213916
6960213920
6961320883
696316963
696416964
696516965
696616966
697416974
697516975
6976213952
697716977
698016980
698316983
698516985
6986213972
6987213974
6988213976
6989320967
6990213980
6991213982
6993213986
6995320985
7000321000
700217002
700717007
7008214016
700917009
7010214020
701117011
701417014
701517015
701617016
7017214034
702017020
702217022
7030214060
703117031
703217032
703417034
703517035
7037214074
7038428152
7039214078
7040321120
7042214084
704617046
704917049
7051214102
705917059
7061214122
7062428248
7063214126
7064214128
7065214130
706617066
7067214134
7068428272
7069214138
707017070
707217072
7078321234
7084321252
7086214172
708717087
7088214176
7089428356
709017090
7091321273
7092214184
7093214186
709417094
710017100
710217102
7103321309
7104428416
710517105
7106214212
7107321321
7110214220
711217112
7116321348
711817118
7119214238
712217122
712317123
7125214250
7134214268
713517135
713717137
7138321414
713917139
714017140
714417144
714617146
715917159
716217162
716317163
716617166
7168214336
7172214344
717517175
717617176
717817178
718317183
718517185
718917189
719017190
719117191
720217202
720317203
720517205
720817208
720917209
721217212
721317213
721517215
721717217
721917219
7225214450
732717327
733617336
734217342
734317343
734417344
7346214692
734717347
734917349
7354214708
735517355
735717357
7361322083
736217362
736417364
736517365
7366214732
7367322101
736817368
737017370
737217372
737817378
738017380
740117401
740617406
741117411
741517415
741617416
741817418
742917429
743017430
744217442
744517445
745117451
745717457
751417514
753517535
753817538
757217572
757717577
758017580
758517585
7620215240
7621215242
765517655
7661215322
766617666
7732215464
7744215488
775317753
781817818
781917819
785617856
785817858
787017870
787317873
7894215788
7899215798
790417904
790617906
792117921
792217922
792717927
793017930
796217962
796317963
797117971
797217972
798717987
7994431976
7996215992
799717997
8004216008
801218012
801418014
8015216030
8017216034
8020216040
8039216078
8059216118
808918089
809118091
8100216200
8102216204
8132216264
813618136
813718137
814118141
814418144
820518205
820918209
821218212
821418214
821818218
825918259
Total10026764594
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
236
3721
4624
5420
6212
7321
8432
9545
10330
11222
12560
13565
14684
15115
16580
17468
18472
19238
20360
21363
22366
23246
24372
259225
284112
29258
30390
315155
326192
33266
344136
357245
365180
374148
384152
393117
404160
41141
42142
433129
446264
454180
46146
47147
483144
49298
504200
516306
523156
532106
54154
55155
564224
577399
583174
59159
603180
614244
636378
646384
654260
664264
6712804
685340
692138
702140
712142
724288
734292
757525
76176
77177
783234
79179
807560
814324
823246
838664
844336
857595
864344
875435
883264
893267
904360
918728
923276
93193
942188
952190
968768
976582
98198
993297
1003300
1017707
1021102
1037721
1043312
1064424
1076642
1087756
1091109
1105550
1111111
1122224
1133339
1141114
1152230
1162232
1181118
1193357
1201120
1215605
1221122
1238984
1248992
125101250
1263378
1271127
1304520
131101310
1321132
1334532
1341134
1354540
1366816
1373411
138111518
1394556
1403420
1414564
1424568
1433429
1444576
1452290
1461146
1474588
1481148
1492298
1502300
1515755
15271064
15391377
1545770
1553465
1564624
1573471
1581158
1594636
1604640
1616966
1622324
1631163
1642328
1654660
1662332
1672334
16861008
16961014
17061020
1715855
17281376
1734692
1741174
17561050
17661056
1775885
1782356
1793537
18071260
1812362
1823546
18371281
18461104
18571295
1863558
18771309
1882376
1891189
1905950
1911191
1924768
193101930
1944776
1954780
1964784
1974788
1981198
1993597
2002400
20151005
2024808
2034812
20451020
20581640
20651030
2073621
20861248
2092418
21081680
2113633
2124848
2131213
21461284
2151215
2163648
2174868
21891962
21981752
2202440
2211221
2223666
2233669
224102240
2251225
2263678
2273681
2284912
22971603
23081840
2314924
23251160
2334932
2343702
2354940
2364944
2373711
2381238
23971673
2403720
24171687
24261452
24361458
2443732
2451245
24651230
24761482
2481248
2492498
25092250
25141004
25282016
25341012
2543762
25571785
25641024
2572514
25851290
25961554
260276607191600
Total286627328163
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
027660
11000
81
Total28661
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333730266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882df10a452dcf8
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6466313061343532
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_4_15.json b/autobahn/client/tungstenite_case_12_4_15.json new file mode 100644 index 0000000..5674ed2 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_15.json @@ -0,0 +1,1019 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 370, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 6135, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=370&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: T9PVJyAoJOnQqOGv+3qmLw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: eBjnbZb1an3f2xJjqf7fb5jNP+I=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.4.15", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "5292": 2, + "5293": 2, + "5298": 1, + "5301": 2, + "5303": 1, + "5306": 1, + "5314": 1, + "5316": 1, + "5379": 1, + "5385": 1, + "5387": 1, + "5388": 1, + "5390": 2, + "5421": 2, + "5424": 2, + "5433": 1, + "5436": 1, + "5465": 2, + "5492": 2, + "5510": 2, + "5512": 1, + "5515": 2, + "5519": 2, + "5520": 1, + "5521": 1, + "5526": 2, + "5527": 1, + "5535": 2, + "5537": 2, + "5538": 2, + "5563": 1, + "5564": 1, + "5573": 2, + "5608": 1, + "5611": 1, + "5619": 2, + "5634": 1, + "5635": 1, + "5636": 1, + "5637": 1, + "5638": 1, + "5639": 1, + "5643": 2, + "5666": 1, + "5669": 1, + "5722": 1, + "5723": 1, + "5736": 1, + "5769": 1, + "5773": 1, + "5785": 1, + "5800": 2, + "5810": 2, + "5820": 1, + "5824": 1, + "5841": 1, + "5852": 1, + "5854": 1, + "5861": 1, + "5883": 1, + "5890": 1, + "5925": 1, + "5926": 1, + "5927": 2, + "5968": 1, + "5970": 1, + "6008": 1, + "6010": 1, + "6018": 1, + "6089": 1, + "6090": 1, + "6098": 1, + "6100": 2, + "6101": 1, + "6102": 2, + "6109": 1, + "6114": 2, + "6119": 2, + "6127": 1, + "6128": 1, + "6157": 3, + "6160": 1, + "6163": 3, + "6165": 2, + "6166": 1, + "6167": 2, + "6168": 2, + "6169": 1, + "6171": 1, + "6172": 1, + "6175": 1, + "6186": 2, + "6192": 1, + "6194": 1, + "6233": 1, + "6302": 1, + "6308": 1, + "6311": 1, + "6315": 1, + "6318": 1, + "6321": 1, + "6324": 1, + "6328": 1, + "6329": 2, + "6331": 1, + "6333": 1, + "6335": 1, + "6341": 1, + "6343": 2, + "6344": 2, + "6346": 1, + "6348": 2, + "6359": 1, + "6360": 1, + "6362": 1, + "6369": 1, + "6371": 1, + "6373": 1, + "6381": 1, + "6383": 1, + "6385": 1, + "6388": 1, + "6390": 2, + "6397": 1, + "6399": 2, + "6401": 4, + "6403": 1, + "6415": 1, + "6416": 3, + "6417": 1, + "6418": 5, + "6419": 1, + "6420": 3, + "6425": 1, + "6426": 1, + "6428": 1, + "6432": 1, + "6433": 2, + "6435": 3, + "6447": 1, + "6452": 1, + "6453": 2, + "6456": 2, + "6457": 1, + "6465": 2, + "6467": 2, + "6468": 3, + "6469": 1, + "6470": 2, + "6471": 2, + "6473": 1, + "6474": 3, + "6475": 1, + "6481": 2, + "6483": 2, + "6484": 2, + "6485": 4, + "6486": 1, + "6487": 1, + "6488": 3, + "6490": 1, + "6492": 2, + "6494": 1, + "6495": 1, + "6497": 1, + "6498": 3, + "6501": 3, + "6502": 2, + "6503": 2, + "6504": 1, + "6505": 1, + "6510": 1, + "6511": 1, + "6512": 1, + "6515": 3, + "6517": 2, + "6519": 1, + "6522": 1, + "6524": 2, + "6526": 2, + "6527": 1, + "6529": 1, + "6532": 1, + "6540": 2, + "6542": 1, + "6544": 2, + "6546": 2, + "6550": 2, + "6551": 1, + "6552": 1, + "6553": 3, + "6554": 1, + "6556": 3, + "6557": 2, + "6559": 3, + "6560": 4, + "6561": 2, + "6563": 1, + "6565": 1, + "6567": 1, + "6568": 3, + "6569": 1, + "6571": 1, + "6572": 1, + "6575": 2, + "6576": 1, + "6584": 1, + "6589": 1, + "6593": 1, + "6595": 1, + "6596": 2, + "6599": 1, + "6600": 4, + "6601": 1, + "6602": 1, + "6604": 1, + "6605": 3, + "6606": 2, + "6608": 1, + "6610": 1, + "6613": 1, + "6615": 1, + "6616": 1, + "6618": 1, + "6619": 2, + "6620": 3, + "6621": 2, + "6624": 2, + "6626": 2, + "6629": 1, + "6632": 1, + "6633": 1, + "6636": 1, + "6639": 1, + "6640": 1, + "6641": 1, + "6646": 2, + "6648": 2, + "6650": 1, + "6651": 1, + "6652": 2, + "6653": 1, + "6654": 2, + "6655": 1, + "6657": 1, + "6659": 3, + "6661": 3, + "6662": 2, + "6665": 2, + "6666": 3, + "6668": 2, + "6669": 2, + "6671": 1, + "6672": 2, + "6673": 1, + "6674": 1, + "6675": 4, + "6676": 4, + "6677": 2, + "6682": 1, + "6689": 1, + "6690": 4, + "6692": 3, + "6693": 4, + "6695": 2, + "6696": 3, + "6697": 1, + "6699": 1, + "6700": 3, + "6703": 2, + "6707": 1, + "6710": 1, + "6713": 2, + "6715": 1, + "6716": 1, + "6719": 1, + "6720": 1, + "6722": 1, + "6723": 1, + "6724": 3, + "6729": 2, + "6731": 2, + "6734": 1, + "6735": 2, + "6736": 2, + "6737": 2, + "6738": 2, + "6740": 1, + "6741": 3, + "6742": 1, + "6745": 1, + "6746": 1, + "6748": 1, + "6750": 2, + "6751": 1, + "6753": 1, + "6755": 3, + "6756": 2, + "6758": 2, + "6759": 2, + "6760": 4, + "6761": 3, + "6764": 1, + "6765": 2, + "6766": 3, + "6767": 4, + "6768": 5, + "6769": 1, + "6770": 2, + "6771": 2, + "6772": 2, + "6774": 1, + "6776": 2, + "6778": 1, + "6779": 1, + "6780": 2, + "6783": 4, + "6784": 1, + "6786": 1, + "6791": 2, + "6792": 2, + "6793": 4, + "6794": 1, + "6797": 1, + "6798": 3, + "6800": 2, + "6801": 2, + "6802": 1, + "6807": 1, + "6808": 2, + "6809": 3, + "6810": 4, + "6811": 4, + "6812": 1, + "6813": 2, + "6814": 4, + "6815": 2, + "6816": 1, + "6817": 2, + "6819": 3, + "6820": 2, + "6822": 7, + "6823": 1, + "6824": 3, + "6825": 2, + "6826": 5, + "6832": 2, + "6833": 2, + "6838": 2, + "6839": 1, + "6844": 1, + "6846": 2, + "6849": 1, + "6850": 1, + "6852": 1, + "6853": 1, + "6859": 2, + "6861": 1, + "6862": 3, + "6863": 1, + "6864": 1, + "6866": 2, + "6867": 5, + "6869": 1, + "6870": 2, + "6873": 1, + "6875": 1, + "6878": 1, + "6880": 1, + "6881": 2, + "6883": 1, + "6884": 1, + "6885": 1, + "6886": 3, + "6889": 1, + "6890": 2, + "6893": 2, + "6896": 1, + "6897": 2, + "6898": 1, + "6901": 3, + "6903": 1, + "6904": 1, + "6905": 2, + "6907": 3, + "6908": 1, + "6910": 1, + "6913": 1, + "6916": 1, + "6917": 1, + "6920": 1, + "6921": 1, + "6925": 2, + "6930": 3, + "6934": 2, + "6935": 1, + "6936": 4, + "6937": 2, + "6938": 2, + "6939": 1, + "6940": 3, + "6941": 1, + "6943": 1, + "6947": 4, + "6948": 1, + "6949": 5, + "6950": 1, + "6952": 2, + "6953": 2, + "6955": 1, + "6957": 2, + "6958": 2, + "6960": 2, + "6961": 3, + "6963": 1, + "6964": 1, + "6965": 1, + "6966": 1, + "6974": 1, + "6975": 1, + "6976": 2, + "6977": 1, + "6980": 1, + "6983": 1, + "6985": 1, + "6986": 2, + "6987": 2, + "6988": 2, + "6989": 3, + "6990": 2, + "6991": 2, + "6993": 2, + "6995": 3, + "7000": 3, + "7002": 1, + "7007": 1, + "7008": 2, + "7009": 1, + "7010": 2, + "7011": 1, + "7014": 1, + "7015": 1, + "7016": 1, + "7017": 2, + "7020": 1, + "7022": 1, + "7030": 2, + "7031": 1, + "7032": 1, + "7034": 1, + "7035": 1, + "7037": 2, + "7038": 4, + "7039": 2, + "7040": 3, + "7042": 2, + "7046": 1, + "7049": 1, + "7051": 2, + "7059": 1, + "7061": 2, + "7062": 4, + "7063": 2, + "7064": 2, + "7065": 2, + "7066": 1, + "7067": 2, + "7068": 4, + "7069": 2, + "7070": 1, + "7072": 1, + "7078": 3, + "7084": 3, + "7086": 2, + "7087": 1, + "7088": 2, + "7089": 4, + "7090": 1, + "7091": 3, + "7092": 2, + "7093": 2, + "7094": 1, + "7100": 1, + "7102": 1, + "7103": 3, + "7104": 4, + "7105": 1, + "7106": 2, + "7107": 3, + "7110": 2, + "7112": 1, + "7116": 3, + "7118": 1, + "7119": 2, + "7122": 1, + "7123": 1, + "7125": 2, + "7134": 2, + "7135": 1, + "7137": 1, + "7138": 3, + "7139": 1, + "7140": 1, + "7144": 1, + "7146": 1, + "7159": 1, + "7162": 1, + "7163": 1, + "7166": 1, + "7168": 2, + "7172": 2, + "7175": 1, + "7176": 1, + "7178": 1, + "7183": 1, + "7185": 1, + "7189": 1, + "7190": 1, + "7191": 1, + "7202": 1, + "7203": 1, + "7205": 1, + "7208": 1, + "7209": 1, + "7212": 1, + "7213": 1, + "7215": 1, + "7217": 1, + "7219": 1, + "7225": 2, + "7327": 1, + "7336": 1, + "7342": 1, + "7343": 1, + "7344": 1, + "7346": 2, + "7347": 1, + "7349": 1, + "7354": 2, + "7355": 1, + "7357": 1, + "7361": 3, + "7362": 1, + "7364": 1, + "7365": 1, + "7366": 2, + "7367": 3, + "7368": 1, + "7370": 1, + "7372": 1, + "7378": 1, + "7380": 1, + "7401": 1, + "7406": 1, + "7411": 1, + "7415": 1, + "7416": 1, + "7418": 1, + "7429": 1, + "7430": 1, + "7442": 1, + "7445": 1, + "7451": 1, + "7457": 1, + "7514": 1, + "7535": 1, + "7538": 1, + "7572": 1, + "7577": 1, + "7580": 1, + "7585": 1, + "7620": 2, + "7621": 2, + "7655": 1, + "7661": 2, + "7666": 1, + "7732": 2, + "7744": 2, + "7753": 1, + "7818": 1, + "7819": 1, + "7856": 1, + "7858": 1, + "7870": 1, + "7873": 1, + "7894": 2, + "7899": 2, + "7904": 1, + "7906": 1, + "7921": 1, + "7922": 1, + "7927": 1, + "7930": 1, + "7962": 1, + "7963": 1, + "7971": 1, + "7972": 1, + "7987": 1, + "7994": 4, + "7996": 2, + "7997": 1, + "8004": 2, + "8012": 1, + "8014": 1, + "8015": 2, + "8017": 2, + "8020": 2, + "8039": 2, + "8059": 2, + "8089": 1, + "8091": 1, + "8100": 2, + "8102": 2, + "8132": 2, + "8136": 1, + "8137": 1, + "8141": 1, + "8144": 1, + "8205": 1, + "8209": 1, + "8212": 1, + "8214": 1, + "8218": 1, + "8259": 1 + }, + "started": "2020-09-07T18:50:11.537Z", + "trafficStats": { + "incomingCompressionRatio": 0.05154142277258159, + "incomingOctetsAppLevel": 131085419, + "incomingOctetsWebSocketLevel": 6756329, + "incomingOctetsWireLevel": 6764329, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0011840749614176575, + "outgoingCompressionRatio": 0.05503413770222606, + "outgoingOctetsAppLevel": 131085419, + "outgoingOctetsWebSocketLevel": 7214173, + "outgoingOctetsWireLevel": 7327907, + "outgoingWebSocketFrames": 28660, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.015765355225054904, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 27660, + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 3, + "3": 7, + "4": 6, + "5": 4, + "6": 2, + "7": 3, + "8": 4, + "9": 5, + "10": 3, + "11": 2, + "12": 5, + "13": 5, + "14": 6, + "15": 1, + "16": 5, + "17": 4, + "18": 4, + "19": 2, + "20": 3, + "21": 3, + "22": 3, + "23": 2, + "24": 3, + "25": 9, + "28": 4, + "29": 2, + "30": 3, + "31": 5, + "32": 6, + "33": 2, + "34": 4, + "35": 7, + "36": 5, + "37": 4, + "38": 4, + "39": 3, + "40": 4, + "41": 1, + "42": 1, + "43": 3, + "44": 6, + "45": 4, + "46": 1, + "47": 1, + "48": 3, + "49": 2, + "50": 4, + "51": 6, + "52": 3, + "53": 2, + "54": 1, + "55": 1, + "56": 4, + "57": 7, + "58": 3, + "59": 1, + "60": 3, + "61": 4, + "63": 6, + "64": 6, + "65": 4, + "66": 4, + "67": 12, + "68": 5, + "69": 2, + "70": 2, + "71": 2, + "72": 4, + "73": 4, + "75": 7, + "76": 1, + "77": 1, + "78": 3, + "79": 1, + "80": 7, + "81": 4, + "82": 3, + "83": 8, + "84": 4, + "85": 7, + "86": 4, + "87": 5, + "88": 3, + "89": 3, + "90": 4, + "91": 8, + "92": 3, + "93": 1, + "94": 2, + "95": 2, + "96": 8, + "97": 6, + "98": 1, + "99": 3, + "100": 3, + "101": 7, + "102": 1, + "103": 7, + "104": 3, + "106": 4, + "107": 6, + "108": 7, + "109": 1, + "110": 5, + "111": 1, + "112": 2, + "113": 3, + "114": 1, + "115": 2, + "116": 2, + "118": 1, + "119": 3, + "120": 1, + "121": 5, + "122": 1, + "123": 8, + "124": 8, + "125": 10, + "126": 3, + "127": 1, + "130": 4, + "131": 10, + "132": 1, + "133": 4, + "134": 1, + "135": 4, + "136": 6, + "137": 3, + "138": 11, + "139": 4, + "140": 3, + "141": 4, + "142": 4, + "143": 3, + "144": 4, + "145": 2, + "146": 1, + "147": 4, + "148": 1, + "149": 2, + "150": 2, + "151": 5, + "152": 7, + "153": 9, + "154": 5, + "155": 3, + "156": 4, + "157": 3, + "158": 1, + "159": 4, + "160": 4, + "161": 6, + "162": 2, + "163": 1, + "164": 2, + "165": 4, + "166": 2, + "167": 2, + "168": 6, + "169": 6, + "170": 6, + "171": 5, + "172": 8, + "173": 4, + "174": 1, + "175": 6, + "176": 6, + "177": 5, + "178": 2, + "179": 3, + "180": 7, + "181": 2, + "182": 3, + "183": 7, + "184": 6, + "185": 7, + "186": 3, + "187": 7, + "188": 2, + "189": 1, + "190": 5, + "191": 1, + "192": 4, + "193": 10, + "194": 4, + "195": 4, + "196": 4, + "197": 4, + "198": 1, + "199": 3, + "200": 2, + "201": 5, + "202": 4, + "203": 4, + "204": 5, + "205": 8, + "206": 5, + "207": 3, + "208": 6, + "209": 2, + "210": 8, + "211": 3, + "212": 4, + "213": 1, + "214": 6, + "215": 1, + "216": 3, + "217": 4, + "218": 9, + "219": 8, + "220": 2, + "221": 1, + "222": 3, + "223": 3, + "224": 10, + "225": 1, + "226": 3, + "227": 3, + "228": 4, + "229": 7, + "230": 8, + "231": 4, + "232": 5, + "233": 4, + "234": 3, + "235": 4, + "236": 4, + "237": 3, + "238": 1, + "239": 7, + "240": 3, + "241": 7, + "242": 6, + "243": 6, + "244": 3, + "245": 1, + "246": 5, + "247": 6, + "248": 1, + "249": 2, + "250": 9, + "251": 4, + "252": 8, + "253": 4, + "254": 3, + "255": 7, + "256": 4, + "257": 2, + "258": 5, + "259": 6, + "260": 27660 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333730266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882df10a452dcf8" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "df10a452" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_4_16.html b/autobahn/client/tungstenite_case_12_4_16.html new file mode 100644 index 0000000..e081f38 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_16.html @@ -0,0 +1,1422 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.4.16 : Pass - 6205 ms @ 2020-09-07T18:50:17.673Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=371&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: p0/duvAiwJTKVXmNMC2f0w==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 6qrinA5+ggRoVkfoD3eGV1SAHGM=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
5292210584
5293210586
529815298
5301210602
530315303
530615306
531415314
531615316
537915379
538515385
538715387
538815388
5390210780
5421210842
5424210848
543315433
543615436
5465210930
5492210984
5510211020
551215512
5515211030
5519211038
552015520
552115521
5526211052
552715527
5535211070
5537211074
5538211076
556315563
556415564
5573211146
560815608
561115611
5619211238
563415634
563515635
563615636
563715637
563815638
563915639
5643211286
566615666
566915669
572215722
572315723
573615736
576915769
577315773
578515785
5800211600
5810211620
582015820
582415824
584115841
585215852
585415854
586115861
588315883
589015890
592515925
592615926
5927211854
596815968
597015970
600816008
601016010
601816018
608916089
609016090
609816098
6100212200
610116101
6102212204
610916109
6114212228
6119212238
612716127
612816128
6157318471
616016160
6163318489
6165212330
616616166
6167212334
6168212336
616916169
617116171
617216172
617516175
6186212372
619216192
619416194
623316233
630216302
630816308
631116311
631516315
631816318
632116321
632416324
632816328
6329212658
633116331
633316333
633516335
634116341
6343212686
6344212688
634616346
6348212696
635916359
636016360
636216362
636916369
637116371
637316373
638116381
638316383
638516385
638816388
6390212780
639716397
6399212798
6401425604
640316403
641516415
6416319248
641716417
6418532090
641916419
6420319260
642516425
642616426
642816428
643216432
6433212866
6435319305
644716447
645216452
6453212906
6456212912
645716457
6465212930
6467212934
6468319404
646916469
6470212940
6471212942
647316473
6474319422
647516475
6481212962
6483212966
6484212968
6485425940
648616486
648716487
6488319464
649016490
6492212984
649416494
649516495
649716497
6498319494
6501319503
6502213004
6503213006
650416504
650516505
651016510
651116511
651216512
6515319545
6517213034
651916519
652216522
6524213048
6526213052
652716527
652916529
653216532
6540213080
654216542
6544213088
6546213092
6550213100
655116551
655216552
6553319659
655416554
6556319668
6557213114
6559319677
6560426240
6561213122
656316563
656516565
656716567
6568319704
656916569
657116571
657216572
6575213150
657616576
658416584
658916589
659316593
659516595
6596213192
659916599
6600426400
660116601
660216602
660416604
6605319815
6606213212
660816608
661016610
661316613
661516615
661616616
661816618
6619213238
6620319860
6621213242
6624213248
6626213252
662916629
663216632
663316633
663616636
663916639
664016640
664116641
6646213292
6648213296
665016650
665116651
6652213304
665316653
6654213308
665516655
665716657
6659319977
6661319983
6662213324
6665213330
6666319998
6668213336
6669213338
667116671
6672213344
667316673
667416674
6675426700
6676426704
6677213354
668216682
668916689
6690426760
6692320076
6693426772
6695213390
6696320088
669716697
669916699
6700320100
6703213406
670716707
671016710
6713213426
671516715
671616716
671916719
672016720
672216722
672316723
6724320172
6729213458
6731213462
673416734
6735213470
6736213472
6737213474
6738213476
674016740
6741320223
674216742
674516745
674616746
674816748
6750213500
675116751
675316753
6755320265
6756213512
6758213516
6759213518
6760427040
6761320283
676416764
6765213530
6766320298
6767427068
6768533840
676916769
6770213540
6771213542
6772213544
677416774
6776213552
677816778
677916779
6780213560
6783427132
678416784
678616786
6791213582
6792213584
6793427172
679416794
679716797
6798320394
6800213600
6801213602
680216802
680716807
6808213616
6809320427
6810427240
6811427244
681216812
6813213626
6814427256
6815213630
681616816
6817213634
6819320457
6820213640
6822747754
682316823
6824320472
6825213650
6826534130
6832213664
6833213666
6838213676
683916839
684416844
6846213692
684916849
685016850
685216852
685316853
6859213718
686116861
6862320586
686316863
686416864
6866213732
6867534335
686916869
6870213740
687316873
687516875
687816878
688016880
6881213762
688316883
688416884
688516885
6886320658
688916889
6890213780
6893213786
689616896
6897213794
689816898
6901320703
690316903
690416904
6905213810
6907320721
690816908
691016910
691316913
691616916
691716917
692016920
692116921
6925213850
6930320790
6934213868
693516935
6936427744
6937213874
6938213876
693916939
6940320820
694116941
694316943
6947427788
694816948
6949534745
695016950
6952213904
6953213906
695516955
6957213914
6958213916
6960213920
6961320883
696316963
696416964
696516965
696616966
697416974
697516975
6976213952
697716977
698016980
698316983
698516985
6986213972
6987213974
6988213976
6989320967
6990213980
6991213982
6993213986
6995320985
7000321000
700217002
700717007
7008214016
700917009
7010214020
701117011
701417014
701517015
701617016
7017214034
702017020
702217022
7030214060
703117031
703217032
703417034
703517035
7037214074
7038428152
7039214078
7040321120
7042214084
704617046
704917049
7051214102
705917059
7061214122
7062428248
7063214126
7064214128
7065214130
706617066
7067214134
7068428272
7069214138
707017070
707217072
7078321234
7084321252
7086214172
708717087
7088214176
7089428356
709017090
7091321273
7092214184
7093214186
709417094
710017100
710217102
7103321309
7104428416
710517105
7106214212
7107321321
7110214220
711217112
7116321348
711817118
7119214238
712217122
712317123
7125214250
7134214268
713517135
713717137
7138321414
713917139
714017140
714417144
714617146
715917159
716217162
716317163
716617166
7168214336
7172214344
717517175
717617176
717817178
718317183
718517185
718917189
719017190
719117191
720217202
720317203
720517205
720817208
720917209
721217212
721317213
721517215
721717217
721917219
7225214450
732717327
733617336
734217342
734317343
734417344
7346214692
734717347
734917349
7354214708
735517355
735717357
7361322083
736217362
736417364
736517365
7366214732
7367322101
736817368
737017370
737217372
737817378
738017380
740117401
740617406
741117411
741517415
741617416
741817418
742917429
743017430
744217442
744517445
745117451
745717457
751417514
753517535
753817538
757217572
757717577
758017580
758517585
7620215240
7621215242
765517655
7661215322
766617666
7732215464
7744215488
775317753
781817818
781917819
785617856
785817858
787017870
787317873
7894215788
7899215798
790417904
790617906
792117921
792217922
792717927
793017930
796217962
796317963
797117971
797217972
798717987
7994431976
7996215992
799717997
8004216008
801218012
801418014
8015216030
8017216034
8020216040
8039216078
8059216118
808918089
809118091
8100216200
8102216204
8132216264
813618136
813718137
814118141
814418144
820518205
820918209
821218212
821418214
821818218
825918259
Total10026764594
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
339
4312
5315
616
7214
818
9218
11111
12336
13226
14570
16232
17117
18236
19119
21121
22122
255125
28256
29258
30390
315155
325160
33266
34134
35270
363108
37274
403120
41141
42142
43143
44144
453135
48148
50150
512102
52152
573171
582116
60160
613183
633189
643192
675335
683204
69169
72172
732146
752150
76176
77177
79179
803240
812162
82182
833249
84184
857595
863258
873261
88188
892178
902180
913273
95195
964384
972194
99199
1003300
1014404
1021102
1035515
1043312
1071107
1085540
1101110
1111111
1121112
1131113
1151115
1192238
1201120
1212242
1233369
1246744
1253375
1302260
1314524
1331133
1352270
1362272
1373411
1386828
1412282
1423426
1471147
1481148
1511151
1521152
1531153
1541154
1551155
1561156
1572314
1593477
1602320
1611161
1621162
1641164
1654660
1661166
1672334
1683504
1693507
1705850
1713513
17281376
1733519
1741174
1754700
1765880
1774708
1782356
1791179
1802360
1812362
1823546
1833549
1845920
1853555
1861186
1875935
1881188
1891189
1902380
1911191
1934772
1942388
1952390
1961196
1972394
1981198
1991199
2001200
2012402
2023606
2032406
20561230
2062412
2071207
2083624
2103630
2111211
2122424
2143642
2161216
2182436
2192438
2221222
2231223
2244896
2251225
2262452
2272454
2283684
2294916
2304920
2312462
2324928
2331233
2343702
2351235
2363708
2373711
23951195
2401240
2414964
2422484
2431243
2441244
2451245
2461246
2472494
2481248
2501250
2512502
2523756
2551255
2562512
25851290
2591259
2603780
2613783
2623786
2631263
2641264
2651265
2662532
2673801
2683804
2691269
2702540
2711271
2731273
2743822
2751275
2761276
2771277
2783834
2791279
2801280
2812562
2823846
2832566
2861286
2923876
2933879
2952590
2962592
2971297
3011301
3022604
3031303
3051305
3061306
3071307
3081308
3091309
3101310
3111311
3152630
3211321
3222644
3232646
32441296
3251325
3291329
3303990
3331333
3382676
3392678
3401340
34151705
3421342
3441344
3451345
3482696
3491349
3501350
3571357
3681368
3741374
4081408
40931227
4481448
4491449
4501450
4521452
4531453
4561456
4591459
4601460
4631463
4641464
4681468
4691469
4702940
4732946
47431422
4752950
4761476
4771477
4781478
4792958
48031440
4871487
4892978
4911491
5081508
5111511
5131513
52721054
5311531
5351535
53921078
5501550
5531553
5601560
5661566
5771577
5781578
5791579
5811581
5831583
58421168
5851585
5891589
5941594
5961596
59821196
6081608
6091609
6271627
6351635
6371637
63821276
63921278
64031920
6411641
6421642
64321286
6451645
6461646
64821296
6511651
6571657
66421328
6651665
6711671
6731673
6831683
6881688
6911691
6971697
7201720
73021460
73121462
7621762
7671767
7731773
7781778
7841784
7871787
7881788
7921792
7981798
8021802
80521610
8061806
80821616
8091809
8101810
8131813
81432442
8181818
8191819
82021640
82132463
8231823
8241824
8251825
82643304
82721654
8281828
8291829
83021660
8311831
8331833
8351835
83754185
83821676
84321686
84532535
84832544
8501850
8571857
85821716
8591859
86143444
86221724
8631863
8641864
86643464
86743468
8681868
8691869
87132613
87321746
87643504
87754385
87821756
8791879
88032640
8821882
8831883
8841884
8851885
8861886
8881888
8891889
89121782
8921892
89343572
89554475
8981898
89943596
9001900
90121802
90321806
90421808
90654530
90732721
90832724
90921818
9101910
91132733
91243648
9131913
9141914
91532745
91721834
91821836
91943676
92032760
92143684
92243688
92321846
92432772
9251925
9261926
92821856
92943716
9301930
9311931
9321932
9341934
93632808
93732811
9381938
9391939
9411941
94321886
9451945
9471947
94854740
95143804
9521952
95332859
95421908
95521910
9561956
95832874
96032880
96154805
9621962
96321926
96421928
9651965
96721934
96932907
9701970
9711971
97243888
97321946
97432922
9751975
9761976
97721954
97854890
97921958
9801980
9821982
9831983
98421968
98521970
98621972
98721974
9881988
9901990
99232976
9941994
9951995
9961996
99732991
99843992
9991999
100011000
100111001
100322006
100411004
100611006
100722014
100822016
100933027
101044040
101155055
101222024
101444056
101544060
101722034
101877126
101922038
102044080
102144084
102233066
102344092
102422048
102511025
102755135
102865786762184
Total75807244351
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
06578
11000
81
Total7579
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333731266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882627534f1619d
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3632373533346631
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_4_16.json b/autobahn/client/tungstenite_case_12_4_16.json new file mode 100644 index 0000000..e3d9ca0 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_16.json @@ -0,0 +1,1269 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 371, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 6205, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=371&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: p0/duvAiwJTKVXmNMC2f0w==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 6qrinA5+ggRoVkfoD3eGV1SAHGM=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.4.16", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "5292": 2, + "5293": 2, + "5298": 1, + "5301": 2, + "5303": 1, + "5306": 1, + "5314": 1, + "5316": 1, + "5379": 1, + "5385": 1, + "5387": 1, + "5388": 1, + "5390": 2, + "5421": 2, + "5424": 2, + "5433": 1, + "5436": 1, + "5465": 2, + "5492": 2, + "5510": 2, + "5512": 1, + "5515": 2, + "5519": 2, + "5520": 1, + "5521": 1, + "5526": 2, + "5527": 1, + "5535": 2, + "5537": 2, + "5538": 2, + "5563": 1, + "5564": 1, + "5573": 2, + "5608": 1, + "5611": 1, + "5619": 2, + "5634": 1, + "5635": 1, + "5636": 1, + "5637": 1, + "5638": 1, + "5639": 1, + "5643": 2, + "5666": 1, + "5669": 1, + "5722": 1, + "5723": 1, + "5736": 1, + "5769": 1, + "5773": 1, + "5785": 1, + "5800": 2, + "5810": 2, + "5820": 1, + "5824": 1, + "5841": 1, + "5852": 1, + "5854": 1, + "5861": 1, + "5883": 1, + "5890": 1, + "5925": 1, + "5926": 1, + "5927": 2, + "5968": 1, + "5970": 1, + "6008": 1, + "6010": 1, + "6018": 1, + "6089": 1, + "6090": 1, + "6098": 1, + "6100": 2, + "6101": 1, + "6102": 2, + "6109": 1, + "6114": 2, + "6119": 2, + "6127": 1, + "6128": 1, + "6157": 3, + "6160": 1, + "6163": 3, + "6165": 2, + "6166": 1, + "6167": 2, + "6168": 2, + "6169": 1, + "6171": 1, + "6172": 1, + "6175": 1, + "6186": 2, + "6192": 1, + "6194": 1, + "6233": 1, + "6302": 1, + "6308": 1, + "6311": 1, + "6315": 1, + "6318": 1, + "6321": 1, + "6324": 1, + "6328": 1, + "6329": 2, + "6331": 1, + "6333": 1, + "6335": 1, + "6341": 1, + "6343": 2, + "6344": 2, + "6346": 1, + "6348": 2, + "6359": 1, + "6360": 1, + "6362": 1, + "6369": 1, + "6371": 1, + "6373": 1, + "6381": 1, + "6383": 1, + "6385": 1, + "6388": 1, + "6390": 2, + "6397": 1, + "6399": 2, + "6401": 4, + "6403": 1, + "6415": 1, + "6416": 3, + "6417": 1, + "6418": 5, + "6419": 1, + "6420": 3, + "6425": 1, + "6426": 1, + "6428": 1, + "6432": 1, + "6433": 2, + "6435": 3, + "6447": 1, + "6452": 1, + "6453": 2, + "6456": 2, + "6457": 1, + "6465": 2, + "6467": 2, + "6468": 3, + "6469": 1, + "6470": 2, + "6471": 2, + "6473": 1, + "6474": 3, + "6475": 1, + "6481": 2, + "6483": 2, + "6484": 2, + "6485": 4, + "6486": 1, + "6487": 1, + "6488": 3, + "6490": 1, + "6492": 2, + "6494": 1, + "6495": 1, + "6497": 1, + "6498": 3, + "6501": 3, + "6502": 2, + "6503": 2, + "6504": 1, + "6505": 1, + "6510": 1, + "6511": 1, + "6512": 1, + "6515": 3, + "6517": 2, + "6519": 1, + "6522": 1, + "6524": 2, + "6526": 2, + "6527": 1, + "6529": 1, + "6532": 1, + "6540": 2, + "6542": 1, + "6544": 2, + "6546": 2, + "6550": 2, + "6551": 1, + "6552": 1, + "6553": 3, + "6554": 1, + "6556": 3, + "6557": 2, + "6559": 3, + "6560": 4, + "6561": 2, + "6563": 1, + "6565": 1, + "6567": 1, + "6568": 3, + "6569": 1, + "6571": 1, + "6572": 1, + "6575": 2, + "6576": 1, + "6584": 1, + "6589": 1, + "6593": 1, + "6595": 1, + "6596": 2, + "6599": 1, + "6600": 4, + "6601": 1, + "6602": 1, + "6604": 1, + "6605": 3, + "6606": 2, + "6608": 1, + "6610": 1, + "6613": 1, + "6615": 1, + "6616": 1, + "6618": 1, + "6619": 2, + "6620": 3, + "6621": 2, + "6624": 2, + "6626": 2, + "6629": 1, + "6632": 1, + "6633": 1, + "6636": 1, + "6639": 1, + "6640": 1, + "6641": 1, + "6646": 2, + "6648": 2, + "6650": 1, + "6651": 1, + "6652": 2, + "6653": 1, + "6654": 2, + "6655": 1, + "6657": 1, + "6659": 3, + "6661": 3, + "6662": 2, + "6665": 2, + "6666": 3, + "6668": 2, + "6669": 2, + "6671": 1, + "6672": 2, + "6673": 1, + "6674": 1, + "6675": 4, + "6676": 4, + "6677": 2, + "6682": 1, + "6689": 1, + "6690": 4, + "6692": 3, + "6693": 4, + "6695": 2, + "6696": 3, + "6697": 1, + "6699": 1, + "6700": 3, + "6703": 2, + "6707": 1, + "6710": 1, + "6713": 2, + "6715": 1, + "6716": 1, + "6719": 1, + "6720": 1, + "6722": 1, + "6723": 1, + "6724": 3, + "6729": 2, + "6731": 2, + "6734": 1, + "6735": 2, + "6736": 2, + "6737": 2, + "6738": 2, + "6740": 1, + "6741": 3, + "6742": 1, + "6745": 1, + "6746": 1, + "6748": 1, + "6750": 2, + "6751": 1, + "6753": 1, + "6755": 3, + "6756": 2, + "6758": 2, + "6759": 2, + "6760": 4, + "6761": 3, + "6764": 1, + "6765": 2, + "6766": 3, + "6767": 4, + "6768": 5, + "6769": 1, + "6770": 2, + "6771": 2, + "6772": 2, + "6774": 1, + "6776": 2, + "6778": 1, + "6779": 1, + "6780": 2, + "6783": 4, + "6784": 1, + "6786": 1, + "6791": 2, + "6792": 2, + "6793": 4, + "6794": 1, + "6797": 1, + "6798": 3, + "6800": 2, + "6801": 2, + "6802": 1, + "6807": 1, + "6808": 2, + "6809": 3, + "6810": 4, + "6811": 4, + "6812": 1, + "6813": 2, + "6814": 4, + "6815": 2, + "6816": 1, + "6817": 2, + "6819": 3, + "6820": 2, + "6822": 7, + "6823": 1, + "6824": 3, + "6825": 2, + "6826": 5, + "6832": 2, + "6833": 2, + "6838": 2, + "6839": 1, + "6844": 1, + "6846": 2, + "6849": 1, + "6850": 1, + "6852": 1, + "6853": 1, + "6859": 2, + "6861": 1, + "6862": 3, + "6863": 1, + "6864": 1, + "6866": 2, + "6867": 5, + "6869": 1, + "6870": 2, + "6873": 1, + "6875": 1, + "6878": 1, + "6880": 1, + "6881": 2, + "6883": 1, + "6884": 1, + "6885": 1, + "6886": 3, + "6889": 1, + "6890": 2, + "6893": 2, + "6896": 1, + "6897": 2, + "6898": 1, + "6901": 3, + "6903": 1, + "6904": 1, + "6905": 2, + "6907": 3, + "6908": 1, + "6910": 1, + "6913": 1, + "6916": 1, + "6917": 1, + "6920": 1, + "6921": 1, + "6925": 2, + "6930": 3, + "6934": 2, + "6935": 1, + "6936": 4, + "6937": 2, + "6938": 2, + "6939": 1, + "6940": 3, + "6941": 1, + "6943": 1, + "6947": 4, + "6948": 1, + "6949": 5, + "6950": 1, + "6952": 2, + "6953": 2, + "6955": 1, + "6957": 2, + "6958": 2, + "6960": 2, + "6961": 3, + "6963": 1, + "6964": 1, + "6965": 1, + "6966": 1, + "6974": 1, + "6975": 1, + "6976": 2, + "6977": 1, + "6980": 1, + "6983": 1, + "6985": 1, + "6986": 2, + "6987": 2, + "6988": 2, + "6989": 3, + "6990": 2, + "6991": 2, + "6993": 2, + "6995": 3, + "7000": 3, + "7002": 1, + "7007": 1, + "7008": 2, + "7009": 1, + "7010": 2, + "7011": 1, + "7014": 1, + "7015": 1, + "7016": 1, + "7017": 2, + "7020": 1, + "7022": 1, + "7030": 2, + "7031": 1, + "7032": 1, + "7034": 1, + "7035": 1, + "7037": 2, + "7038": 4, + "7039": 2, + "7040": 3, + "7042": 2, + "7046": 1, + "7049": 1, + "7051": 2, + "7059": 1, + "7061": 2, + "7062": 4, + "7063": 2, + "7064": 2, + "7065": 2, + "7066": 1, + "7067": 2, + "7068": 4, + "7069": 2, + "7070": 1, + "7072": 1, + "7078": 3, + "7084": 3, + "7086": 2, + "7087": 1, + "7088": 2, + "7089": 4, + "7090": 1, + "7091": 3, + "7092": 2, + "7093": 2, + "7094": 1, + "7100": 1, + "7102": 1, + "7103": 3, + "7104": 4, + "7105": 1, + "7106": 2, + "7107": 3, + "7110": 2, + "7112": 1, + "7116": 3, + "7118": 1, + "7119": 2, + "7122": 1, + "7123": 1, + "7125": 2, + "7134": 2, + "7135": 1, + "7137": 1, + "7138": 3, + "7139": 1, + "7140": 1, + "7144": 1, + "7146": 1, + "7159": 1, + "7162": 1, + "7163": 1, + "7166": 1, + "7168": 2, + "7172": 2, + "7175": 1, + "7176": 1, + "7178": 1, + "7183": 1, + "7185": 1, + "7189": 1, + "7190": 1, + "7191": 1, + "7202": 1, + "7203": 1, + "7205": 1, + "7208": 1, + "7209": 1, + "7212": 1, + "7213": 1, + "7215": 1, + "7217": 1, + "7219": 1, + "7225": 2, + "7327": 1, + "7336": 1, + "7342": 1, + "7343": 1, + "7344": 1, + "7346": 2, + "7347": 1, + "7349": 1, + "7354": 2, + "7355": 1, + "7357": 1, + "7361": 3, + "7362": 1, + "7364": 1, + "7365": 1, + "7366": 2, + "7367": 3, + "7368": 1, + "7370": 1, + "7372": 1, + "7378": 1, + "7380": 1, + "7401": 1, + "7406": 1, + "7411": 1, + "7415": 1, + "7416": 1, + "7418": 1, + "7429": 1, + "7430": 1, + "7442": 1, + "7445": 1, + "7451": 1, + "7457": 1, + "7514": 1, + "7535": 1, + "7538": 1, + "7572": 1, + "7577": 1, + "7580": 1, + "7585": 1, + "7620": 2, + "7621": 2, + "7655": 1, + "7661": 2, + "7666": 1, + "7732": 2, + "7744": 2, + "7753": 1, + "7818": 1, + "7819": 1, + "7856": 1, + "7858": 1, + "7870": 1, + "7873": 1, + "7894": 2, + "7899": 2, + "7904": 1, + "7906": 1, + "7921": 1, + "7922": 1, + "7927": 1, + "7930": 1, + "7962": 1, + "7963": 1, + "7971": 1, + "7972": 1, + "7987": 1, + "7994": 4, + "7996": 2, + "7997": 1, + "8004": 2, + "8012": 1, + "8014": 1, + "8015": 2, + "8017": 2, + "8020": 2, + "8039": 2, + "8059": 2, + "8089": 1, + "8091": 1, + "8100": 2, + "8102": 2, + "8132": 2, + "8136": 1, + "8137": 1, + "8141": 1, + "8144": 1, + "8205": 1, + "8209": 1, + "8212": 1, + "8214": 1, + "8218": 1, + "8259": 1 + }, + "started": "2020-09-07T18:50:17.673Z", + "trafficStats": { + "incomingCompressionRatio": 0.05154142277258159, + "incomingOctetsAppLevel": 131085419, + "incomingOctetsWebSocketLevel": 6756329, + "incomingOctetsWireLevel": 6764329, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0011840749614176575, + "outgoingCompressionRatio": 0.05503413770222606, + "outgoingOctetsAppLevel": 131085419, + "outgoingOctetsWebSocketLevel": 7214173, + "outgoingOctetsWireLevel": 7244095, + "outgoingWebSocketFrames": 7578, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.004147668762587202, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 6578, + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "3": 3, + "4": 3, + "5": 3, + "6": 1, + "7": 2, + "8": 1, + "9": 2, + "11": 1, + "12": 3, + "13": 2, + "14": 5, + "16": 2, + "17": 1, + "18": 2, + "19": 1, + "21": 1, + "22": 1, + "25": 5, + "28": 2, + "29": 2, + "30": 3, + "31": 5, + "32": 5, + "33": 2, + "34": 1, + "35": 2, + "36": 3, + "37": 2, + "40": 3, + "41": 1, + "42": 1, + "43": 1, + "44": 1, + "45": 3, + "48": 1, + "50": 1, + "51": 2, + "52": 1, + "57": 3, + "58": 2, + "60": 1, + "61": 3, + "63": 3, + "64": 3, + "67": 5, + "68": 3, + "69": 1, + "72": 1, + "73": 2, + "75": 2, + "76": 1, + "77": 1, + "79": 1, + "80": 3, + "81": 2, + "82": 1, + "83": 3, + "84": 1, + "85": 7, + "86": 3, + "87": 3, + "88": 1, + "89": 2, + "90": 2, + "91": 3, + "95": 1, + "96": 4, + "97": 2, + "99": 1, + "100": 3, + "101": 4, + "102": 1, + "103": 5, + "104": 3, + "107": 1, + "108": 5, + "110": 1, + "111": 1, + "112": 1, + "113": 1, + "115": 1, + "119": 2, + "120": 1, + "121": 2, + "123": 3, + "124": 6, + "125": 3, + "130": 2, + "131": 4, + "133": 1, + "135": 2, + "136": 2, + "137": 3, + "138": 6, + "141": 2, + "142": 3, + "147": 1, + "148": 1, + "151": 1, + "152": 1, + "153": 1, + "154": 1, + "155": 1, + "156": 1, + "157": 2, + "159": 3, + "160": 2, + "161": 1, + "162": 1, + "164": 1, + "165": 4, + "166": 1, + "167": 2, + "168": 3, + "169": 3, + "170": 5, + "171": 3, + "172": 8, + "173": 3, + "174": 1, + "175": 4, + "176": 5, + "177": 4, + "178": 2, + "179": 1, + "180": 2, + "181": 2, + "182": 3, + "183": 3, + "184": 5, + "185": 3, + "186": 1, + "187": 5, + "188": 1, + "189": 1, + "190": 2, + "191": 1, + "193": 4, + "194": 2, + "195": 2, + "196": 1, + "197": 2, + "198": 1, + "199": 1, + "200": 1, + "201": 2, + "202": 3, + "203": 2, + "205": 6, + "206": 2, + "207": 1, + "208": 3, + "210": 3, + "211": 1, + "212": 2, + "214": 3, + "216": 1, + "218": 2, + "219": 2, + "222": 1, + "223": 1, + "224": 4, + "225": 1, + "226": 2, + "227": 2, + "228": 3, + "229": 4, + "230": 4, + "231": 2, + "232": 4, + "233": 1, + "234": 3, + "235": 1, + "236": 3, + "237": 3, + "239": 5, + "240": 1, + "241": 4, + "242": 2, + "243": 1, + "244": 1, + "245": 1, + "246": 1, + "247": 2, + "248": 1, + "250": 1, + "251": 2, + "252": 3, + "255": 1, + "256": 2, + "258": 5, + "259": 1, + "260": 3, + "261": 3, + "262": 3, + "263": 1, + "264": 1, + "265": 1, + "266": 2, + "267": 3, + "268": 3, + "269": 1, + "270": 2, + "271": 1, + "273": 1, + "274": 3, + "275": 1, + "276": 1, + "277": 1, + "278": 3, + "279": 1, + "280": 1, + "281": 2, + "282": 3, + "283": 2, + "286": 1, + "292": 3, + "293": 3, + "295": 2, + "296": 2, + "297": 1, + "301": 1, + "302": 2, + "303": 1, + "305": 1, + "306": 1, + "307": 1, + "308": 1, + "309": 1, + "310": 1, + "311": 1, + "315": 2, + "321": 1, + "322": 2, + "323": 2, + "324": 4, + "325": 1, + "329": 1, + "330": 3, + "333": 1, + "338": 2, + "339": 2, + "340": 1, + "341": 5, + "342": 1, + "344": 1, + "345": 1, + "348": 2, + "349": 1, + "350": 1, + "357": 1, + "368": 1, + "374": 1, + "408": 1, + "409": 3, + "448": 1, + "449": 1, + "450": 1, + "452": 1, + "453": 1, + "456": 1, + "459": 1, + "460": 1, + "463": 1, + "464": 1, + "468": 1, + "469": 1, + "470": 2, + "473": 2, + "474": 3, + "475": 2, + "476": 1, + "477": 1, + "478": 1, + "479": 2, + "480": 3, + "487": 1, + "489": 2, + "491": 1, + "508": 1, + "511": 1, + "513": 1, + "527": 2, + "531": 1, + "535": 1, + "539": 2, + "550": 1, + "553": 1, + "560": 1, + "566": 1, + "577": 1, + "578": 1, + "579": 1, + "581": 1, + "583": 1, + "584": 2, + "585": 1, + "589": 1, + "594": 1, + "596": 1, + "598": 2, + "608": 1, + "609": 1, + "627": 1, + "635": 1, + "637": 1, + "638": 2, + "639": 2, + "640": 3, + "641": 1, + "642": 1, + "643": 2, + "645": 1, + "646": 1, + "648": 2, + "651": 1, + "657": 1, + "664": 2, + "665": 1, + "671": 1, + "673": 1, + "683": 1, + "688": 1, + "691": 1, + "697": 1, + "720": 1, + "730": 2, + "731": 2, + "762": 1, + "767": 1, + "773": 1, + "778": 1, + "784": 1, + "787": 1, + "788": 1, + "792": 1, + "798": 1, + "802": 1, + "805": 2, + "806": 1, + "808": 2, + "809": 1, + "810": 1, + "813": 1, + "814": 3, + "818": 1, + "819": 1, + "820": 2, + "821": 3, + "823": 1, + "824": 1, + "825": 1, + "826": 4, + "827": 2, + "828": 1, + "829": 1, + "830": 2, + "831": 1, + "833": 1, + "835": 1, + "837": 5, + "838": 2, + "843": 2, + "845": 3, + "848": 3, + "850": 1, + "857": 1, + "858": 2, + "859": 1, + "861": 4, + "862": 2, + "863": 1, + "864": 1, + "866": 4, + "867": 4, + "868": 1, + "869": 1, + "871": 3, + "873": 2, + "876": 4, + "877": 5, + "878": 2, + "879": 1, + "880": 3, + "882": 1, + "883": 1, + "884": 1, + "885": 1, + "886": 1, + "888": 1, + "889": 1, + "891": 2, + "892": 1, + "893": 4, + "895": 5, + "898": 1, + "899": 4, + "900": 1, + "901": 2, + "903": 2, + "904": 2, + "906": 5, + "907": 3, + "908": 3, + "909": 2, + "910": 1, + "911": 3, + "912": 4, + "913": 1, + "914": 1, + "915": 3, + "917": 2, + "918": 2, + "919": 4, + "920": 3, + "921": 4, + "922": 4, + "923": 2, + "924": 3, + "925": 1, + "926": 1, + "928": 2, + "929": 4, + "930": 1, + "931": 1, + "932": 1, + "934": 1, + "936": 3, + "937": 3, + "938": 1, + "939": 1, + "941": 1, + "943": 2, + "945": 1, + "947": 1, + "948": 5, + "951": 4, + "952": 1, + "953": 3, + "954": 2, + "955": 2, + "956": 1, + "958": 3, + "960": 3, + "961": 5, + "962": 1, + "963": 2, + "964": 2, + "965": 1, + "967": 2, + "969": 3, + "970": 1, + "971": 1, + "972": 4, + "973": 2, + "974": 3, + "975": 1, + "976": 1, + "977": 2, + "978": 5, + "979": 2, + "980": 1, + "982": 1, + "983": 1, + "984": 2, + "985": 2, + "986": 2, + "987": 2, + "988": 1, + "990": 1, + "992": 3, + "994": 1, + "995": 1, + "996": 1, + "997": 3, + "998": 4, + "999": 1, + "1000": 1, + "1001": 1, + "1003": 2, + "1004": 1, + "1006": 1, + "1007": 2, + "1008": 2, + "1009": 3, + "1010": 4, + "1011": 5, + "1012": 2, + "1014": 4, + "1015": 4, + "1017": 2, + "1018": 7, + "1019": 2, + "1020": 4, + "1021": 4, + "1022": 3, + "1023": 4, + "1024": 2, + "1025": 1, + "1027": 5, + "1028": 6578 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333731266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882627534f1619d" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "627534f1" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_4_17.html b/autobahn/client/tungstenite_case_12_4_17.html new file mode 100644 index 0000000..2703068 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_17.html @@ -0,0 +1,1490 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.4.17 : Pass - 6078 ms @ 2020-09-07T18:50:23.878Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=372&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ZxbTCX1gBYfdtmFlENhqHg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: a969kHBnol38O0ZRPwPqzOadhQI=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
5292210584
5293210586
529815298
5301210602
530315303
530615306
531415314
531615316
537915379
538515385
538715387
538815388
5390210780
5421210842
5424210848
543315433
543615436
5465210930
5492210984
5510211020
551215512
5515211030
5519211038
552015520
552115521
5526211052
552715527
5535211070
5537211074
5538211076
556315563
556415564
5573211146
560815608
561115611
5619211238
563415634
563515635
563615636
563715637
563815638
563915639
5643211286
566615666
566915669
572215722
572315723
573615736
576915769
577315773
578515785
5800211600
5810211620
582015820
582415824
584115841
585215852
585415854
586115861
588315883
589015890
592515925
592615926
5927211854
596815968
597015970
600816008
601016010
601816018
608916089
609016090
609816098
6100212200
610116101
6102212204
610916109
6114212228
6119212238
612716127
612816128
6157318471
616016160
6163318489
6165212330
616616166
6167212334
6168212336
616916169
617116171
617216172
617516175
6186212372
619216192
619416194
623316233
630216302
630816308
631116311
631516315
631816318
632116321
632416324
632816328
6329212658
633116331
633316333
633516335
634116341
6343212686
6344212688
634616346
6348212696
635916359
636016360
636216362
636916369
637116371
637316373
638116381
638316383
638516385
638816388
6390212780
639716397
6399212798
6401425604
640316403
641516415
6416319248
641716417
6418532090
641916419
6420319260
642516425
642616426
642816428
643216432
6433212866
6435319305
644716447
645216452
6453212906
6456212912
645716457
6465212930
6467212934
6468319404
646916469
6470212940
6471212942
647316473
6474319422
647516475
6481212962
6483212966
6484212968
6485425940
648616486
648716487
6488319464
649016490
6492212984
649416494
649516495
649716497
6498319494
6501319503
6502213004
6503213006
650416504
650516505
651016510
651116511
651216512
6515319545
6517213034
651916519
652216522
6524213048
6526213052
652716527
652916529
653216532
6540213080
654216542
6544213088
6546213092
6550213100
655116551
655216552
6553319659
655416554
6556319668
6557213114
6559319677
6560426240
6561213122
656316563
656516565
656716567
6568319704
656916569
657116571
657216572
6575213150
657616576
658416584
658916589
659316593
659516595
6596213192
659916599
6600426400
660116601
660216602
660416604
6605319815
6606213212
660816608
661016610
661316613
661516615
661616616
661816618
6619213238
6620319860
6621213242
6624213248
6626213252
662916629
663216632
663316633
663616636
663916639
664016640
664116641
6646213292
6648213296
665016650
665116651
6652213304
665316653
6654213308
665516655
665716657
6659319977
6661319983
6662213324
6665213330
6666319998
6668213336
6669213338
667116671
6672213344
667316673
667416674
6675426700
6676426704
6677213354
668216682
668916689
6690426760
6692320076
6693426772
6695213390
6696320088
669716697
669916699
6700320100
6703213406
670716707
671016710
6713213426
671516715
671616716
671916719
672016720
672216722
672316723
6724320172
6729213458
6731213462
673416734
6735213470
6736213472
6737213474
6738213476
674016740
6741320223
674216742
674516745
674616746
674816748
6750213500
675116751
675316753
6755320265
6756213512
6758213516
6759213518
6760427040
6761320283
676416764
6765213530
6766320298
6767427068
6768533840
676916769
6770213540
6771213542
6772213544
677416774
6776213552
677816778
677916779
6780213560
6783427132
678416784
678616786
6791213582
6792213584
6793427172
679416794
679716797
6798320394
6800213600
6801213602
680216802
680716807
6808213616
6809320427
6810427240
6811427244
681216812
6813213626
6814427256
6815213630
681616816
6817213634
6819320457
6820213640
6822747754
682316823
6824320472
6825213650
6826534130
6832213664
6833213666
6838213676
683916839
684416844
6846213692
684916849
685016850
685216852
685316853
6859213718
686116861
6862320586
686316863
686416864
6866213732
6867534335
686916869
6870213740
687316873
687516875
687816878
688016880
6881213762
688316883
688416884
688516885
6886320658
688916889
6890213780
6893213786
689616896
6897213794
689816898
6901320703
690316903
690416904
6905213810
6907320721
690816908
691016910
691316913
691616916
691716917
692016920
692116921
6925213850
6930320790
6934213868
693516935
6936427744
6937213874
6938213876
693916939
6940320820
694116941
694316943
6947427788
694816948
6949534745
695016950
6952213904
6953213906
695516955
6957213914
6958213916
6960213920
6961320883
696316963
696416964
696516965
696616966
697416974
697516975
6976213952
697716977
698016980
698316983
698516985
6986213972
6987213974
6988213976
6989320967
6990213980
6991213982
6993213986
6995320985
7000321000
700217002
700717007
7008214016
700917009
7010214020
701117011
701417014
701517015
701617016
7017214034
702017020
702217022
7030214060
703117031
703217032
703417034
703517035
7037214074
7038428152
7039214078
7040321120
7042214084
704617046
704917049
7051214102
705917059
7061214122
7062428248
7063214126
7064214128
7065214130
706617066
7067214134
7068428272
7069214138
707017070
707217072
7078321234
7084321252
7086214172
708717087
7088214176
7089428356
709017090
7091321273
7092214184
7093214186
709417094
710017100
710217102
7103321309
7104428416
710517105
7106214212
7107321321
7110214220
711217112
7116321348
711817118
7119214238
712217122
712317123
7125214250
7134214268
713517135
713717137
7138321414
713917139
714017140
714417144
714617146
715917159
716217162
716317163
716617166
7168214336
7172214344
717517175
717617176
717817178
718317183
718517185
718917189
719017190
719117191
720217202
720317203
720517205
720817208
720917209
721217212
721317213
721517215
721717217
721917219
7225214450
732717327
733617336
734217342
734317343
734417344
7346214692
734717347
734917349
7354214708
735517355
735717357
7361322083
736217362
736417364
736517365
7366214732
7367322101
736817368
737017370
737217372
737817378
738017380
740117401
740617406
741117411
741517415
741617416
741817418
742917429
743017430
744217442
744517445
745117451
745717457
751417514
753517535
753817538
757217572
757717577
758017580
758517585
7620215240
7621215242
765517655
7661215322
766617666
7732215464
7744215488
775317753
781817818
781917819
785617856
785817858
787017870
787317873
7894215788
7899215798
790417904
790617906
792117921
792217922
792717927
793017930
796217962
796317963
797117971
797217972
798717987
7994431976
7996215992
799717997
8004216008
801218012
801418014
8015216030
8017216034
8020216040
8039216078
8059216118
808918089
809118091
8100216200
8102216204
8132216264
813618136
813718137
814118141
814418144
820518205
820918209
821218212
821418214
821818218
825918259
Total10026764594
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
31262
40140
41141
612122
632126
642128
68168
732146
77177
79179
802160
81181
852170
902180
1042208
1242248
1541154
1561156
1672334
1721172
1741174
2052410
2101210
2141214
2181218
2231223
2521252
2821282
2861286
2921292
2931293
2971297
3391339
183711837
183835514
184311843
184411844
184811848
184911849
185311853
186111861
186211862
192411924
193011930
193123862
193623872
196723934
197111971
197211972
198611986
198811988
201624032
203924078
205324106
205724114
205912059
206436192
206612066
207212072
207524150
208112081
208236246
208612086
208712087
210724214
211724234
215012150
215312153
215824316
217112171
217312173
217412174
217512175
217812178
217936537
219912199
220312203
225324506
227712277
231912319
232312323
232912329
233024660
234124682
236312363
236912369
238712387
239712397
239812398
240512405
241612416
242212422
245612456
245737371
249612496
249812498
253512535
253912539
255912559
262512625
262612626
262712627
262912629
263112631
263225264
263312633
263712637
264212642
264412644
264625292
265612656
265712657
268312683
268512685
268625372
268725374
268838064
268912689
269012690
269125382
269412694
269612696
269912699
270512705
271225424
271312713
271912719
272112721
276812768
283212832
283512835
283612836
284012840
284612846
285012850
285325706
285412854
285625712
285712857
285812858
286612866
286812868
286938607
287112871
2874411496
287525750
287612876
287825756
287912879
288112881
288312883
288525770
288612886
289125782
289338679
289612896
289812898
290512905
290625812
290712907
2909411636
291025820
291112911
291212912
2914411656
291538745
291612916
291712917
291938757
292125842
2924411696
2925514625
292625852
292712927
292838784
293012930
293112931
293212932
293312933
293412934
293612936
293712937
293925878
294012940
2941411764
2943514715
294612946
2947411788
294925898
295125902
295225904
2954411816
295512955
295638868
295725914
295812958
295938877
296025920
296112961
296212962
296338889
296525930
296625932
2967411868
296838904
296925938
2970411880
297125942
297238916
297312973
297412974
297625952
2977411908
297812978
297912979
298012980
298212982
298438952
298538955
298612986
298712987
298912989
299312993
2996411984
2999411996
300013000
300139003
300226004
300326006
300413004
300639018
300839024
3009515045
301126022
301213012
301513015
301739051
301813018
301913019
3020412080
302126042
302239066
302313023
302413024
302526050
302639078
302726054
302813028
303013030
303113031
303226064
303326066
303426068
303526070
303613036
303813038
304013040
304213042
304313043
304413044
304539135
304626092
304713047
304813048
304913049
305526110
305626112
305739171
3058412232
3059515295
306026120
3062412248
306326126
306526130
3066618396
306713067
3068412272
3069412276
307039210
307139213
307226144
307313073
3075412300
307713077
307826156
307939237
308013080
308213082
308313083
308513085
308639258
308726174
308826176
309013090
309113091
309226184
309313093
309513095
309939297
310226204
310326206
310439312
310526210
310626212
310726214
310813108
310926218
311026220
311113111
311426228
311613116
311713117
311813118
311939357
312213122
312413124
312526250
312613126
313113131
313226264
313413134
313513135
313713137
313813138
314139423
314226284
314313143
314613146
314926298
315013150
315413154
315513155
315613156
315739471
315813158
3159515795
316039480
316139483
316213162
316326326
316539495
316913169
3170412680
317126342
317313173
317426348
3175412700
317613176
3177412708
317813178
318113181
318239546
318413184
318513185
318613186
318713187
318913189
319326386
319413194
319513195
319726394
319839594
319926398
320213202
320313203
320513205
320726414
320826416
320939627
3210619260
321326426
321439642
321913219
322013220
322413224
322513225
322926458
323139693
323226464
323313233
323413234
323613236
3237412948
323813238
324039720
324139723
3242516210
324339729
3244722708
324539735
3247412988
3248516240
3249412996
325026500
325113251
325226504
325326506
325439762
325539765
3256516280
325739771
325813258
3259516295
326013260
326113261
326226524
326313263
3265413060
326626532
326726534
326813268
326926538
327013270
327113271
327213272
327326546
327439822
327526550
327726554
327826556
327913279
328039840
328226564
328313283
328426568
328626572
328813288
329013290
329126582
329413294
3296413184
329713297
329826596
329926598
330039900
330139903
3302413208
330326606
3304413216
330513305
330639918
330713307
330839924
330939927
3311516555
331213312
3313413252
331426628
331513315
331613316
331713317
331813318
331926638
332013320
332213322
332326646
332426648
332713327
332826656
3330516650
333113331
333239996
333339999
3334310002
333513335
333613336
333713337
333826676
3339310017
3340310020
334113341
334226684
334513345
3346310038
334813348
334913349
3350310050
335113351
335213352
335313353
335526710
336426728
336726734
336826736
337313373
337426748
337513375
337713377
337813378
337913379
338013380
338113381
338213382
338313383
338713387
339426788
339526790
3396413584
339713397
340113401
3402310206
340513405
341026820
341213412
3413517065
341413414
341613416
341713417
342026840
352113521
352413524
352513525
352813528
353113531
353213532
353513535
353613536
354013540
354113541
354227084
354527090
3546310638
354727094
354813548
354913549
355013550
355127102
3552310656
356127122
358013580
358513585
359927198
360313603
360713607
361127222
362213622
362513625
363213632
363813638
369913699
371713717
372013720
375513755
376013760
376313763
376913769
380227604
380327606
383413834
383913839
384513845
385013850
390927818
392027840
393913939
399327986
403714037
403914039
405028100
407028140
407528150
407614076
407814078
409014090
409114091
409514095
409914099
410010444280400
Total20467222553
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
01044
11000
81
Total2045
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333732266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88827f38bf9a7cd0
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3766333862663961
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_4_17.json b/autobahn/client/tungstenite_case_12_4_17.json new file mode 100644 index 0000000..bfadd41 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_17.json @@ -0,0 +1,1337 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 372, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 6078, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=372&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ZxbTCX1gBYfdtmFlENhqHg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: a969kHBnol38O0ZRPwPqzOadhQI=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.4.17", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "5292": 2, + "5293": 2, + "5298": 1, + "5301": 2, + "5303": 1, + "5306": 1, + "5314": 1, + "5316": 1, + "5379": 1, + "5385": 1, + "5387": 1, + "5388": 1, + "5390": 2, + "5421": 2, + "5424": 2, + "5433": 1, + "5436": 1, + "5465": 2, + "5492": 2, + "5510": 2, + "5512": 1, + "5515": 2, + "5519": 2, + "5520": 1, + "5521": 1, + "5526": 2, + "5527": 1, + "5535": 2, + "5537": 2, + "5538": 2, + "5563": 1, + "5564": 1, + "5573": 2, + "5608": 1, + "5611": 1, + "5619": 2, + "5634": 1, + "5635": 1, + "5636": 1, + "5637": 1, + "5638": 1, + "5639": 1, + "5643": 2, + "5666": 1, + "5669": 1, + "5722": 1, + "5723": 1, + "5736": 1, + "5769": 1, + "5773": 1, + "5785": 1, + "5800": 2, + "5810": 2, + "5820": 1, + "5824": 1, + "5841": 1, + "5852": 1, + "5854": 1, + "5861": 1, + "5883": 1, + "5890": 1, + "5925": 1, + "5926": 1, + "5927": 2, + "5968": 1, + "5970": 1, + "6008": 1, + "6010": 1, + "6018": 1, + "6089": 1, + "6090": 1, + "6098": 1, + "6100": 2, + "6101": 1, + "6102": 2, + "6109": 1, + "6114": 2, + "6119": 2, + "6127": 1, + "6128": 1, + "6157": 3, + "6160": 1, + "6163": 3, + "6165": 2, + "6166": 1, + "6167": 2, + "6168": 2, + "6169": 1, + "6171": 1, + "6172": 1, + "6175": 1, + "6186": 2, + "6192": 1, + "6194": 1, + "6233": 1, + "6302": 1, + "6308": 1, + "6311": 1, + "6315": 1, + "6318": 1, + "6321": 1, + "6324": 1, + "6328": 1, + "6329": 2, + "6331": 1, + "6333": 1, + "6335": 1, + "6341": 1, + "6343": 2, + "6344": 2, + "6346": 1, + "6348": 2, + "6359": 1, + "6360": 1, + "6362": 1, + "6369": 1, + "6371": 1, + "6373": 1, + "6381": 1, + "6383": 1, + "6385": 1, + "6388": 1, + "6390": 2, + "6397": 1, + "6399": 2, + "6401": 4, + "6403": 1, + "6415": 1, + "6416": 3, + "6417": 1, + "6418": 5, + "6419": 1, + "6420": 3, + "6425": 1, + "6426": 1, + "6428": 1, + "6432": 1, + "6433": 2, + "6435": 3, + "6447": 1, + "6452": 1, + "6453": 2, + "6456": 2, + "6457": 1, + "6465": 2, + "6467": 2, + "6468": 3, + "6469": 1, + "6470": 2, + "6471": 2, + "6473": 1, + "6474": 3, + "6475": 1, + "6481": 2, + "6483": 2, + "6484": 2, + "6485": 4, + "6486": 1, + "6487": 1, + "6488": 3, + "6490": 1, + "6492": 2, + "6494": 1, + "6495": 1, + "6497": 1, + "6498": 3, + "6501": 3, + "6502": 2, + "6503": 2, + "6504": 1, + "6505": 1, + "6510": 1, + "6511": 1, + "6512": 1, + "6515": 3, + "6517": 2, + "6519": 1, + "6522": 1, + "6524": 2, + "6526": 2, + "6527": 1, + "6529": 1, + "6532": 1, + "6540": 2, + "6542": 1, + "6544": 2, + "6546": 2, + "6550": 2, + "6551": 1, + "6552": 1, + "6553": 3, + "6554": 1, + "6556": 3, + "6557": 2, + "6559": 3, + "6560": 4, + "6561": 2, + "6563": 1, + "6565": 1, + "6567": 1, + "6568": 3, + "6569": 1, + "6571": 1, + "6572": 1, + "6575": 2, + "6576": 1, + "6584": 1, + "6589": 1, + "6593": 1, + "6595": 1, + "6596": 2, + "6599": 1, + "6600": 4, + "6601": 1, + "6602": 1, + "6604": 1, + "6605": 3, + "6606": 2, + "6608": 1, + "6610": 1, + "6613": 1, + "6615": 1, + "6616": 1, + "6618": 1, + "6619": 2, + "6620": 3, + "6621": 2, + "6624": 2, + "6626": 2, + "6629": 1, + "6632": 1, + "6633": 1, + "6636": 1, + "6639": 1, + "6640": 1, + "6641": 1, + "6646": 2, + "6648": 2, + "6650": 1, + "6651": 1, + "6652": 2, + "6653": 1, + "6654": 2, + "6655": 1, + "6657": 1, + "6659": 3, + "6661": 3, + "6662": 2, + "6665": 2, + "6666": 3, + "6668": 2, + "6669": 2, + "6671": 1, + "6672": 2, + "6673": 1, + "6674": 1, + "6675": 4, + "6676": 4, + "6677": 2, + "6682": 1, + "6689": 1, + "6690": 4, + "6692": 3, + "6693": 4, + "6695": 2, + "6696": 3, + "6697": 1, + "6699": 1, + "6700": 3, + "6703": 2, + "6707": 1, + "6710": 1, + "6713": 2, + "6715": 1, + "6716": 1, + "6719": 1, + "6720": 1, + "6722": 1, + "6723": 1, + "6724": 3, + "6729": 2, + "6731": 2, + "6734": 1, + "6735": 2, + "6736": 2, + "6737": 2, + "6738": 2, + "6740": 1, + "6741": 3, + "6742": 1, + "6745": 1, + "6746": 1, + "6748": 1, + "6750": 2, + "6751": 1, + "6753": 1, + "6755": 3, + "6756": 2, + "6758": 2, + "6759": 2, + "6760": 4, + "6761": 3, + "6764": 1, + "6765": 2, + "6766": 3, + "6767": 4, + "6768": 5, + "6769": 1, + "6770": 2, + "6771": 2, + "6772": 2, + "6774": 1, + "6776": 2, + "6778": 1, + "6779": 1, + "6780": 2, + "6783": 4, + "6784": 1, + "6786": 1, + "6791": 2, + "6792": 2, + "6793": 4, + "6794": 1, + "6797": 1, + "6798": 3, + "6800": 2, + "6801": 2, + "6802": 1, + "6807": 1, + "6808": 2, + "6809": 3, + "6810": 4, + "6811": 4, + "6812": 1, + "6813": 2, + "6814": 4, + "6815": 2, + "6816": 1, + "6817": 2, + "6819": 3, + "6820": 2, + "6822": 7, + "6823": 1, + "6824": 3, + "6825": 2, + "6826": 5, + "6832": 2, + "6833": 2, + "6838": 2, + "6839": 1, + "6844": 1, + "6846": 2, + "6849": 1, + "6850": 1, + "6852": 1, + "6853": 1, + "6859": 2, + "6861": 1, + "6862": 3, + "6863": 1, + "6864": 1, + "6866": 2, + "6867": 5, + "6869": 1, + "6870": 2, + "6873": 1, + "6875": 1, + "6878": 1, + "6880": 1, + "6881": 2, + "6883": 1, + "6884": 1, + "6885": 1, + "6886": 3, + "6889": 1, + "6890": 2, + "6893": 2, + "6896": 1, + "6897": 2, + "6898": 1, + "6901": 3, + "6903": 1, + "6904": 1, + "6905": 2, + "6907": 3, + "6908": 1, + "6910": 1, + "6913": 1, + "6916": 1, + "6917": 1, + "6920": 1, + "6921": 1, + "6925": 2, + "6930": 3, + "6934": 2, + "6935": 1, + "6936": 4, + "6937": 2, + "6938": 2, + "6939": 1, + "6940": 3, + "6941": 1, + "6943": 1, + "6947": 4, + "6948": 1, + "6949": 5, + "6950": 1, + "6952": 2, + "6953": 2, + "6955": 1, + "6957": 2, + "6958": 2, + "6960": 2, + "6961": 3, + "6963": 1, + "6964": 1, + "6965": 1, + "6966": 1, + "6974": 1, + "6975": 1, + "6976": 2, + "6977": 1, + "6980": 1, + "6983": 1, + "6985": 1, + "6986": 2, + "6987": 2, + "6988": 2, + "6989": 3, + "6990": 2, + "6991": 2, + "6993": 2, + "6995": 3, + "7000": 3, + "7002": 1, + "7007": 1, + "7008": 2, + "7009": 1, + "7010": 2, + "7011": 1, + "7014": 1, + "7015": 1, + "7016": 1, + "7017": 2, + "7020": 1, + "7022": 1, + "7030": 2, + "7031": 1, + "7032": 1, + "7034": 1, + "7035": 1, + "7037": 2, + "7038": 4, + "7039": 2, + "7040": 3, + "7042": 2, + "7046": 1, + "7049": 1, + "7051": 2, + "7059": 1, + "7061": 2, + "7062": 4, + "7063": 2, + "7064": 2, + "7065": 2, + "7066": 1, + "7067": 2, + "7068": 4, + "7069": 2, + "7070": 1, + "7072": 1, + "7078": 3, + "7084": 3, + "7086": 2, + "7087": 1, + "7088": 2, + "7089": 4, + "7090": 1, + "7091": 3, + "7092": 2, + "7093": 2, + "7094": 1, + "7100": 1, + "7102": 1, + "7103": 3, + "7104": 4, + "7105": 1, + "7106": 2, + "7107": 3, + "7110": 2, + "7112": 1, + "7116": 3, + "7118": 1, + "7119": 2, + "7122": 1, + "7123": 1, + "7125": 2, + "7134": 2, + "7135": 1, + "7137": 1, + "7138": 3, + "7139": 1, + "7140": 1, + "7144": 1, + "7146": 1, + "7159": 1, + "7162": 1, + "7163": 1, + "7166": 1, + "7168": 2, + "7172": 2, + "7175": 1, + "7176": 1, + "7178": 1, + "7183": 1, + "7185": 1, + "7189": 1, + "7190": 1, + "7191": 1, + "7202": 1, + "7203": 1, + "7205": 1, + "7208": 1, + "7209": 1, + "7212": 1, + "7213": 1, + "7215": 1, + "7217": 1, + "7219": 1, + "7225": 2, + "7327": 1, + "7336": 1, + "7342": 1, + "7343": 1, + "7344": 1, + "7346": 2, + "7347": 1, + "7349": 1, + "7354": 2, + "7355": 1, + "7357": 1, + "7361": 3, + "7362": 1, + "7364": 1, + "7365": 1, + "7366": 2, + "7367": 3, + "7368": 1, + "7370": 1, + "7372": 1, + "7378": 1, + "7380": 1, + "7401": 1, + "7406": 1, + "7411": 1, + "7415": 1, + "7416": 1, + "7418": 1, + "7429": 1, + "7430": 1, + "7442": 1, + "7445": 1, + "7451": 1, + "7457": 1, + "7514": 1, + "7535": 1, + "7538": 1, + "7572": 1, + "7577": 1, + "7580": 1, + "7585": 1, + "7620": 2, + "7621": 2, + "7655": 1, + "7661": 2, + "7666": 1, + "7732": 2, + "7744": 2, + "7753": 1, + "7818": 1, + "7819": 1, + "7856": 1, + "7858": 1, + "7870": 1, + "7873": 1, + "7894": 2, + "7899": 2, + "7904": 1, + "7906": 1, + "7921": 1, + "7922": 1, + "7927": 1, + "7930": 1, + "7962": 1, + "7963": 1, + "7971": 1, + "7972": 1, + "7987": 1, + "7994": 4, + "7996": 2, + "7997": 1, + "8004": 2, + "8012": 1, + "8014": 1, + "8015": 2, + "8017": 2, + "8020": 2, + "8039": 2, + "8059": 2, + "8089": 1, + "8091": 1, + "8100": 2, + "8102": 2, + "8132": 2, + "8136": 1, + "8137": 1, + "8141": 1, + "8144": 1, + "8205": 1, + "8209": 1, + "8212": 1, + "8214": 1, + "8218": 1, + "8259": 1 + }, + "started": "2020-09-07T18:50:23.878Z", + "trafficStats": { + "incomingCompressionRatio": 0.05154142277258159, + "incomingOctetsAppLevel": 131085419, + "incomingOctetsWebSocketLevel": 6756329, + "incomingOctetsWireLevel": 6764329, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0011840749614176575, + "outgoingCompressionRatio": 0.05503413770222606, + "outgoingOctetsAppLevel": 131085419, + "outgoingOctetsWebSocketLevel": 7214173, + "outgoingOctetsWireLevel": 7222297, + "outgoingWebSocketFrames": 2044, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0011261166040792202, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 1044, + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "31": 2, + "40": 1, + "41": 1, + "61": 2, + "63": 2, + "64": 2, + "68": 1, + "73": 2, + "77": 1, + "79": 1, + "80": 2, + "81": 1, + "85": 2, + "90": 2, + "104": 2, + "124": 2, + "154": 1, + "156": 1, + "167": 2, + "172": 1, + "174": 1, + "205": 2, + "210": 1, + "214": 1, + "218": 1, + "223": 1, + "252": 1, + "282": 1, + "286": 1, + "292": 1, + "293": 1, + "297": 1, + "339": 1, + "1837": 1, + "1838": 3, + "1843": 1, + "1844": 1, + "1848": 1, + "1849": 1, + "1853": 1, + "1861": 1, + "1862": 1, + "1924": 1, + "1930": 1, + "1931": 2, + "1936": 2, + "1967": 2, + "1971": 1, + "1972": 1, + "1986": 1, + "1988": 1, + "2016": 2, + "2039": 2, + "2053": 2, + "2057": 2, + "2059": 1, + "2064": 3, + "2066": 1, + "2072": 1, + "2075": 2, + "2081": 1, + "2082": 3, + "2086": 1, + "2087": 1, + "2107": 2, + "2117": 2, + "2150": 1, + "2153": 1, + "2158": 2, + "2171": 1, + "2173": 1, + "2174": 1, + "2175": 1, + "2178": 1, + "2179": 3, + "2199": 1, + "2203": 1, + "2253": 2, + "2277": 1, + "2319": 1, + "2323": 1, + "2329": 1, + "2330": 2, + "2341": 2, + "2363": 1, + "2369": 1, + "2387": 1, + "2397": 1, + "2398": 1, + "2405": 1, + "2416": 1, + "2422": 1, + "2456": 1, + "2457": 3, + "2496": 1, + "2498": 1, + "2535": 1, + "2539": 1, + "2559": 1, + "2625": 1, + "2626": 1, + "2627": 1, + "2629": 1, + "2631": 1, + "2632": 2, + "2633": 1, + "2637": 1, + "2642": 1, + "2644": 1, + "2646": 2, + "2656": 1, + "2657": 1, + "2683": 1, + "2685": 1, + "2686": 2, + "2687": 2, + "2688": 3, + "2689": 1, + "2690": 1, + "2691": 2, + "2694": 1, + "2696": 1, + "2699": 1, + "2705": 1, + "2712": 2, + "2713": 1, + "2719": 1, + "2721": 1, + "2768": 1, + "2832": 1, + "2835": 1, + "2836": 1, + "2840": 1, + "2846": 1, + "2850": 1, + "2853": 2, + "2854": 1, + "2856": 2, + "2857": 1, + "2858": 1, + "2866": 1, + "2868": 1, + "2869": 3, + "2871": 1, + "2874": 4, + "2875": 2, + "2876": 1, + "2878": 2, + "2879": 1, + "2881": 1, + "2883": 1, + "2885": 2, + "2886": 1, + "2891": 2, + "2893": 3, + "2896": 1, + "2898": 1, + "2905": 1, + "2906": 2, + "2907": 1, + "2909": 4, + "2910": 2, + "2911": 1, + "2912": 1, + "2914": 4, + "2915": 3, + "2916": 1, + "2917": 1, + "2919": 3, + "2921": 2, + "2924": 4, + "2925": 5, + "2926": 2, + "2927": 1, + "2928": 3, + "2930": 1, + "2931": 1, + "2932": 1, + "2933": 1, + "2934": 1, + "2936": 1, + "2937": 1, + "2939": 2, + "2940": 1, + "2941": 4, + "2943": 5, + "2946": 1, + "2947": 4, + "2949": 2, + "2951": 2, + "2952": 2, + "2954": 4, + "2955": 1, + "2956": 3, + "2957": 2, + "2958": 1, + "2959": 3, + "2960": 2, + "2961": 1, + "2962": 1, + "2963": 3, + "2965": 2, + "2966": 2, + "2967": 4, + "2968": 3, + "2969": 2, + "2970": 4, + "2971": 2, + "2972": 3, + "2973": 1, + "2974": 1, + "2976": 2, + "2977": 4, + "2978": 1, + "2979": 1, + "2980": 1, + "2982": 1, + "2984": 3, + "2985": 3, + "2986": 1, + "2987": 1, + "2989": 1, + "2993": 1, + "2996": 4, + "2999": 4, + "3000": 1, + "3001": 3, + "3002": 2, + "3003": 2, + "3004": 1, + "3006": 3, + "3008": 3, + "3009": 5, + "3011": 2, + "3012": 1, + "3015": 1, + "3017": 3, + "3018": 1, + "3019": 1, + "3020": 4, + "3021": 2, + "3022": 3, + "3023": 1, + "3024": 1, + "3025": 2, + "3026": 3, + "3027": 2, + "3028": 1, + "3030": 1, + "3031": 1, + "3032": 2, + "3033": 2, + "3034": 2, + "3035": 2, + "3036": 1, + "3038": 1, + "3040": 1, + "3042": 1, + "3043": 1, + "3044": 1, + "3045": 3, + "3046": 2, + "3047": 1, + "3048": 1, + "3049": 1, + "3055": 2, + "3056": 2, + "3057": 3, + "3058": 4, + "3059": 5, + "3060": 2, + "3062": 4, + "3063": 2, + "3065": 2, + "3066": 6, + "3067": 1, + "3068": 4, + "3069": 4, + "3070": 3, + "3071": 3, + "3072": 2, + "3073": 1, + "3075": 4, + "3077": 1, + "3078": 2, + "3079": 3, + "3080": 1, + "3082": 1, + "3083": 1, + "3085": 1, + "3086": 3, + "3087": 2, + "3088": 2, + "3090": 1, + "3091": 1, + "3092": 2, + "3093": 1, + "3095": 1, + "3099": 3, + "3102": 2, + "3103": 2, + "3104": 3, + "3105": 2, + "3106": 2, + "3107": 2, + "3108": 1, + "3109": 2, + "3110": 2, + "3111": 1, + "3114": 2, + "3116": 1, + "3117": 1, + "3118": 1, + "3119": 3, + "3122": 1, + "3124": 1, + "3125": 2, + "3126": 1, + "3131": 1, + "3132": 2, + "3134": 1, + "3135": 1, + "3137": 1, + "3138": 1, + "3141": 3, + "3142": 2, + "3143": 1, + "3146": 1, + "3149": 2, + "3150": 1, + "3154": 1, + "3155": 1, + "3156": 1, + "3157": 3, + "3158": 1, + "3159": 5, + "3160": 3, + "3161": 3, + "3162": 1, + "3163": 2, + "3165": 3, + "3169": 1, + "3170": 4, + "3171": 2, + "3173": 1, + "3174": 2, + "3175": 4, + "3176": 1, + "3177": 4, + "3178": 1, + "3181": 1, + "3182": 3, + "3184": 1, + "3185": 1, + "3186": 1, + "3187": 1, + "3189": 1, + "3193": 2, + "3194": 1, + "3195": 1, + "3197": 2, + "3198": 3, + "3199": 2, + "3202": 1, + "3203": 1, + "3205": 1, + "3207": 2, + "3208": 2, + "3209": 3, + "3210": 6, + "3213": 2, + "3214": 3, + "3219": 1, + "3220": 1, + "3224": 1, + "3225": 1, + "3229": 2, + "3231": 3, + "3232": 2, + "3233": 1, + "3234": 1, + "3236": 1, + "3237": 4, + "3238": 1, + "3240": 3, + "3241": 3, + "3242": 5, + "3243": 3, + "3244": 7, + "3245": 3, + "3247": 4, + "3248": 5, + "3249": 4, + "3250": 2, + "3251": 1, + "3252": 2, + "3253": 2, + "3254": 3, + "3255": 3, + "3256": 5, + "3257": 3, + "3258": 1, + "3259": 5, + "3260": 1, + "3261": 1, + "3262": 2, + "3263": 1, + "3265": 4, + "3266": 2, + "3267": 2, + "3268": 1, + "3269": 2, + "3270": 1, + "3271": 1, + "3272": 1, + "3273": 2, + "3274": 3, + "3275": 2, + "3277": 2, + "3278": 2, + "3279": 1, + "3280": 3, + "3282": 2, + "3283": 1, + "3284": 2, + "3286": 2, + "3288": 1, + "3290": 1, + "3291": 2, + "3294": 1, + "3296": 4, + "3297": 1, + "3298": 2, + "3299": 2, + "3300": 3, + "3301": 3, + "3302": 4, + "3303": 2, + "3304": 4, + "3305": 1, + "3306": 3, + "3307": 1, + "3308": 3, + "3309": 3, + "3311": 5, + "3312": 1, + "3313": 4, + "3314": 2, + "3315": 1, + "3316": 1, + "3317": 1, + "3318": 1, + "3319": 2, + "3320": 1, + "3322": 1, + "3323": 2, + "3324": 2, + "3327": 1, + "3328": 2, + "3330": 5, + "3331": 1, + "3332": 3, + "3333": 3, + "3334": 3, + "3335": 1, + "3336": 1, + "3337": 1, + "3338": 2, + "3339": 3, + "3340": 3, + "3341": 1, + "3342": 2, + "3345": 1, + "3346": 3, + "3348": 1, + "3349": 1, + "3350": 3, + "3351": 1, + "3352": 1, + "3353": 1, + "3355": 2, + "3364": 2, + "3367": 2, + "3368": 2, + "3373": 1, + "3374": 2, + "3375": 1, + "3377": 1, + "3378": 1, + "3379": 1, + "3380": 1, + "3381": 1, + "3382": 1, + "3383": 1, + "3387": 1, + "3394": 2, + "3395": 2, + "3396": 4, + "3397": 1, + "3401": 1, + "3402": 3, + "3405": 1, + "3410": 2, + "3412": 1, + "3413": 5, + "3414": 1, + "3416": 1, + "3417": 1, + "3420": 2, + "3521": 1, + "3524": 1, + "3525": 1, + "3528": 1, + "3531": 1, + "3532": 1, + "3535": 1, + "3536": 1, + "3540": 1, + "3541": 1, + "3542": 2, + "3545": 2, + "3546": 3, + "3547": 2, + "3548": 1, + "3549": 1, + "3550": 1, + "3551": 2, + "3552": 3, + "3561": 2, + "3580": 1, + "3585": 1, + "3599": 2, + "3603": 1, + "3607": 1, + "3611": 2, + "3622": 1, + "3625": 1, + "3632": 1, + "3638": 1, + "3699": 1, + "3717": 1, + "3720": 1, + "3755": 1, + "3760": 1, + "3763": 1, + "3769": 1, + "3802": 2, + "3803": 2, + "3834": 1, + "3839": 1, + "3845": 1, + "3850": 1, + "3909": 2, + "3920": 2, + "3939": 1, + "3993": 2, + "4037": 1, + "4039": 1, + "4050": 2, + "4070": 2, + "4075": 2, + "4076": 1, + "4078": 1, + "4090": 1, + "4091": 1, + "4095": 1, + "4099": 1, + "4100": 1044 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333732266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88827f38bf9a7cd0" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "7f38bf9a" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_4_18.html b/autobahn/client/tungstenite_case_12_4_18.html new file mode 100644 index 0000000..99e37f6 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_18.html @@ -0,0 +1,1488 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.4.18 : Pass - 5905 ms @ 2020-09-07T18:50:29.957Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=373&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ZnRrXR1x66WGsESx0PcsRg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: HPIrQHqb/bGW7d5FhyURXP+nrs8=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
5292210584
5293210586
529815298
5301210602
530315303
530615306
531415314
531615316
537915379
538515385
538715387
538815388
5390210780
5421210842
5424210848
543315433
543615436
5465210930
5492210984
5510211020
551215512
5515211030
5519211038
552015520
552115521
5526211052
552715527
5535211070
5537211074
5538211076
556315563
556415564
5573211146
560815608
561115611
5619211238
563415634
563515635
563615636
563715637
563815638
563915639
5643211286
566615666
566915669
572215722
572315723
573615736
576915769
577315773
578515785
5800211600
5810211620
582015820
582415824
584115841
585215852
585415854
586115861
588315883
589015890
592515925
592615926
5927211854
596815968
597015970
600816008
601016010
601816018
608916089
609016090
609816098
6100212200
610116101
6102212204
610916109
6114212228
6119212238
612716127
612816128
6157318471
616016160
6163318489
6165212330
616616166
6167212334
6168212336
616916169
617116171
617216172
617516175
6186212372
619216192
619416194
623316233
630216302
630816308
631116311
631516315
631816318
632116321
632416324
632816328
6329212658
633116331
633316333
633516335
634116341
6343212686
6344212688
634616346
6348212696
635916359
636016360
636216362
636916369
637116371
637316373
638116381
638316383
638516385
638816388
6390212780
639716397
6399212798
6401425604
640316403
641516415
6416319248
641716417
6418532090
641916419
6420319260
642516425
642616426
642816428
643216432
6433212866
6435319305
644716447
645216452
6453212906
6456212912
645716457
6465212930
6467212934
6468319404
646916469
6470212940
6471212942
647316473
6474319422
647516475
6481212962
6483212966
6484212968
6485425940
648616486
648716487
6488319464
649016490
6492212984
649416494
649516495
649716497
6498319494
6501319503
6502213004
6503213006
650416504
650516505
651016510
651116511
651216512
6515319545
6517213034
651916519
652216522
6524213048
6526213052
652716527
652916529
653216532
6540213080
654216542
6544213088
6546213092
6550213100
655116551
655216552
6553319659
655416554
6556319668
6557213114
6559319677
6560426240
6561213122
656316563
656516565
656716567
6568319704
656916569
657116571
657216572
6575213150
657616576
658416584
658916589
659316593
659516595
6596213192
659916599
6600426400
660116601
660216602
660416604
6605319815
6606213212
660816608
661016610
661316613
661516615
661616616
661816618
6619213238
6620319860
6621213242
6624213248
6626213252
662916629
663216632
663316633
663616636
663916639
664016640
664116641
6646213292
6648213296
665016650
665116651
6652213304
665316653
6654213308
665516655
665716657
6659319977
6661319983
6662213324
6665213330
6666319998
6668213336
6669213338
667116671
6672213344
667316673
667416674
6675426700
6676426704
6677213354
668216682
668916689
6690426760
6692320076
6693426772
6695213390
6696320088
669716697
669916699
6700320100
6703213406
670716707
671016710
6713213426
671516715
671616716
671916719
672016720
672216722
672316723
6724320172
6729213458
6731213462
673416734
6735213470
6736213472
6737213474
6738213476
674016740
6741320223
674216742
674516745
674616746
674816748
6750213500
675116751
675316753
6755320265
6756213512
6758213516
6759213518
6760427040
6761320283
676416764
6765213530
6766320298
6767427068
6768533840
676916769
6770213540
6771213542
6772213544
677416774
6776213552
677816778
677916779
6780213560
6783427132
678416784
678616786
6791213582
6792213584
6793427172
679416794
679716797
6798320394
6800213600
6801213602
680216802
680716807
6808213616
6809320427
6810427240
6811427244
681216812
6813213626
6814427256
6815213630
681616816
6817213634
6819320457
6820213640
6822747754
682316823
6824320472
6825213650
6826534130
6832213664
6833213666
6838213676
683916839
684416844
6846213692
684916849
685016850
685216852
685316853
6859213718
686116861
6862320586
686316863
686416864
6866213732
6867534335
686916869
6870213740
687316873
687516875
687816878
688016880
6881213762
688316883
688416884
688516885
6886320658
688916889
6890213780
6893213786
689616896
6897213794
689816898
6901320703
690316903
690416904
6905213810
6907320721
690816908
691016910
691316913
691616916
691716917
692016920
692116921
6925213850
6930320790
6934213868
693516935
6936427744
6937213874
6938213876
693916939
6940320820
694116941
694316943
6947427788
694816948
6949534745
695016950
6952213904
6953213906
695516955
6957213914
6958213916
6960213920
6961320883
696316963
696416964
696516965
696616966
697416974
697516975
6976213952
697716977
698016980
698316983
698516985
6986213972
6987213974
6988213976
6989320967
6990213980
6991213982
6993213986
6995320985
7000321000
700217002
700717007
7008214016
700917009
7010214020
701117011
701417014
701517015
701617016
7017214034
702017020
702217022
7030214060
703117031
703217032
703417034
703517035
7037214074
7038428152
7039214078
7040321120
7042214084
704617046
704917049
7051214102
705917059
7061214122
7062428248
7063214126
7064214128
7065214130
706617066
7067214134
7068428272
7069214138
707017070
707217072
7078321234
7084321252
7086214172
708717087
7088214176
7089428356
709017090
7091321273
7092214184
7093214186
709417094
710017100
710217102
7103321309
7104428416
710517105
7106214212
7107321321
7110214220
711217112
7116321348
711817118
7119214238
712217122
712317123
7125214250
7134214268
713517135
713717137
7138321414
713917139
714017140
714417144
714617146
715917159
716217162
716317163
716617166
7168214336
7172214344
717517175
717617176
717817178
718317183
718517185
718917189
719017190
719117191
720217202
720317203
720517205
720817208
720917209
721217212
721317213
721517215
721717217
721917219
7225214450
732717327
733617336
734217342
734317343
734417344
7346214692
734717347
734917349
7354214708
735517355
735717357
7361322083
736217362
736417364
736517365
7366214732
7367322101
736817368
737017370
737217372
737817378
738017380
740117401
740617406
741117411
741517415
741617416
741817418
742917429
743017430
744217442
744517445
745117451
745717457
751417514
753517535
753817538
757217572
757717577
758017580
758517585
7620215240
7621215242
765517655
7661215322
766617666
7732215464
7744215488
775317753
781817818
781917819
785617856
785817858
787017870
787317873
7894215788
7899215798
790417904
790617906
792117921
792217922
792717927
793017930
796217962
796317963
797117971
797217972
798717987
7994431976
7996215992
799717997
8004216008
801218012
801418014
8015216030
8017216034
8020216040
8039216078
8059216118
808918089
809118091
8100216200
8102216204
8132216264
813618136
813718137
814118141
814418144
820518205
820918209
821218212
821418214
821818218
825918259
Total10026764594
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
593315933
5934317802
593915939
594015940
594415944
594515945
594915949
595715957
595815958
602016020
602616026
6027212054
6032212064
6063212126
606716067
606816068
608216082
608416084
6112212224
6135212270
6149212298
6153212306
615516155
6160318480
616216162
616816168
6171212342
617716177
6178318534
618216182
618316183
6203212406
6213212426
624616246
624916249
6254212508
626716267
626916269
627016270
627116271
627416274
6275318825
629516295
629916299
6349212698
637316373
641516415
641916419
642516425
6426212852
6437212874
645916459
646516465
648316483
649316493
649416494
650116501
651216512
651816518
655216552
6553319659
659216592
659416594
663116631
663516635
665516655
672116721
672216722
672316723
672516725
672716727
6728213456
672916729
673316733
673816738
674016740
6742213484
675216752
675316753
677916779
678116781
6782213564
6783213566
6784320352
678516785
678616786
6787213574
679016790
679216792
679516795
680116801
6808213616
680916809
681516815
681716817
686416864
692816928
693116931
693216932
693616936
694216942
694616946
6949213898
695016950
6952213904
695316953
695416954
696216962
696416964
6965320895
696716967
6970427880
6971213942
697216972
6974213948
697516975
697716977
697916979
6981213962
698216982
6987213974
6989320967
699216992
699416994
700117001
7002214004
700317003
7005428020
7006214012
700717007
700817008
7010428040
7011321033
701217012
701317013
7015321045
7017214034
7020428080
7021535105
7022214044
702317023
7024321072
702617026
702717027
702817028
702917029
703017030
703217032
703317033
7035214070
703617036
7037428148
7039535195
704217042
7043428172
7045214090
7047214094
7048214096
7050428200
705117051
7052321156
7053214106
705417054
7055321165
7056214112
705717057
705817058
7059321177
7061214122
7062214124
7063428252
7064321192
7065214130
7066428264
7067214134
7068321204
706917069
707017070
7072214144
7073428292
707417074
707517075
707617076
707817078
7080321240
7081321243
708217082
708317083
708517085
708917089
7092428368
7095428380
709617096
7097321291
7098214196
7099214198
710017100
7102321306
7104321312
7105535525
7107214214
710817108
711117111
7113321339
711417114
711517115
7116428464
7117214234
7118321354
711917119
712017120
7121214242
7122321366
7123214246
712417124
712617126
712717127
7128214256
7129214258
7130214260
7131214262
713217132
713417134
713617136
713817138
713917139
714017140
7141321423
7142214284
714317143
714417144
714517145
7151214302
7152214304
7153321459
7154428616
7155535775
7156214312
7158428632
7159214318
7161214322
7162642972
716317163
7164428656
7165428660
7166321498
7167321501
7168214336
716917169
7171428684
717317173
7174214348
7175321525
717617176
717817178
717917179
718117181
7182321546
7183214366
7184214368
718617186
718717187
7188214376
718917189
719117191
7195321585
7198214396
7199214398
7200321600
7201214402
7202214404
7203214406
720417204
7205214410
7206214412
720717207
7210214420
721217212
721317213
721417214
7215321645
721817218
722017220
7221214442
722217222
722717227
7228214456
723017230
723117231
723317233
723417234
7237321711
7238214476
723917239
724217242
7245214490
724617246
725017250
725117251
725217252
7253321759
725417254
7255536275
7256321768
7257321771
725817258
7259214518
7261321783
726517265
7266429064
7267214534
726917269
7270214540
7271429084
727217272
7273429092
727417274
727717277
7278321834
728017280
728117281
728217282
728317283
728517285
7289214578
729017290
729117291
7293214586
7294321882
7295214590
729817298
729917299
730117301
7303214606
7304214608
7305321915
7306643836
7309214618
7310321930
731517315
731617316
732017320
732117321
7325214650
7327321981
7328214656
732917329
733017330
733217332
7333429332
733417334
7336322008
7337322011
7338536690
7339322017
7340751380
7341322023
7343429372
7344536720
7345429380
7346214692
734717347
7348214696
7349214698
7350322050
7351322053
7352536760
7353322059
735417354
7355536775
735617356
735717357
7358214716
735917359
7361429444
7362214724
7363214726
736417364
7365214730
736617366
736717367
736817368
7369214738
7370322110
7371214742
7373214746
7374214748
737517375
7376322128
7378214756
737917379
7380214760
7382214764
738417384
738617386
7387214774
739017390
7392429568
739317393
7394214788
7395214790
7396322188
7397322191
7398429592
7399214798
7400429600
740117401
7402322206
740317403
7404322212
7405322215
7407537035
740817408
7409429636
7410214820
741117411
741217412
741317413
741417414
7415214830
741617416
741817418
7419214838
7420214840
742317423
7424214848
7426537130
742717427
7428322284
7429322287
7430322290
743117431
743217432
743317433
7434214868
7435322305
7436322308
743717437
7438214876
744117441
7442322326
744417444
744517445
7446322338
744717447
744817448
744917449
7451214902
7460214920
7463214926
7464214928
746917469
7470214940
747117471
747317473
747417474
747517475
747617476
747717477
747817478
747917479
748317483
7490214980
7491214982
7492429968
749317493
749717497
7498322494
750117501
7506215012
750817508
7509537545
751017510
751217512
751317513
7516215032
761717617
762017620
762117621
762417624
762717627
762817628
763117631
763217632
763617636
763717637
7638215276
7641215282
7642322926
7643215286
764417644
764517645
764617646
7647215294
7648322944
7657215314
767617676
768117681
7695215390
769917699
770317703
7707215414
771817718
772117721
772817728
773417734
779517795
781317813
781617816
785117851
785617856
785917859
786517865
7898215796
7899215798
793017930
793517935
794117941
794617946
8005216010
8016216032
803518035
8089216178
813318133
813518135
8146216292
8166216332
8171216342
817218172
817418174
818618186
818718187
819118191
819518195
8225216450
823418234
823518235
8255216510
8257216514
8258216516
826218262
8267216534
827118271
827318273
8274216548
827518275
8279216558
8284216568
8298216596
8318216636
834618346
834818348
8359216718
836418364
836618366
8397216794
840218402
840618406
841018410
841518415
847418474
847818478
848418484
848518485
848918489
853118531
Total10027218429
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333733266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88820bb924e90851
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3062623932346539
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_4_18.json b/autobahn/client/tungstenite_case_12_4_18.json new file mode 100644 index 0000000..c0517a0 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_18.json @@ -0,0 +1,1335 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 373, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 5905, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=373&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ZnRrXR1x66WGsESx0PcsRg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: HPIrQHqb/bGW7d5FhyURXP+nrs8=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.4.18", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "5292": 2, + "5293": 2, + "5298": 1, + "5301": 2, + "5303": 1, + "5306": 1, + "5314": 1, + "5316": 1, + "5379": 1, + "5385": 1, + "5387": 1, + "5388": 1, + "5390": 2, + "5421": 2, + "5424": 2, + "5433": 1, + "5436": 1, + "5465": 2, + "5492": 2, + "5510": 2, + "5512": 1, + "5515": 2, + "5519": 2, + "5520": 1, + "5521": 1, + "5526": 2, + "5527": 1, + "5535": 2, + "5537": 2, + "5538": 2, + "5563": 1, + "5564": 1, + "5573": 2, + "5608": 1, + "5611": 1, + "5619": 2, + "5634": 1, + "5635": 1, + "5636": 1, + "5637": 1, + "5638": 1, + "5639": 1, + "5643": 2, + "5666": 1, + "5669": 1, + "5722": 1, + "5723": 1, + "5736": 1, + "5769": 1, + "5773": 1, + "5785": 1, + "5800": 2, + "5810": 2, + "5820": 1, + "5824": 1, + "5841": 1, + "5852": 1, + "5854": 1, + "5861": 1, + "5883": 1, + "5890": 1, + "5925": 1, + "5926": 1, + "5927": 2, + "5968": 1, + "5970": 1, + "6008": 1, + "6010": 1, + "6018": 1, + "6089": 1, + "6090": 1, + "6098": 1, + "6100": 2, + "6101": 1, + "6102": 2, + "6109": 1, + "6114": 2, + "6119": 2, + "6127": 1, + "6128": 1, + "6157": 3, + "6160": 1, + "6163": 3, + "6165": 2, + "6166": 1, + "6167": 2, + "6168": 2, + "6169": 1, + "6171": 1, + "6172": 1, + "6175": 1, + "6186": 2, + "6192": 1, + "6194": 1, + "6233": 1, + "6302": 1, + "6308": 1, + "6311": 1, + "6315": 1, + "6318": 1, + "6321": 1, + "6324": 1, + "6328": 1, + "6329": 2, + "6331": 1, + "6333": 1, + "6335": 1, + "6341": 1, + "6343": 2, + "6344": 2, + "6346": 1, + "6348": 2, + "6359": 1, + "6360": 1, + "6362": 1, + "6369": 1, + "6371": 1, + "6373": 1, + "6381": 1, + "6383": 1, + "6385": 1, + "6388": 1, + "6390": 2, + "6397": 1, + "6399": 2, + "6401": 4, + "6403": 1, + "6415": 1, + "6416": 3, + "6417": 1, + "6418": 5, + "6419": 1, + "6420": 3, + "6425": 1, + "6426": 1, + "6428": 1, + "6432": 1, + "6433": 2, + "6435": 3, + "6447": 1, + "6452": 1, + "6453": 2, + "6456": 2, + "6457": 1, + "6465": 2, + "6467": 2, + "6468": 3, + "6469": 1, + "6470": 2, + "6471": 2, + "6473": 1, + "6474": 3, + "6475": 1, + "6481": 2, + "6483": 2, + "6484": 2, + "6485": 4, + "6486": 1, + "6487": 1, + "6488": 3, + "6490": 1, + "6492": 2, + "6494": 1, + "6495": 1, + "6497": 1, + "6498": 3, + "6501": 3, + "6502": 2, + "6503": 2, + "6504": 1, + "6505": 1, + "6510": 1, + "6511": 1, + "6512": 1, + "6515": 3, + "6517": 2, + "6519": 1, + "6522": 1, + "6524": 2, + "6526": 2, + "6527": 1, + "6529": 1, + "6532": 1, + "6540": 2, + "6542": 1, + "6544": 2, + "6546": 2, + "6550": 2, + "6551": 1, + "6552": 1, + "6553": 3, + "6554": 1, + "6556": 3, + "6557": 2, + "6559": 3, + "6560": 4, + "6561": 2, + "6563": 1, + "6565": 1, + "6567": 1, + "6568": 3, + "6569": 1, + "6571": 1, + "6572": 1, + "6575": 2, + "6576": 1, + "6584": 1, + "6589": 1, + "6593": 1, + "6595": 1, + "6596": 2, + "6599": 1, + "6600": 4, + "6601": 1, + "6602": 1, + "6604": 1, + "6605": 3, + "6606": 2, + "6608": 1, + "6610": 1, + "6613": 1, + "6615": 1, + "6616": 1, + "6618": 1, + "6619": 2, + "6620": 3, + "6621": 2, + "6624": 2, + "6626": 2, + "6629": 1, + "6632": 1, + "6633": 1, + "6636": 1, + "6639": 1, + "6640": 1, + "6641": 1, + "6646": 2, + "6648": 2, + "6650": 1, + "6651": 1, + "6652": 2, + "6653": 1, + "6654": 2, + "6655": 1, + "6657": 1, + "6659": 3, + "6661": 3, + "6662": 2, + "6665": 2, + "6666": 3, + "6668": 2, + "6669": 2, + "6671": 1, + "6672": 2, + "6673": 1, + "6674": 1, + "6675": 4, + "6676": 4, + "6677": 2, + "6682": 1, + "6689": 1, + "6690": 4, + "6692": 3, + "6693": 4, + "6695": 2, + "6696": 3, + "6697": 1, + "6699": 1, + "6700": 3, + "6703": 2, + "6707": 1, + "6710": 1, + "6713": 2, + "6715": 1, + "6716": 1, + "6719": 1, + "6720": 1, + "6722": 1, + "6723": 1, + "6724": 3, + "6729": 2, + "6731": 2, + "6734": 1, + "6735": 2, + "6736": 2, + "6737": 2, + "6738": 2, + "6740": 1, + "6741": 3, + "6742": 1, + "6745": 1, + "6746": 1, + "6748": 1, + "6750": 2, + "6751": 1, + "6753": 1, + "6755": 3, + "6756": 2, + "6758": 2, + "6759": 2, + "6760": 4, + "6761": 3, + "6764": 1, + "6765": 2, + "6766": 3, + "6767": 4, + "6768": 5, + "6769": 1, + "6770": 2, + "6771": 2, + "6772": 2, + "6774": 1, + "6776": 2, + "6778": 1, + "6779": 1, + "6780": 2, + "6783": 4, + "6784": 1, + "6786": 1, + "6791": 2, + "6792": 2, + "6793": 4, + "6794": 1, + "6797": 1, + "6798": 3, + "6800": 2, + "6801": 2, + "6802": 1, + "6807": 1, + "6808": 2, + "6809": 3, + "6810": 4, + "6811": 4, + "6812": 1, + "6813": 2, + "6814": 4, + "6815": 2, + "6816": 1, + "6817": 2, + "6819": 3, + "6820": 2, + "6822": 7, + "6823": 1, + "6824": 3, + "6825": 2, + "6826": 5, + "6832": 2, + "6833": 2, + "6838": 2, + "6839": 1, + "6844": 1, + "6846": 2, + "6849": 1, + "6850": 1, + "6852": 1, + "6853": 1, + "6859": 2, + "6861": 1, + "6862": 3, + "6863": 1, + "6864": 1, + "6866": 2, + "6867": 5, + "6869": 1, + "6870": 2, + "6873": 1, + "6875": 1, + "6878": 1, + "6880": 1, + "6881": 2, + "6883": 1, + "6884": 1, + "6885": 1, + "6886": 3, + "6889": 1, + "6890": 2, + "6893": 2, + "6896": 1, + "6897": 2, + "6898": 1, + "6901": 3, + "6903": 1, + "6904": 1, + "6905": 2, + "6907": 3, + "6908": 1, + "6910": 1, + "6913": 1, + "6916": 1, + "6917": 1, + "6920": 1, + "6921": 1, + "6925": 2, + "6930": 3, + "6934": 2, + "6935": 1, + "6936": 4, + "6937": 2, + "6938": 2, + "6939": 1, + "6940": 3, + "6941": 1, + "6943": 1, + "6947": 4, + "6948": 1, + "6949": 5, + "6950": 1, + "6952": 2, + "6953": 2, + "6955": 1, + "6957": 2, + "6958": 2, + "6960": 2, + "6961": 3, + "6963": 1, + "6964": 1, + "6965": 1, + "6966": 1, + "6974": 1, + "6975": 1, + "6976": 2, + "6977": 1, + "6980": 1, + "6983": 1, + "6985": 1, + "6986": 2, + "6987": 2, + "6988": 2, + "6989": 3, + "6990": 2, + "6991": 2, + "6993": 2, + "6995": 3, + "7000": 3, + "7002": 1, + "7007": 1, + "7008": 2, + "7009": 1, + "7010": 2, + "7011": 1, + "7014": 1, + "7015": 1, + "7016": 1, + "7017": 2, + "7020": 1, + "7022": 1, + "7030": 2, + "7031": 1, + "7032": 1, + "7034": 1, + "7035": 1, + "7037": 2, + "7038": 4, + "7039": 2, + "7040": 3, + "7042": 2, + "7046": 1, + "7049": 1, + "7051": 2, + "7059": 1, + "7061": 2, + "7062": 4, + "7063": 2, + "7064": 2, + "7065": 2, + "7066": 1, + "7067": 2, + "7068": 4, + "7069": 2, + "7070": 1, + "7072": 1, + "7078": 3, + "7084": 3, + "7086": 2, + "7087": 1, + "7088": 2, + "7089": 4, + "7090": 1, + "7091": 3, + "7092": 2, + "7093": 2, + "7094": 1, + "7100": 1, + "7102": 1, + "7103": 3, + "7104": 4, + "7105": 1, + "7106": 2, + "7107": 3, + "7110": 2, + "7112": 1, + "7116": 3, + "7118": 1, + "7119": 2, + "7122": 1, + "7123": 1, + "7125": 2, + "7134": 2, + "7135": 1, + "7137": 1, + "7138": 3, + "7139": 1, + "7140": 1, + "7144": 1, + "7146": 1, + "7159": 1, + "7162": 1, + "7163": 1, + "7166": 1, + "7168": 2, + "7172": 2, + "7175": 1, + "7176": 1, + "7178": 1, + "7183": 1, + "7185": 1, + "7189": 1, + "7190": 1, + "7191": 1, + "7202": 1, + "7203": 1, + "7205": 1, + "7208": 1, + "7209": 1, + "7212": 1, + "7213": 1, + "7215": 1, + "7217": 1, + "7219": 1, + "7225": 2, + "7327": 1, + "7336": 1, + "7342": 1, + "7343": 1, + "7344": 1, + "7346": 2, + "7347": 1, + "7349": 1, + "7354": 2, + "7355": 1, + "7357": 1, + "7361": 3, + "7362": 1, + "7364": 1, + "7365": 1, + "7366": 2, + "7367": 3, + "7368": 1, + "7370": 1, + "7372": 1, + "7378": 1, + "7380": 1, + "7401": 1, + "7406": 1, + "7411": 1, + "7415": 1, + "7416": 1, + "7418": 1, + "7429": 1, + "7430": 1, + "7442": 1, + "7445": 1, + "7451": 1, + "7457": 1, + "7514": 1, + "7535": 1, + "7538": 1, + "7572": 1, + "7577": 1, + "7580": 1, + "7585": 1, + "7620": 2, + "7621": 2, + "7655": 1, + "7661": 2, + "7666": 1, + "7732": 2, + "7744": 2, + "7753": 1, + "7818": 1, + "7819": 1, + "7856": 1, + "7858": 1, + "7870": 1, + "7873": 1, + "7894": 2, + "7899": 2, + "7904": 1, + "7906": 1, + "7921": 1, + "7922": 1, + "7927": 1, + "7930": 1, + "7962": 1, + "7963": 1, + "7971": 1, + "7972": 1, + "7987": 1, + "7994": 4, + "7996": 2, + "7997": 1, + "8004": 2, + "8012": 1, + "8014": 1, + "8015": 2, + "8017": 2, + "8020": 2, + "8039": 2, + "8059": 2, + "8089": 1, + "8091": 1, + "8100": 2, + "8102": 2, + "8132": 2, + "8136": 1, + "8137": 1, + "8141": 1, + "8144": 1, + "8205": 1, + "8209": 1, + "8212": 1, + "8214": 1, + "8218": 1, + "8259": 1 + }, + "started": "2020-09-07T18:50:29.957Z", + "trafficStats": { + "incomingCompressionRatio": 0.05154142277258159, + "incomingOctetsAppLevel": 131085419, + "incomingOctetsWebSocketLevel": 6756329, + "incomingOctetsWireLevel": 6764329, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0011840749614176575, + "outgoingCompressionRatio": 0.05503413770222606, + "outgoingOctetsAppLevel": 131085419, + "outgoingOctetsWebSocketLevel": 7214173, + "outgoingOctetsWireLevel": 7218173, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0005544641083600297, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "5933": 1, + "5934": 3, + "5939": 1, + "5940": 1, + "5944": 1, + "5945": 1, + "5949": 1, + "5957": 1, + "5958": 1, + "6020": 1, + "6026": 1, + "6027": 2, + "6032": 2, + "6063": 2, + "6067": 1, + "6068": 1, + "6082": 1, + "6084": 1, + "6112": 2, + "6135": 2, + "6149": 2, + "6153": 2, + "6155": 1, + "6160": 3, + "6162": 1, + "6168": 1, + "6171": 2, + "6177": 1, + "6178": 3, + "6182": 1, + "6183": 1, + "6203": 2, + "6213": 2, + "6246": 1, + "6249": 1, + "6254": 2, + "6267": 1, + "6269": 1, + "6270": 1, + "6271": 1, + "6274": 1, + "6275": 3, + "6295": 1, + "6299": 1, + "6349": 2, + "6373": 1, + "6415": 1, + "6419": 1, + "6425": 1, + "6426": 2, + "6437": 2, + "6459": 1, + "6465": 1, + "6483": 1, + "6493": 1, + "6494": 1, + "6501": 1, + "6512": 1, + "6518": 1, + "6552": 1, + "6553": 3, + "6592": 1, + "6594": 1, + "6631": 1, + "6635": 1, + "6655": 1, + "6721": 1, + "6722": 1, + "6723": 1, + "6725": 1, + "6727": 1, + "6728": 2, + "6729": 1, + "6733": 1, + "6738": 1, + "6740": 1, + "6742": 2, + "6752": 1, + "6753": 1, + "6779": 1, + "6781": 1, + "6782": 2, + "6783": 2, + "6784": 3, + "6785": 1, + "6786": 1, + "6787": 2, + "6790": 1, + "6792": 1, + "6795": 1, + "6801": 1, + "6808": 2, + "6809": 1, + "6815": 1, + "6817": 1, + "6864": 1, + "6928": 1, + "6931": 1, + "6932": 1, + "6936": 1, + "6942": 1, + "6946": 1, + "6949": 2, + "6950": 1, + "6952": 2, + "6953": 1, + "6954": 1, + "6962": 1, + "6964": 1, + "6965": 3, + "6967": 1, + "6970": 4, + "6971": 2, + "6972": 1, + "6974": 2, + "6975": 1, + "6977": 1, + "6979": 1, + "6981": 2, + "6982": 1, + "6987": 2, + "6989": 3, + "6992": 1, + "6994": 1, + "7001": 1, + "7002": 2, + "7003": 1, + "7005": 4, + "7006": 2, + "7007": 1, + "7008": 1, + "7010": 4, + "7011": 3, + "7012": 1, + "7013": 1, + "7015": 3, + "7017": 2, + "7020": 4, + "7021": 5, + "7022": 2, + "7023": 1, + "7024": 3, + "7026": 1, + "7027": 1, + "7028": 1, + "7029": 1, + "7030": 1, + "7032": 1, + "7033": 1, + "7035": 2, + "7036": 1, + "7037": 4, + "7039": 5, + "7042": 1, + "7043": 4, + "7045": 2, + "7047": 2, + "7048": 2, + "7050": 4, + "7051": 1, + "7052": 3, + "7053": 2, + "7054": 1, + "7055": 3, + "7056": 2, + "7057": 1, + "7058": 1, + "7059": 3, + "7061": 2, + "7062": 2, + "7063": 4, + "7064": 3, + "7065": 2, + "7066": 4, + "7067": 2, + "7068": 3, + "7069": 1, + "7070": 1, + "7072": 2, + "7073": 4, + "7074": 1, + "7075": 1, + "7076": 1, + "7078": 1, + "7080": 3, + "7081": 3, + "7082": 1, + "7083": 1, + "7085": 1, + "7089": 1, + "7092": 4, + "7095": 4, + "7096": 1, + "7097": 3, + "7098": 2, + "7099": 2, + "7100": 1, + "7102": 3, + "7104": 3, + "7105": 5, + "7107": 2, + "7108": 1, + "7111": 1, + "7113": 3, + "7114": 1, + "7115": 1, + "7116": 4, + "7117": 2, + "7118": 3, + "7119": 1, + "7120": 1, + "7121": 2, + "7122": 3, + "7123": 2, + "7124": 1, + "7126": 1, + "7127": 1, + "7128": 2, + "7129": 2, + "7130": 2, + "7131": 2, + "7132": 1, + "7134": 1, + "7136": 1, + "7138": 1, + "7139": 1, + "7140": 1, + "7141": 3, + "7142": 2, + "7143": 1, + "7144": 1, + "7145": 1, + "7151": 2, + "7152": 2, + "7153": 3, + "7154": 4, + "7155": 5, + "7156": 2, + "7158": 4, + "7159": 2, + "7161": 2, + "7162": 6, + "7163": 1, + "7164": 4, + "7165": 4, + "7166": 3, + "7167": 3, + "7168": 2, + "7169": 1, + "7171": 4, + "7173": 1, + "7174": 2, + "7175": 3, + "7176": 1, + "7178": 1, + "7179": 1, + "7181": 1, + "7182": 3, + "7183": 2, + "7184": 2, + "7186": 1, + "7187": 1, + "7188": 2, + "7189": 1, + "7191": 1, + "7195": 3, + "7198": 2, + "7199": 2, + "7200": 3, + "7201": 2, + "7202": 2, + "7203": 2, + "7204": 1, + "7205": 2, + "7206": 2, + "7207": 1, + "7210": 2, + "7212": 1, + "7213": 1, + "7214": 1, + "7215": 3, + "7218": 1, + "7220": 1, + "7221": 2, + "7222": 1, + "7227": 1, + "7228": 2, + "7230": 1, + "7231": 1, + "7233": 1, + "7234": 1, + "7237": 3, + "7238": 2, + "7239": 1, + "7242": 1, + "7245": 2, + "7246": 1, + "7250": 1, + "7251": 1, + "7252": 1, + "7253": 3, + "7254": 1, + "7255": 5, + "7256": 3, + "7257": 3, + "7258": 1, + "7259": 2, + "7261": 3, + "7265": 1, + "7266": 4, + "7267": 2, + "7269": 1, + "7270": 2, + "7271": 4, + "7272": 1, + "7273": 4, + "7274": 1, + "7277": 1, + "7278": 3, + "7280": 1, + "7281": 1, + "7282": 1, + "7283": 1, + "7285": 1, + "7289": 2, + "7290": 1, + "7291": 1, + "7293": 2, + "7294": 3, + "7295": 2, + "7298": 1, + "7299": 1, + "7301": 1, + "7303": 2, + "7304": 2, + "7305": 3, + "7306": 6, + "7309": 2, + "7310": 3, + "7315": 1, + "7316": 1, + "7320": 1, + "7321": 1, + "7325": 2, + "7327": 3, + "7328": 2, + "7329": 1, + "7330": 1, + "7332": 1, + "7333": 4, + "7334": 1, + "7336": 3, + "7337": 3, + "7338": 5, + "7339": 3, + "7340": 7, + "7341": 3, + "7343": 4, + "7344": 5, + "7345": 4, + "7346": 2, + "7347": 1, + "7348": 2, + "7349": 2, + "7350": 3, + "7351": 3, + "7352": 5, + "7353": 3, + "7354": 1, + "7355": 5, + "7356": 1, + "7357": 1, + "7358": 2, + "7359": 1, + "7361": 4, + "7362": 2, + "7363": 2, + "7364": 1, + "7365": 2, + "7366": 1, + "7367": 1, + "7368": 1, + "7369": 2, + "7370": 3, + "7371": 2, + "7373": 2, + "7374": 2, + "7375": 1, + "7376": 3, + "7378": 2, + "7379": 1, + "7380": 2, + "7382": 2, + "7384": 1, + "7386": 1, + "7387": 2, + "7390": 1, + "7392": 4, + "7393": 1, + "7394": 2, + "7395": 2, + "7396": 3, + "7397": 3, + "7398": 4, + "7399": 2, + "7400": 4, + "7401": 1, + "7402": 3, + "7403": 1, + "7404": 3, + "7405": 3, + "7407": 5, + "7408": 1, + "7409": 4, + "7410": 2, + "7411": 1, + "7412": 1, + "7413": 1, + "7414": 1, + "7415": 2, + "7416": 1, + "7418": 1, + "7419": 2, + "7420": 2, + "7423": 1, + "7424": 2, + "7426": 5, + "7427": 1, + "7428": 3, + "7429": 3, + "7430": 3, + "7431": 1, + "7432": 1, + "7433": 1, + "7434": 2, + "7435": 3, + "7436": 3, + "7437": 1, + "7438": 2, + "7441": 1, + "7442": 3, + "7444": 1, + "7445": 1, + "7446": 3, + "7447": 1, + "7448": 1, + "7449": 1, + "7451": 2, + "7460": 2, + "7463": 2, + "7464": 2, + "7469": 1, + "7470": 2, + "7471": 1, + "7473": 1, + "7474": 1, + "7475": 1, + "7476": 1, + "7477": 1, + "7478": 1, + "7479": 1, + "7483": 1, + "7490": 2, + "7491": 2, + "7492": 4, + "7493": 1, + "7497": 1, + "7498": 3, + "7501": 1, + "7506": 2, + "7508": 1, + "7509": 5, + "7510": 1, + "7512": 1, + "7513": 1, + "7516": 2, + "7617": 1, + "7620": 1, + "7621": 1, + "7624": 1, + "7627": 1, + "7628": 1, + "7631": 1, + "7632": 1, + "7636": 1, + "7637": 1, + "7638": 2, + "7641": 2, + "7642": 3, + "7643": 2, + "7644": 1, + "7645": 1, + "7646": 1, + "7647": 2, + "7648": 3, + "7657": 2, + "7676": 1, + "7681": 1, + "7695": 2, + "7699": 1, + "7703": 1, + "7707": 2, + "7718": 1, + "7721": 1, + "7728": 1, + "7734": 1, + "7795": 1, + "7813": 1, + "7816": 1, + "7851": 1, + "7856": 1, + "7859": 1, + "7865": 1, + "7898": 2, + "7899": 2, + "7930": 1, + "7935": 1, + "7941": 1, + "7946": 1, + "8005": 2, + "8016": 2, + "8035": 1, + "8089": 2, + "8133": 1, + "8135": 1, + "8146": 2, + "8166": 2, + "8171": 2, + "8172": 1, + "8174": 1, + "8186": 1, + "8187": 1, + "8191": 1, + "8195": 1, + "8225": 2, + "8234": 1, + "8235": 1, + "8255": 2, + "8257": 2, + "8258": 2, + "8262": 1, + "8267": 2, + "8271": 1, + "8273": 1, + "8274": 2, + "8275": 1, + "8279": 2, + "8284": 2, + "8298": 2, + "8318": 2, + "8346": 1, + "8348": 1, + "8359": 2, + "8364": 1, + "8366": 1, + "8397": 2, + "8402": 1, + "8406": 1, + "8410": 1, + "8415": 1, + "8474": 1, + "8478": 1, + "8484": 1, + "8485": 1, + "8489": 1, + "8531": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333733266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88820bb924e90851" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "0bb924e9" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_4_2.html b/autobahn/client/tungstenite_case_12_4_2.html new file mode 100644 index 0000000..ea2e4a5 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_2.html @@ -0,0 +1,398 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.4.2 : Pass - 766 ms @ 2020-09-07T18:49:45.553Z

+

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=357&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: WCpQK1bFrGsNxgkTz0/0kQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: QKuo1ZcADUBK2BvGmHSIHUCrhJ0=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
115806380
12560
1349637
1427378
1515225
1616256
171302210
1829522
1910190
207140
218168
2211242
236138
249216
255125
266156
27381
287196
296174
305150
317217
325160
334132
34268
353105
364144
374148
38138
394156
40280
413123
42284
43143
44144
45290
46292
47147
49298
503150
51151
522104
53153
54154
552110
56156
58158
59159
61161
62162
63163
2571257
Total100215659
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
75593913
8432
964576
1033330
1114154
1217204
131311703
1429406
1510150
16464
177119
1813234
196114
2010200
215105
227154
23369
247168
256150
266156
276162
284112
294116
30260
314124
324128
334132
34134
354140
36272
373111
38276
39139
40140
41282
42284
43143
45290
463138
47147
48296
49149
50150
512102
52152
54154
55155
57157
58158
59159
2521252
Total100211719
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333537266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882441618e247fe
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3434313631386532
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_4_2.json b/autobahn/client/tungstenite_case_12_4_2.json new file mode 100644 index 0000000..13b881a --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_2.json @@ -0,0 +1,245 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 357, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 766, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=357&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: WCpQK1bFrGsNxgkTz0/0kQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: QKuo1ZcADUBK2BvGmHSIHUCrhJ0=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.4.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "11": 580, + "12": 5, + "13": 49, + "14": 27, + "15": 15, + "16": 16, + "17": 130, + "18": 29, + "19": 10, + "20": 7, + "21": 8, + "22": 11, + "23": 6, + "24": 9, + "25": 5, + "26": 6, + "27": 3, + "28": 7, + "29": 6, + "30": 5, + "31": 7, + "32": 5, + "33": 4, + "34": 2, + "35": 3, + "36": 4, + "37": 4, + "38": 1, + "39": 4, + "40": 2, + "41": 3, + "42": 2, + "43": 1, + "44": 1, + "45": 2, + "46": 2, + "47": 1, + "49": 2, + "50": 3, + "51": 1, + "52": 2, + "53": 1, + "54": 1, + "55": 2, + "56": 1, + "58": 1, + "59": 1, + "61": 1, + "62": 1, + "63": 1, + "257": 1 + }, + "started": "2020-09-07T18:49:45.553Z", + "trafficStats": { + "incomingCompressionRatio": 0.14678125, + "incomingOctetsAppLevel": 64000, + "incomingOctetsWebSocketLevel": 9394, + "incomingOctetsWireLevel": 15394, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.6387055567383436, + "outgoingCompressionRatio": 0.147859375, + "outgoingOctetsAppLevel": 64000, + "outgoingOctetsWebSocketLevel": 9463, + "outgoingOctetsWireLevel": 11463, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.2113494663425975, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "7": 559, + "8": 4, + "9": 64, + "10": 33, + "11": 14, + "12": 17, + "13": 131, + "14": 29, + "15": 10, + "16": 4, + "17": 7, + "18": 13, + "19": 6, + "20": 10, + "21": 5, + "22": 7, + "23": 3, + "24": 7, + "25": 6, + "26": 6, + "27": 6, + "28": 4, + "29": 4, + "30": 2, + "31": 4, + "32": 4, + "33": 4, + "34": 1, + "35": 4, + "36": 2, + "37": 3, + "38": 2, + "39": 1, + "40": 1, + "41": 2, + "42": 2, + "43": 1, + "45": 2, + "46": 3, + "47": 1, + "48": 2, + "49": 1, + "50": 1, + "51": 2, + "52": 1, + "54": 1, + "55": 1, + "57": 1, + "58": 1, + "59": 1, + "252": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333537266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882441618e247fe" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "441618e2" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_4_3.html b/autobahn/client/tungstenite_case_12_4_3.html new file mode 100644 index 0000000..0e09485 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_3.html @@ -0,0 +1,464 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.4.3 : Pass - 841 ms @ 2020-09-07T18:49:46.319Z

+

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=358&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: oJ8anMmSOlUPZMnsHpz2Hw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: OSioBXg1yKeQdKMacWtpiod5Qrk=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
1122242
1227324
1445630
1553795
1614224
17731241
182474446
191062014
2035700
2141861
2230660
2325575
2437888
2519475
2622572
2715405
2816448
298232
307210
317217
3210320
337231
347238
355175
366216
376222
38138
393117
403120
415205
42284
434172
44144
456270
465230
47294
483144
493147
50150
523156
543162
552110
572114
582116
593177
602120
623186
633189
64164
652130
67167
692138
713213
724288
73173
752150
77177
81181
85185
86186
87187
89189
91191
922184
93193
972194
98198
1011101
1041104
1061106
1071107
1162232
1171117
1181118
1191119
1211121
1262252
1272254
1281128
1391139
1431143
1631163
1941194
2571257
Total100225557
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
718126
820160
1046460
1139429
1214168
13871131
141862604
15891335
16721152
1753901
1832576
1932608
2033660
2139819
2227594
2316368
2413312
259225
2612312
279243
285140
296174
308240
3110310
326192
335165
344136
353105
363108
375185
383114
394156
40140
416246
425210
43286
443132
46146
473141
483144
502100
51151
522104
532106
54154
552110
563168
583174
593177
602120
61161
632126
652130
67167
684272
692138
713213
73173
77177
81181
822164
85185
87187
882176
89189
932186
94194
97197
99199
1021102
1041104
1122224
1131113
1141114
1151115
1171117
1222244
1232246
1241124
1351135
1391139
1591159
1901190
2521252
Total100222114
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333538266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 120.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888209aa87af0a42
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3039616138376166
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_4_3.json b/autobahn/client/tungstenite_case_12_4_3.json new file mode 100644 index 0000000..0c6f7f0 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_3.json @@ -0,0 +1,311 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 358, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 841, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=358&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: oJ8anMmSOlUPZMnsHpz2Hw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: OSioBXg1yKeQdKMacWtpiod5Qrk=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.4.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "11": 22, + "12": 27, + "14": 45, + "15": 53, + "16": 14, + "17": 73, + "18": 247, + "19": 106, + "20": 35, + "21": 41, + "22": 30, + "23": 25, + "24": 37, + "25": 19, + "26": 22, + "27": 15, + "28": 16, + "29": 8, + "30": 7, + "31": 7, + "32": 10, + "33": 7, + "34": 7, + "35": 5, + "36": 6, + "37": 6, + "38": 1, + "39": 3, + "40": 3, + "41": 5, + "42": 2, + "43": 4, + "44": 1, + "45": 6, + "46": 5, + "47": 2, + "48": 3, + "49": 3, + "50": 1, + "52": 3, + "54": 3, + "55": 2, + "57": 2, + "58": 2, + "59": 3, + "60": 2, + "62": 3, + "63": 3, + "64": 1, + "65": 2, + "67": 1, + "69": 2, + "71": 3, + "72": 4, + "73": 1, + "75": 2, + "77": 1, + "81": 1, + "85": 1, + "86": 1, + "87": 1, + "89": 1, + "91": 1, + "92": 2, + "93": 1, + "97": 2, + "98": 1, + "101": 1, + "104": 1, + "106": 1, + "107": 1, + "116": 2, + "117": 1, + "118": 1, + "119": 1, + "121": 1, + "126": 2, + "127": 2, + "128": 1, + "139": 1, + "143": 1, + "163": 1, + "194": 1, + "257": 1 + }, + "started": "2020-09-07T18:49:46.319Z", + "trafficStats": { + "incomingCompressionRatio": 0.07532018107465228, + "incomingOctetsAppLevel": 256027, + "incomingOctetsWebSocketLevel": 19284, + "incomingOctetsWireLevel": 25292, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.3115536195809998, + "outgoingCompressionRatio": 0.07753088541442894, + "outgoingOctetsAppLevel": 256027, + "outgoingOctetsWebSocketLevel": 19850, + "outgoingOctetsWireLevel": 21858, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.10115869017632242, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "7": 18, + "8": 20, + "10": 46, + "11": 39, + "12": 14, + "13": 87, + "14": 186, + "15": 89, + "16": 72, + "17": 53, + "18": 32, + "19": 32, + "20": 33, + "21": 39, + "22": 27, + "23": 16, + "24": 13, + "25": 9, + "26": 12, + "27": 9, + "28": 5, + "29": 6, + "30": 8, + "31": 10, + "32": 6, + "33": 5, + "34": 4, + "35": 3, + "36": 3, + "37": 5, + "38": 3, + "39": 4, + "40": 1, + "41": 6, + "42": 5, + "43": 2, + "44": 3, + "46": 1, + "47": 3, + "48": 3, + "50": 2, + "51": 1, + "52": 2, + "53": 2, + "54": 1, + "55": 2, + "56": 3, + "58": 3, + "59": 3, + "60": 2, + "61": 1, + "63": 2, + "65": 2, + "67": 1, + "68": 4, + "69": 2, + "71": 3, + "73": 1, + "77": 1, + "81": 1, + "82": 2, + "85": 1, + "87": 1, + "88": 2, + "89": 1, + "93": 2, + "94": 1, + "97": 1, + "99": 1, + "102": 1, + "104": 1, + "112": 2, + "113": 1, + "114": 1, + "115": 1, + "117": 1, + "122": 2, + "123": 2, + "124": 1, + "135": 1, + "139": 1, + "159": 1, + "190": 1, + "252": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333538266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 120 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888209aa87af0a42" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "09aa87af" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_4_4.html b/autobahn/client/tungstenite_case_12_4_4.html new file mode 100644 index 0000000..ceb18af --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_4.html @@ -0,0 +1,608 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.4.4 : Pass - 838 ms @ 2020-09-07T18:49:47.161Z

+

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=359&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: e67QYKkat3NZJ8ftbgRbpQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: gXIer6310epwPPFVoVP8zm+n+ls=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
30260
3110310
3211352
3321693
3418612
3515525
3617612
3727999
38281064
39341326
40251000
4123943
42381596
43261118
44301320
45361620
46281288
47542538
4818864
49291421
50291450
51371887
5212624
5314742
5414756
5510550
5616896
578456
587406
596354
609540
618488
628496
6310630
649576
6512780
668528
673201
683204
6911759
708560
7111781
7210720
73151095
748592
7512900
767532
777539
7811858
7910790
802160
815405
824328
832166
843252
853255
866516
873261
90190
913273
932186
942188
95195
964384
976582
98198
992198
1001100
1011101
1021102
1031103
1053315
1076642
1082216
1092218
1111111
1121112
1136678
1155575
1171117
1182236
1192238
1201120
1211121
1222244
1233369
1241124
1252250
1271127
1292258
1352270
1371137
1382276
1391139
1451145
1461146
1521152
1531153
1611161
1622324
1641164
1652330
1701170
1712342
1771177
1821182
1881188
1911191
1942388
1951195
2001200
2011201
2031203
2071207
2132426
2141214
2232446
2241224
2391239
2401240
2412482
2451245
2532506
2541254
2572514
2581258
2612522
2681268
2691269
2731273
2752550
2771277
2781278
2861286
3051305
3061306
3071307
3091309
3101310
3181318
3231323
3301330
3422684
3431343
3591359
3661366
36931107
3751375
3932786
3951395
4011401
4221422
4271427
Total100270858
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
27127
28384
29129
305150
317217
3213416
3321693
349306
3522770
3622792
3721777
3819722
39291131
40361440
41391599
42311302
43261118
44291276
45341530
46331518
47592773
48281344
49241176
50351750
5116816
5213676
5313689
5416864
5511605
5611616
5711627
5813754
5911649
6013780
618488
626372
639567
644256
65165
669594
6713871
685340
699621
70151050
7110710
727504
733219
74171258
759675
767532
777539
786468
793237
807560
813243
824328
832166
844336
853255
862172
874348
88188
89189
90190
91191
92192
932186
94194
953285
965480
972194
98198
992198
1011101
1034412
1043312
1052210
1062212
1072214
1082216
1102220
1111111
1133339
1143342
1153345
1162232
1172234
1184472
1192238
1202240
1221122
1231123
1241124
1251125
1272254
1301130
1331133
1341134
1351135
1363408
1371137
1442288
1491149
1501150
1582316
1591159
1622324
1631163
1671167
1701170
1711171
1751175
1831183
1871187
1902380
1931193
1941194
1961196
2011201
2031203
2051205
2102420
2111211
2191219
2221222
2231223
2362472
2392478
2431243
2501250
25241008
2541254
2571257
2601260
2662532
2701270
2712542
2741274
2751275
2821282
3021302
3032606
3051305
3061306
3141314
3191319
3261326
3382676
3391339
3551355
3621362
3641364
3652730
3691369
3892778
3911391
3971397
4181418
4221422
Total100269999
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333539266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 240.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88825a3a816f59d2
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3561336138313666
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_4_4.json b/autobahn/client/tungstenite_case_12_4_4.json new file mode 100644 index 0000000..49bfbb7 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_4.json @@ -0,0 +1,455 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 359, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 838, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=359&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: e67QYKkat3NZJ8ftbgRbpQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: gXIer6310epwPPFVoVP8zm+n+ls=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.4.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "30": 2, + "31": 10, + "32": 11, + "33": 21, + "34": 18, + "35": 15, + "36": 17, + "37": 27, + "38": 28, + "39": 34, + "40": 25, + "41": 23, + "42": 38, + "43": 26, + "44": 30, + "45": 36, + "46": 28, + "47": 54, + "48": 18, + "49": 29, + "50": 29, + "51": 37, + "52": 12, + "53": 14, + "54": 14, + "55": 10, + "56": 16, + "57": 8, + "58": 7, + "59": 6, + "60": 9, + "61": 8, + "62": 8, + "63": 10, + "64": 9, + "65": 12, + "66": 8, + "67": 3, + "68": 3, + "69": 11, + "70": 8, + "71": 11, + "72": 10, + "73": 15, + "74": 8, + "75": 12, + "76": 7, + "77": 7, + "78": 11, + "79": 10, + "80": 2, + "81": 5, + "82": 4, + "83": 2, + "84": 3, + "85": 3, + "86": 6, + "87": 3, + "90": 1, + "91": 3, + "93": 2, + "94": 2, + "95": 1, + "96": 4, + "97": 6, + "98": 1, + "99": 2, + "100": 1, + "101": 1, + "102": 1, + "103": 1, + "105": 3, + "107": 6, + "108": 2, + "109": 2, + "111": 1, + "112": 1, + "113": 6, + "115": 5, + "117": 1, + "118": 2, + "119": 2, + "120": 1, + "121": 1, + "122": 2, + "123": 3, + "124": 1, + "125": 2, + "127": 1, + "129": 2, + "135": 2, + "137": 1, + "138": 2, + "139": 1, + "145": 1, + "146": 1, + "152": 1, + "153": 1, + "161": 1, + "162": 2, + "164": 1, + "165": 2, + "170": 1, + "171": 2, + "177": 1, + "182": 1, + "188": 1, + "191": 1, + "194": 2, + "195": 1, + "200": 1, + "201": 1, + "203": 1, + "207": 1, + "213": 2, + "214": 1, + "223": 2, + "224": 1, + "239": 1, + "240": 1, + "241": 2, + "245": 1, + "253": 2, + "254": 1, + "257": 2, + "258": 1, + "261": 2, + "268": 1, + "269": 1, + "273": 1, + "275": 2, + "277": 1, + "278": 1, + "286": 1, + "305": 1, + "306": 1, + "307": 1, + "309": 1, + "310": 1, + "318": 1, + "323": 1, + "330": 1, + "342": 2, + "343": 1, + "359": 1, + "366": 1, + "369": 3, + "375": 1, + "393": 2, + "395": 1, + "401": 1, + "422": 1, + "427": 1 + }, + "started": "2020-09-07T18:49:47.161Z", + "trafficStats": { + "incomingCompressionRatio": 0.06291816878688576, + "incomingOctetsAppLevel": 1024108, + "incomingOctetsWebSocketLevel": 64435, + "incomingOctetsWireLevel": 70593, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.09556917824163887, + "outgoingCompressionRatio": 0.06599011041804184, + "outgoingOctetsAppLevel": 1024108, + "outgoingOctetsWebSocketLevel": 67581, + "outgoingOctetsWireLevel": 69743, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.031991240141459876, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "27": 1, + "28": 3, + "29": 1, + "30": 5, + "31": 7, + "32": 13, + "33": 21, + "34": 9, + "35": 22, + "36": 22, + "37": 21, + "38": 19, + "39": 29, + "40": 36, + "41": 39, + "42": 31, + "43": 26, + "44": 29, + "45": 34, + "46": 33, + "47": 59, + "48": 28, + "49": 24, + "50": 35, + "51": 16, + "52": 13, + "53": 13, + "54": 16, + "55": 11, + "56": 11, + "57": 11, + "58": 13, + "59": 11, + "60": 13, + "61": 8, + "62": 6, + "63": 9, + "64": 4, + "65": 1, + "66": 9, + "67": 13, + "68": 5, + "69": 9, + "70": 15, + "71": 10, + "72": 7, + "73": 3, + "74": 17, + "75": 9, + "76": 7, + "77": 7, + "78": 6, + "79": 3, + "80": 7, + "81": 3, + "82": 4, + "83": 2, + "84": 4, + "85": 3, + "86": 2, + "87": 4, + "88": 1, + "89": 1, + "90": 1, + "91": 1, + "92": 1, + "93": 2, + "94": 1, + "95": 3, + "96": 5, + "97": 2, + "98": 1, + "99": 2, + "101": 1, + "103": 4, + "104": 3, + "105": 2, + "106": 2, + "107": 2, + "108": 2, + "110": 2, + "111": 1, + "113": 3, + "114": 3, + "115": 3, + "116": 2, + "117": 2, + "118": 4, + "119": 2, + "120": 2, + "122": 1, + "123": 1, + "124": 1, + "125": 1, + "127": 2, + "130": 1, + "133": 1, + "134": 1, + "135": 1, + "136": 3, + "137": 1, + "144": 2, + "149": 1, + "150": 1, + "158": 2, + "159": 1, + "162": 2, + "163": 1, + "167": 1, + "170": 1, + "171": 1, + "175": 1, + "183": 1, + "187": 1, + "190": 2, + "193": 1, + "194": 1, + "196": 1, + "201": 1, + "203": 1, + "205": 1, + "210": 2, + "211": 1, + "219": 1, + "222": 1, + "223": 1, + "236": 2, + "239": 2, + "243": 1, + "250": 1, + "252": 4, + "254": 1, + "257": 1, + "260": 1, + "266": 2, + "270": 1, + "271": 2, + "274": 1, + "275": 1, + "282": 1, + "302": 1, + "303": 2, + "305": 1, + "306": 1, + "314": 1, + "319": 1, + "326": 1, + "338": 2, + "339": 1, + "355": 1, + "362": 1, + "364": 1, + "365": 2, + "369": 1, + "389": 2, + "391": 1, + "397": 1, + "418": 1, + "422": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333539266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 240 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88825a3a816f59d2" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "5a3a816f" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_4_5.html b/autobahn/client/tungstenite_case_12_4_5.html new file mode 100644 index 0000000..4088d3d --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_5.html @@ -0,0 +1,880 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.4.5 : Pass - 968 ms @ 2020-09-07T18:49:48.000Z

+

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=360&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: kQgouprhL5ULdy1bxsIX6Q==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: mOZD6rWN396llF0R0PHyCsy/vBo=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
896534
907630
91131183
929828
935465
947658
952190
96196
98198
1001100
1011101
1021102
1031103
1041104
105111155
1062212
1076642
108131404
1095545
1109990
111121332
112101120
11391017
1147798
1155575
116121392
1172234
1187826
1193357
120111320
1211121
1224488
1238984
1248992
1257875
12691134
1275635
1285640
12991161
1301130
1312262
1345670
1352270
1367952
13781096
138121656
1395695
1402280
14191269
142101420
1436858
14471008
145101450
1465730
1475735
148101480
1493447
1504600
15171057
1521152
15371071
1543462
1556930
1565780
1574628
15881264
15971113
1601160
1623486
16391467
1644656
1653495
16671162
16791503
1685840
16981352
1704680
1714684
1722344
1733519
1745870
1751175
1764704
1775885
1784712
1792358
18071260
1814724
1824728
1832366
18461104
18561110
1864744
18761122
18861128
1894756
19081520
1915955
1924768
1931193
1945970
1955975
1962392
1972394
1984792
1995995
2003600
20151005
20271414
203102030
20561230
20661236
2074828
2083624
2093627
2104840
2111211
2121212
2131213
21451070
2153645
216102160
217122604
2184872
2192438
2203660
222132886
2234892
22451120
2251225
2264904
22771589
2282456
2291229
2314924
2322464
2334932
2341234
235122820
236102360
2372474
23871666
2393717
24051200
2412482
2424968
2431243
2441244
2451245
2464984
2473741
2481248
2494996
25051250
2513753
2523756
2542508
25561530
25741028
2583774
2591259
2603780
2612522
2622524
2632526
2671267
2681268
2692538
2712542
2722544
2741274
2753825
2772554
2783834
2801280
2812562
2822564
2851285
2891289
2923876
2932586
2981298
3041304
3051305
3061306
3071307
3103930
3161316
3271327
3301330
3321332
3333999
3362672
33931017
3422684
3481348
3542708
3551355
3582716
3651365
3692738
37031110
3731373
3741374
3771377
3802760
38431152
38531155
3901390
3931393
3942788
3951395
3962792
3982796
3992798
4021402
40531215
4072814
4081408
4101410
4131413
4282856
4291429
4312862
43631308
4372874
4382876
4401440
4432886
4821482
4902980
4912982
4922984
4981498
4992998
50031500
5021502
50521010
50631518
5071507
5091509
5111511
54542180
5461546
5721572
5791579
58121162
5821582
5841584
58521170
58621172
5911591
59321186
5951595
5961596
6071607
6301630
6311631
6361636
6521652
6621662
7001700
7061706
7081708
7101710
7111711
7141714
71621432
7171717
7231723
8431843
8511851
8551855
8581858
8641864
109922198
110211102
110711107
111011110
112111121
113422268
115011150
115411154
116522330
116611166
116711167
116911169
117111171
119611196
125211252
125411254
125522510
126511265
Total1002236321
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
984392
992198
1004400
1015505
1026612
103151545
1047728
1057735
1068848
1078856
1086648
1103330
1111111
1121112
1131113
1143342
1162232
1173351
1181118
119111309
1207840
1217847
1223366
1232246
1246744
1252250
1263378
1277889
1313393
132141848
1337931
1343402
1353405
1361136
1371137
1384552
1395695
140121680
14191269
142131846
1436858
1445720
14591305
14681168
14781176
1485740
14971043
1505750
15171057
15291368
1534612
15481232
155101550
15671092
1574628
1585790
15971113
16091440
161152415
16281296
1633489
1644656
165101650
1661166
1673501
1683504
16971183
17081360
17181368
1723516
173111903
1752350
17671232
1782356
179122148
18061080
1813543
1824728
1833549
1842368
18571295
1865930
1875935
188132444
18961134
190173230
19161146
1925960
19361158
19481552
1952390
1965980
1973591
1981198
1994796
20061200
2012402
2023606
2034812
2041204
2052410
2062412
2072414
20851040
20961254
21081680
21151055
2124848
2132426
2143642
2154860
216102160
2174868
2184872
2193657
2203660
22271554
2232446
2242448
22571575
2263678
2272454
2284912
22961374
230102300
23171617
2322464
2334932
2354940
23651180
2371237
2382476
2394956
2403720
2412482
24271694
2434972
24451220
24551225
2464984
2473741
2482496
2502500
25141004
2522504
2531253
2542508
2563768
2583774
25951295
26041040
2612522
2631263
26641064
26761602
2681268
2692538
270123240
27151355
2721272
2731273
2782556
2833849
28651430
2872574
2881288
2891289
2911291
2923876
2932586
2942588
29541180
2963888
29941196
3001300
3071307
3141314
3161316
3263978
3292658
3301330
3342668
33731011
3431343
3441344
3451345
3461346
3481348
3492698
3501350
3511351
3571357
3581358
3591359
3601360
3612722
3691369
3701370
3762752
3802760
38131143
38231146
3831383
3841384
3851385
3891389
3901390
3951395
3962792
3971397
39831194
3992798
4021402
4031403
4052810
4061406
4092818
4122824
4161416
4302860
4311431
4321432
4331433
4431443
44431332
44531335
4461446
4482896
4891489
4951495
4991499
50021000
50121002
5031503
5041504
50731521
50831524
5091509
51042040
5131513
5151515
54721094
54931647
5731573
5801580
58742348
5881588
5901590
5921592
5941594
5951595
59731791
6001600
6091609
6341634
6351635
6401640
6561656
6651665
6961696
7021702
7041704
7131713
7141714
7151715
71921438
72021440
8431843
8511851
8531853
8571857
8631863
109511095
109611096
109811098
110311103
110711107
112111121
113211132
113411134
115011150
115311153
116533495
116611166
116811168
117111171
119511195
125011250
125211252
125422508
126211262
Total1002245765
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333630266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88828d7ebc8e8e96
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3864376562633865
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_4_5.json b/autobahn/client/tungstenite_case_12_4_5.json new file mode 100644 index 0000000..52ecc9b --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_5.json @@ -0,0 +1,727 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 360, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 968, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=360&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: kQgouprhL5ULdy1bxsIX6Q==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: mOZD6rWN396llF0R0PHyCsy/vBo=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.4.5", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "89": 6, + "90": 7, + "91": 13, + "92": 9, + "93": 5, + "94": 7, + "95": 2, + "96": 1, + "98": 1, + "100": 1, + "101": 1, + "102": 1, + "103": 1, + "104": 1, + "105": 11, + "106": 2, + "107": 6, + "108": 13, + "109": 5, + "110": 9, + "111": 12, + "112": 10, + "113": 9, + "114": 7, + "115": 5, + "116": 12, + "117": 2, + "118": 7, + "119": 3, + "120": 11, + "121": 1, + "122": 4, + "123": 8, + "124": 8, + "125": 7, + "126": 9, + "127": 5, + "128": 5, + "129": 9, + "130": 1, + "131": 2, + "134": 5, + "135": 2, + "136": 7, + "137": 8, + "138": 12, + "139": 5, + "140": 2, + "141": 9, + "142": 10, + "143": 6, + "144": 7, + "145": 10, + "146": 5, + "147": 5, + "148": 10, + "149": 3, + "150": 4, + "151": 7, + "152": 1, + "153": 7, + "154": 3, + "155": 6, + "156": 5, + "157": 4, + "158": 8, + "159": 7, + "160": 1, + "162": 3, + "163": 9, + "164": 4, + "165": 3, + "166": 7, + "167": 9, + "168": 5, + "169": 8, + "170": 4, + "171": 4, + "172": 2, + "173": 3, + "174": 5, + "175": 1, + "176": 4, + "177": 5, + "178": 4, + "179": 2, + "180": 7, + "181": 4, + "182": 4, + "183": 2, + "184": 6, + "185": 6, + "186": 4, + "187": 6, + "188": 6, + "189": 4, + "190": 8, + "191": 5, + "192": 4, + "193": 1, + "194": 5, + "195": 5, + "196": 2, + "197": 2, + "198": 4, + "199": 5, + "200": 3, + "201": 5, + "202": 7, + "203": 10, + "205": 6, + "206": 6, + "207": 4, + "208": 3, + "209": 3, + "210": 4, + "211": 1, + "212": 1, + "213": 1, + "214": 5, + "215": 3, + "216": 10, + "217": 12, + "218": 4, + "219": 2, + "220": 3, + "222": 13, + "223": 4, + "224": 5, + "225": 1, + "226": 4, + "227": 7, + "228": 2, + "229": 1, + "231": 4, + "232": 2, + "233": 4, + "234": 1, + "235": 12, + "236": 10, + "237": 2, + "238": 7, + "239": 3, + "240": 5, + "241": 2, + "242": 4, + "243": 1, + "244": 1, + "245": 1, + "246": 4, + "247": 3, + "248": 1, + "249": 4, + "250": 5, + "251": 3, + "252": 3, + "254": 2, + "255": 6, + "257": 4, + "258": 3, + "259": 1, + "260": 3, + "261": 2, + "262": 2, + "263": 2, + "267": 1, + "268": 1, + "269": 2, + "271": 2, + "272": 2, + "274": 1, + "275": 3, + "277": 2, + "278": 3, + "280": 1, + "281": 2, + "282": 2, + "285": 1, + "289": 1, + "292": 3, + "293": 2, + "298": 1, + "304": 1, + "305": 1, + "306": 1, + "307": 1, + "310": 3, + "316": 1, + "327": 1, + "330": 1, + "332": 1, + "333": 3, + "336": 2, + "339": 3, + "342": 2, + "348": 1, + "354": 2, + "355": 1, + "358": 2, + "365": 1, + "369": 2, + "370": 3, + "373": 1, + "374": 1, + "377": 1, + "380": 2, + "384": 3, + "385": 3, + "390": 1, + "393": 1, + "394": 2, + "395": 1, + "396": 2, + "398": 2, + "399": 2, + "402": 1, + "405": 3, + "407": 2, + "408": 1, + "410": 1, + "413": 1, + "428": 2, + "429": 1, + "431": 2, + "436": 3, + "437": 2, + "438": 2, + "440": 1, + "443": 2, + "482": 1, + "490": 2, + "491": 2, + "492": 2, + "498": 1, + "499": 2, + "500": 3, + "502": 1, + "505": 2, + "506": 3, + "507": 1, + "509": 1, + "511": 1, + "545": 4, + "546": 1, + "572": 1, + "579": 1, + "581": 2, + "582": 1, + "584": 1, + "585": 2, + "586": 2, + "591": 1, + "593": 2, + "595": 1, + "596": 1, + "607": 1, + "630": 1, + "631": 1, + "636": 1, + "652": 1, + "662": 1, + "700": 1, + "706": 1, + "708": 1, + "710": 1, + "711": 1, + "714": 1, + "716": 2, + "717": 1, + "723": 1, + "843": 1, + "851": 1, + "855": 1, + "858": 1, + "864": 1, + "1099": 2, + "1102": 1, + "1107": 1, + "1110": 1, + "1121": 1, + "1134": 2, + "1150": 1, + "1154": 1, + "1165": 2, + "1166": 1, + "1167": 1, + "1169": 1, + "1171": 1, + "1196": 1, + "1252": 1, + "1254": 1, + "1255": 2, + "1265": 1 + }, + "started": "2020-09-07T18:49:48.000Z", + "trafficStats": { + "incomingCompressionRatio": 0.05578854964515461, + "incomingOctetsAppLevel": 4096432, + "incomingOctetsWebSocketLevel": 228534, + "incomingOctetsWireLevel": 236056, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0329141396903743, + "outgoingCompressionRatio": 0.05902185121100509, + "outgoingOctetsAppLevel": 4096432, + "outgoingOctetsWebSocketLevel": 241779, + "outgoingOctetsWireLevel": 245509, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.015427311718552893, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "98": 4, + "99": 2, + "100": 4, + "101": 5, + "102": 6, + "103": 15, + "104": 7, + "105": 7, + "106": 8, + "107": 8, + "108": 6, + "110": 3, + "111": 1, + "112": 1, + "113": 1, + "114": 3, + "116": 2, + "117": 3, + "118": 1, + "119": 11, + "120": 7, + "121": 7, + "122": 3, + "123": 2, + "124": 6, + "125": 2, + "126": 3, + "127": 7, + "131": 3, + "132": 14, + "133": 7, + "134": 3, + "135": 3, + "136": 1, + "137": 1, + "138": 4, + "139": 5, + "140": 12, + "141": 9, + "142": 13, + "143": 6, + "144": 5, + "145": 9, + "146": 8, + "147": 8, + "148": 5, + "149": 7, + "150": 5, + "151": 7, + "152": 9, + "153": 4, + "154": 8, + "155": 10, + "156": 7, + "157": 4, + "158": 5, + "159": 7, + "160": 9, + "161": 15, + "162": 8, + "163": 3, + "164": 4, + "165": 10, + "166": 1, + "167": 3, + "168": 3, + "169": 7, + "170": 8, + "171": 8, + "172": 3, + "173": 11, + "175": 2, + "176": 7, + "178": 2, + "179": 12, + "180": 6, + "181": 3, + "182": 4, + "183": 3, + "184": 2, + "185": 7, + "186": 5, + "187": 5, + "188": 13, + "189": 6, + "190": 17, + "191": 6, + "192": 5, + "193": 6, + "194": 8, + "195": 2, + "196": 5, + "197": 3, + "198": 1, + "199": 4, + "200": 6, + "201": 2, + "202": 3, + "203": 4, + "204": 1, + "205": 2, + "206": 2, + "207": 2, + "208": 5, + "209": 6, + "210": 8, + "211": 5, + "212": 4, + "213": 2, + "214": 3, + "215": 4, + "216": 10, + "217": 4, + "218": 4, + "219": 3, + "220": 3, + "222": 7, + "223": 2, + "224": 2, + "225": 7, + "226": 3, + "227": 2, + "228": 4, + "229": 6, + "230": 10, + "231": 7, + "232": 2, + "233": 4, + "235": 4, + "236": 5, + "237": 1, + "238": 2, + "239": 4, + "240": 3, + "241": 2, + "242": 7, + "243": 4, + "244": 5, + "245": 5, + "246": 4, + "247": 3, + "248": 2, + "250": 2, + "251": 4, + "252": 2, + "253": 1, + "254": 2, + "256": 3, + "258": 3, + "259": 5, + "260": 4, + "261": 2, + "263": 1, + "266": 4, + "267": 6, + "268": 1, + "269": 2, + "270": 12, + "271": 5, + "272": 1, + "273": 1, + "278": 2, + "283": 3, + "286": 5, + "287": 2, + "288": 1, + "289": 1, + "291": 1, + "292": 3, + "293": 2, + "294": 2, + "295": 4, + "296": 3, + "299": 4, + "300": 1, + "307": 1, + "314": 1, + "316": 1, + "326": 3, + "329": 2, + "330": 1, + "334": 2, + "337": 3, + "343": 1, + "344": 1, + "345": 1, + "346": 1, + "348": 1, + "349": 2, + "350": 1, + "351": 1, + "357": 1, + "358": 1, + "359": 1, + "360": 1, + "361": 2, + "369": 1, + "370": 1, + "376": 2, + "380": 2, + "381": 3, + "382": 3, + "383": 1, + "384": 1, + "385": 1, + "389": 1, + "390": 1, + "395": 1, + "396": 2, + "397": 1, + "398": 3, + "399": 2, + "402": 1, + "403": 1, + "405": 2, + "406": 1, + "409": 2, + "412": 2, + "416": 1, + "430": 2, + "431": 1, + "432": 1, + "433": 1, + "443": 1, + "444": 3, + "445": 3, + "446": 1, + "448": 2, + "489": 1, + "495": 1, + "499": 1, + "500": 2, + "501": 2, + "503": 1, + "504": 1, + "507": 3, + "508": 3, + "509": 1, + "510": 4, + "513": 1, + "515": 1, + "547": 2, + "549": 3, + "573": 1, + "580": 1, + "587": 4, + "588": 1, + "590": 1, + "592": 1, + "594": 1, + "595": 1, + "597": 3, + "600": 1, + "609": 1, + "634": 1, + "635": 1, + "640": 1, + "656": 1, + "665": 1, + "696": 1, + "702": 1, + "704": 1, + "713": 1, + "714": 1, + "715": 1, + "719": 2, + "720": 2, + "843": 1, + "851": 1, + "853": 1, + "857": 1, + "863": 1, + "1095": 1, + "1096": 1, + "1098": 1, + "1103": 1, + "1107": 1, + "1121": 1, + "1132": 1, + "1134": 1, + "1150": 1, + "1153": 1, + "1165": 3, + "1166": 1, + "1168": 1, + "1171": 1, + "1195": 1, + "1250": 1, + "1252": 1, + "1254": 2, + "1262": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333630266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88828d7ebc8e8e96" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "8d7ebc8e" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_4_6.html b/autobahn/client/tungstenite_case_12_4_6.html new file mode 100644 index 0000000..f3315a9 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_6.html @@ -0,0 +1,1160 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.4.6 : Pass - 1151 ms @ 2020-09-07T18:49:48.968Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=361&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 5ujpxXNffF/GCLQNxACAJw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: bo+mtNWGXhLsUXgo19QFEujIi7E=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
1504600
1514604
1525760
1536918
15471078
1554620
1565780
1572314
1592318
1631163
1651165
1701170
1762352
1791179
1801180
1812362
1832366
1855925
1865930
1873561
1883564
1893567
1912382
1922384
1935965
1945970
1952390
1964784
1973591
1985990
19991791
20061200
2014804
2024808
2032406
20451020
2051205
2063618
2072414
2083624
20961254
2102420
2113633
21291908
21371491
2144856
2152430
2164864
2251225
2272454
2311231
2323696
2333699
2343702
2354940
2371237
23851190
23971673
24071680
2411241
2423726
2433729
2451245
2461246
24792223
24871736
2502500
2511251
2522504
2541254
2551255
2573771
2611261
2631263
26441056
2653795
2672534
2681268
2693807
2703810
2712542
27441096
2751275
2763828
27741108
27841112
28061680
28141124
28251410
28351415
2843852
2853855
2872574
2881288
2893867
2911291
2923876
2951295
29841192
2992598
3001300
3021302
3031303
3041304
3061306
3081308
30951545
3103930
3111311
3122624
3141314
31541260
3162632
31851590
31941276
3201320
3211321
3221322
3251325
3261326
3273981
32882624
3291329
3302660
3313993
33241328
33341332
3341334
3352670
3362672
3372674
33882704
33993051
34093060
34131023
34272394
34331029
34441376
34541380
34672422
34772429
34882784
34951745
35062100
35182808
35272464
35382824
35472478
35531065
35651780
35772499
35851790
35993231
36062160
36172527
36282896
36351815
36493276
36562190
36693294
36751835
3682736
36931107
37062220
37162226
3722744
3741374
3752750
37651880
3772754
3781378
3791379
3811381
3822764
3842768
3852770
3862772
38741548
38831164
3891389
3901390
39231176
3932786
39431182
3951395
3981398
4031403
40431212
4071407
4081408
4111411
4151415
41631248
41731251
4182836
41993771
42072940
42141684
42241688
4231423
42431272
4251425
42631278
42731281
4282856
42931287
43241728
43441736
43531305
4382876
4421442
4431443
4441444
4502900
4511451
45231356
4531453
45531365
4561456
4572914
4582916
4591459
4601460
4611461
4632926
4641464
4671467
46862808
4692938
47031410
4722944
47341892
4741474
4761476
4781478
47941916
4811481
4821482
48531455
4861486
4871487
4901490
4941494
4952990
5071507
5091509
51021020
5141514
5151515
5181518
51931557
5211521
5221522
5291529
5301530
5351535
5381538
54031620
5411541
5431543
54421088
5461546
5471547
54921098
5531553
55421108
5551555
55621112
55731671
5581558
5611561
5621562
56531695
5661566
5751575
5761576
5771577
5781578
57921158
5801580
58152905
5851585
58621172
5911591
6001600
6041604
60531815
6071607
6091609
6111611
61221224
6141614
6151615
61821236
62042480
6211621
62221244
62521250
6261626
6271627
63021260
63131893
6331633
6361636
6381638
6401640
6431643
6581658
6601660
6631663
6661666
6681668
6781678
6821682
6831683
6851685
68821376
6901690
69321386
6941694
7011701
70221404
70321406
70421408
7061706
70721414
7101710
7301730
7311731
7321732
73532205
7371737
7381738
7391739
74221484
7441744
7451745
75121502
75821516
76021520
7611761
7621762
76343052
7641764
7691769
8031803
8111811
8411841
8471847
8581858
86821736
8711871
8821882
9061906
9091909
9101910
92321846
9251925
9391939
9441944
9481948
9491949
95321906
9551955
9561956
9571957
9701970
9741974
100411004
102811028
103311033
104311043
105611056
113111131
115511155
118011180
119511195
120811208
121511215
123411234
124111241
124422488
124511245
124711247
124811248
124911249
125911259
129811298
131111311
131411314
132011320
134211342
156011560
156611566
157511575
158511585
159211592
169611696
171311713
172611726
175311753
176111761
177811778
179711797
181211812
182711827
184011840
205112051
206212062
208212082
209712097
210312103
212012120
212112121
214612146
215512155
218912189
221512215
228412284
Total1002440085
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
1731173
1742348
1752350
1762352
1772354
1781178
1793537
1802360
1815905
18261092
18361098
1843552
1851185
1861186
1871187
1881188
1895945
1901190
1911191
1922384
1933579
1941194
1961196
1981198
1991199
2043612
2051205
2061206
2082416
2094836
2112422
2131213
2161216
2171217
2181218
2201220
2213663
22261332
2231223
22451120
2252450
2263678
2273681
2303690
2314924
2323696
2343702
2352470
2362472
2373711
2382476
2391239
24051200
2412482
2422484
2433729
2442488
2453735
24651230
24792223
24871736
2494996
2502500
25141004
2521252
2533759
2541254
2571257
2592518
2621262
2662532
2672534
26841072
2693807
2701270
2713813
27241088
2741274
2751275
27651380
2771277
2783834
2792558
2801280
281102810
2822564
28361698
28451420
2852570
28651430
2873861
28841152
28951445
29041160
29161746
2921292
2932586
29441176
2951295
2961296
2971297
29941196
3001300
3011301
3022604
3032606
3042608
30741228
3083924
3091309
31051550
31141244
31241248
31361878
3143942
3161316
3172634
3183954
31941276
3203960
32161926
32282576
32451620
3272654
3301330
3312662
3322664
3331333
3341334
3351335
3362672
3371337
3382676
3391339
3402680
34131023
3421342
3432686
34431032
34531035
34641384
34851740
34931047
3501350
35162106
3522704
35351765
35431062
35562130
3562712
3572714
35841432
3592718
36051800
36141444
3622724
36393267
36451820
36582920
366124392
36751835
36872576
36993321
370124440
37131113
37262232
37341492
37441496
37541500
376103760
37741508
3782756
3792758
3801380
38131143
38283056
38341532
3842768
38551925
38651930
38831164
3901390
3912782
3921392
39441576
3952790
3961396
4001400
4031403
4042808
4051405
40631218
4072814
40841632
4101410
4112822
41241648
41383304
41431242
41541660
41631248
41741668
41841672
4191419
42031260
4212842
42231266
4231423
42462544
42562550
4262852
4282856
4291429
4301430
43141724
4331433
4361436
4371437
43831314
44031320
4411441
4421442
4432886
44452220
4452890
44631338
4471447
44852240
44941796
4502900
4511451
45231356
4532906
4542908
4551455
45631368
4571457
45941836
4602920
4621462
4651465
4692938
4702940
4711471
4741474
4762952
47831434
47931437
4802960
48131443
4831483
4851485
4862972
4872974
4892978
4901490
4911491
49252460
4932986
4941494
49531485
4962992
4981498
4991499
50052500
50131503
50221004
5041504
5051505
50631518
5081508
5111511
51321026
5171517
5341534
53521070
5381538
5391539
54121082
5431543
5441544
5461546
55021100
5531553
5541554
55742228
5581558
5591559
5601560
5641564
5651565
5681568
5711571
57321146
57521150
5761576
5771577
5781578
57921158
58021160
58121162
58221164
5851585
5881588
5921592
5931593
59421188
59921198
6011601
60321206
60621212
60721214
6091609
6101610
61231836
6131613
6161616
6241624
6291629
6311631
63231896
6331633
6341634
6401640
64131923
64742588
64821296
6511651
65621312
6571657
6601660
6621662
6641664
6681668
6701670
67621352
6771677
6781678
6811681
6871687
6911691
6941694
6981698
70832124
7111711
7121712
7131713
7151715
72021440
7311731
7351735
73721474
73921478
74621492
75232256
75321506
75421508
7551755
75621512
76021520
7611761
7621762
7641764
7661766
76721534
7721772
77432322
77621552
77721554
77921558
7801780
7811781
8011801
8091809
8391839
8451845
8561856
8811881
8821882
8871887
8981898
9241924
9251925
9291929
9421942
94321886
9521952
9581958
96221924
96721934
96921938
9701970
9851985
9891989
102311023
104511045
105211052
106111061
107311073
114311143
116811168
119211192
120711207
121111211
121911219
123111231
123811238
124111241
125511255
125922518
126111261
126211262
126311263
130711307
132011320
132311323
132911329
135111351
155611556
156111561
157211572
158311583
159111591
169911699
171611716
173011730
175911759
176411764
177811778
179611796
181111811
182711827
183911839
205312053
206112061
208112081
209612096
210312103
211812118
212012120
214512145
215412154
218812188
221512215
228412284
Total1002463454
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333631266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882dd830e1fde6b
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6464383330653166
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_4_6.json b/autobahn/client/tungstenite_case_12_4_6.json new file mode 100644 index 0000000..bc014d6 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_6.json @@ -0,0 +1,1007 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 361, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 1151, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=361&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 5ujpxXNffF/GCLQNxACAJw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: bo+mtNWGXhLsUXgo19QFEujIi7E=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.4.6", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "150": 4, + "151": 4, + "152": 5, + "153": 6, + "154": 7, + "155": 4, + "156": 5, + "157": 2, + "159": 2, + "163": 1, + "165": 1, + "170": 1, + "176": 2, + "179": 1, + "180": 1, + "181": 2, + "183": 2, + "185": 5, + "186": 5, + "187": 3, + "188": 3, + "189": 3, + "191": 2, + "192": 2, + "193": 5, + "194": 5, + "195": 2, + "196": 4, + "197": 3, + "198": 5, + "199": 9, + "200": 6, + "201": 4, + "202": 4, + "203": 2, + "204": 5, + "205": 1, + "206": 3, + "207": 2, + "208": 3, + "209": 6, + "210": 2, + "211": 3, + "212": 9, + "213": 7, + "214": 4, + "215": 2, + "216": 4, + "225": 1, + "227": 2, + "231": 1, + "232": 3, + "233": 3, + "234": 3, + "235": 4, + "237": 1, + "238": 5, + "239": 7, + "240": 7, + "241": 1, + "242": 3, + "243": 3, + "245": 1, + "246": 1, + "247": 9, + "248": 7, + "250": 2, + "251": 1, + "252": 2, + "254": 1, + "255": 1, + "257": 3, + "261": 1, + "263": 1, + "264": 4, + "265": 3, + "267": 2, + "268": 1, + "269": 3, + "270": 3, + "271": 2, + "274": 4, + "275": 1, + "276": 3, + "277": 4, + "278": 4, + "280": 6, + "281": 4, + "282": 5, + "283": 5, + "284": 3, + "285": 3, + "287": 2, + "288": 1, + "289": 3, + "291": 1, + "292": 3, + "295": 1, + "298": 4, + "299": 2, + "300": 1, + "302": 1, + "303": 1, + "304": 1, + "306": 1, + "308": 1, + "309": 5, + "310": 3, + "311": 1, + "312": 2, + "314": 1, + "315": 4, + "316": 2, + "318": 5, + "319": 4, + "320": 1, + "321": 1, + "322": 1, + "325": 1, + "326": 1, + "327": 3, + "328": 8, + "329": 1, + "330": 2, + "331": 3, + "332": 4, + "333": 4, + "334": 1, + "335": 2, + "336": 2, + "337": 2, + "338": 8, + "339": 9, + "340": 9, + "341": 3, + "342": 7, + "343": 3, + "344": 4, + "345": 4, + "346": 7, + "347": 7, + "348": 8, + "349": 5, + "350": 6, + "351": 8, + "352": 7, + "353": 8, + "354": 7, + "355": 3, + "356": 5, + "357": 7, + "358": 5, + "359": 9, + "360": 6, + "361": 7, + "362": 8, + "363": 5, + "364": 9, + "365": 6, + "366": 9, + "367": 5, + "368": 2, + "369": 3, + "370": 6, + "371": 6, + "372": 2, + "374": 1, + "375": 2, + "376": 5, + "377": 2, + "378": 1, + "379": 1, + "381": 1, + "382": 2, + "384": 2, + "385": 2, + "386": 2, + "387": 4, + "388": 3, + "389": 1, + "390": 1, + "392": 3, + "393": 2, + "394": 3, + "395": 1, + "398": 1, + "403": 1, + "404": 3, + "407": 1, + "408": 1, + "411": 1, + "415": 1, + "416": 3, + "417": 3, + "418": 2, + "419": 9, + "420": 7, + "421": 4, + "422": 4, + "423": 1, + "424": 3, + "425": 1, + "426": 3, + "427": 3, + "428": 2, + "429": 3, + "432": 4, + "434": 4, + "435": 3, + "438": 2, + "442": 1, + "443": 1, + "444": 1, + "450": 2, + "451": 1, + "452": 3, + "453": 1, + "455": 3, + "456": 1, + "457": 2, + "458": 2, + "459": 1, + "460": 1, + "461": 1, + "463": 2, + "464": 1, + "467": 1, + "468": 6, + "469": 2, + "470": 3, + "472": 2, + "473": 4, + "474": 1, + "476": 1, + "478": 1, + "479": 4, + "481": 1, + "482": 1, + "485": 3, + "486": 1, + "487": 1, + "490": 1, + "494": 1, + "495": 2, + "507": 1, + "509": 1, + "510": 2, + "514": 1, + "515": 1, + "518": 1, + "519": 3, + "521": 1, + "522": 1, + "529": 1, + "530": 1, + "535": 1, + "538": 1, + "540": 3, + "541": 1, + "543": 1, + "544": 2, + "546": 1, + "547": 1, + "549": 2, + "553": 1, + "554": 2, + "555": 1, + "556": 2, + "557": 3, + "558": 1, + "561": 1, + "562": 1, + "565": 3, + "566": 1, + "575": 1, + "576": 1, + "577": 1, + "578": 1, + "579": 2, + "580": 1, + "581": 5, + "585": 1, + "586": 2, + "591": 1, + "600": 1, + "604": 1, + "605": 3, + "607": 1, + "609": 1, + "611": 1, + "612": 2, + "614": 1, + "615": 1, + "618": 2, + "620": 4, + "621": 1, + "622": 2, + "625": 2, + "626": 1, + "627": 1, + "630": 2, + "631": 3, + "633": 1, + "636": 1, + "638": 1, + "640": 1, + "643": 1, + "658": 1, + "660": 1, + "663": 1, + "666": 1, + "668": 1, + "678": 1, + "682": 1, + "683": 1, + "685": 1, + "688": 2, + "690": 1, + "693": 2, + "694": 1, + "701": 1, + "702": 2, + "703": 2, + "704": 2, + "706": 1, + "707": 2, + "710": 1, + "730": 1, + "731": 1, + "732": 1, + "735": 3, + "737": 1, + "738": 1, + "739": 1, + "742": 2, + "744": 1, + "745": 1, + "751": 2, + "758": 2, + "760": 2, + "761": 1, + "762": 1, + "763": 4, + "764": 1, + "769": 1, + "803": 1, + "811": 1, + "841": 1, + "847": 1, + "858": 1, + "868": 2, + "871": 1, + "882": 1, + "906": 1, + "909": 1, + "910": 1, + "923": 2, + "925": 1, + "939": 1, + "944": 1, + "948": 1, + "949": 1, + "953": 2, + "955": 1, + "956": 1, + "957": 1, + "970": 1, + "974": 1, + "1004": 1, + "1028": 1, + "1033": 1, + "1043": 1, + "1056": 1, + "1131": 1, + "1155": 1, + "1180": 1, + "1195": 1, + "1208": 1, + "1215": 1, + "1234": 1, + "1241": 1, + "1244": 2, + "1245": 1, + "1247": 1, + "1248": 1, + "1249": 1, + "1259": 1, + "1298": 1, + "1311": 1, + "1314": 1, + "1320": 1, + "1342": 1, + "1560": 1, + "1566": 1, + "1575": 1, + "1585": 1, + "1592": 1, + "1696": 1, + "1713": 1, + "1726": 1, + "1753": 1, + "1761": 1, + "1778": 1, + "1797": 1, + "1812": 1, + "1827": 1, + "1840": 1, + "2051": 1, + "2062": 1, + "2082": 1, + "2097": 1, + "2103": 1, + "2120": 1, + "2121": 1, + "2146": 1, + "2155": 1, + "2189": 1, + "2215": 1, + "2284": 1 + }, + "started": "2020-09-07T18:49:48.968Z", + "trafficStats": { + "incomingCompressionRatio": 0.05270701711751375, + "incomingOctetsAppLevel": 8192837, + "incomingOctetsWebSocketLevel": 431820, + "incomingOctetsWireLevel": 439820, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.018526237784261962, + "outgoingCompressionRatio": 0.056048716702163125, + "outgoingOctetsAppLevel": 8192837, + "outgoingOctetsWebSocketLevel": 459198, + "outgoingOctetsWireLevel": 463198, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.008710839332923924, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "173": 1, + "174": 2, + "175": 2, + "176": 2, + "177": 2, + "178": 1, + "179": 3, + "180": 2, + "181": 5, + "182": 6, + "183": 6, + "184": 3, + "185": 1, + "186": 1, + "187": 1, + "188": 1, + "189": 5, + "190": 1, + "191": 1, + "192": 2, + "193": 3, + "194": 1, + "196": 1, + "198": 1, + "199": 1, + "204": 3, + "205": 1, + "206": 1, + "208": 2, + "209": 4, + "211": 2, + "213": 1, + "216": 1, + "217": 1, + "218": 1, + "220": 1, + "221": 3, + "222": 6, + "223": 1, + "224": 5, + "225": 2, + "226": 3, + "227": 3, + "230": 3, + "231": 4, + "232": 3, + "234": 3, + "235": 2, + "236": 2, + "237": 3, + "238": 2, + "239": 1, + "240": 5, + "241": 2, + "242": 2, + "243": 3, + "244": 2, + "245": 3, + "246": 5, + "247": 9, + "248": 7, + "249": 4, + "250": 2, + "251": 4, + "252": 1, + "253": 3, + "254": 1, + "257": 1, + "259": 2, + "262": 1, + "266": 2, + "267": 2, + "268": 4, + "269": 3, + "270": 1, + "271": 3, + "272": 4, + "274": 1, + "275": 1, + "276": 5, + "277": 1, + "278": 3, + "279": 2, + "280": 1, + "281": 10, + "282": 2, + "283": 6, + "284": 5, + "285": 2, + "286": 5, + "287": 3, + "288": 4, + "289": 5, + "290": 4, + "291": 6, + "292": 1, + "293": 2, + "294": 4, + "295": 1, + "296": 1, + "297": 1, + "299": 4, + "300": 1, + "301": 1, + "302": 2, + "303": 2, + "304": 2, + "307": 4, + "308": 3, + "309": 1, + "310": 5, + "311": 4, + "312": 4, + "313": 6, + "314": 3, + "316": 1, + "317": 2, + "318": 3, + "319": 4, + "320": 3, + "321": 6, + "322": 8, + "324": 5, + "327": 2, + "330": 1, + "331": 2, + "332": 2, + "333": 1, + "334": 1, + "335": 1, + "336": 2, + "337": 1, + "338": 2, + "339": 1, + "340": 2, + "341": 3, + "342": 1, + "343": 2, + "344": 3, + "345": 3, + "346": 4, + "348": 5, + "349": 3, + "350": 1, + "351": 6, + "352": 2, + "353": 5, + "354": 3, + "355": 6, + "356": 2, + "357": 2, + "358": 4, + "359": 2, + "360": 5, + "361": 4, + "362": 2, + "363": 9, + "364": 5, + "365": 8, + "366": 12, + "367": 5, + "368": 7, + "369": 9, + "370": 12, + "371": 3, + "372": 6, + "373": 4, + "374": 4, + "375": 4, + "376": 10, + "377": 4, + "378": 2, + "379": 2, + "380": 1, + "381": 3, + "382": 8, + "383": 4, + "384": 2, + "385": 5, + "386": 5, + "388": 3, + "390": 1, + "391": 2, + "392": 1, + "394": 4, + "395": 2, + "396": 1, + "400": 1, + "403": 1, + "404": 2, + "405": 1, + "406": 3, + "407": 2, + "408": 4, + "410": 1, + "411": 2, + "412": 4, + "413": 8, + "414": 3, + "415": 4, + "416": 3, + "417": 4, + "418": 4, + "419": 1, + "420": 3, + "421": 2, + "422": 3, + "423": 1, + "424": 6, + "425": 6, + "426": 2, + "428": 2, + "429": 1, + "430": 1, + "431": 4, + "433": 1, + "436": 1, + "437": 1, + "438": 3, + "440": 3, + "441": 1, + "442": 1, + "443": 2, + "444": 5, + "445": 2, + "446": 3, + "447": 1, + "448": 5, + "449": 4, + "450": 2, + "451": 1, + "452": 3, + "453": 2, + "454": 2, + "455": 1, + "456": 3, + "457": 1, + "459": 4, + "460": 2, + "462": 1, + "465": 1, + "469": 2, + "470": 2, + "471": 1, + "474": 1, + "476": 2, + "478": 3, + "479": 3, + "480": 2, + "481": 3, + "483": 1, + "485": 1, + "486": 2, + "487": 2, + "489": 2, + "490": 1, + "491": 1, + "492": 5, + "493": 2, + "494": 1, + "495": 3, + "496": 2, + "498": 1, + "499": 1, + "500": 5, + "501": 3, + "502": 2, + "504": 1, + "505": 1, + "506": 3, + "508": 1, + "511": 1, + "513": 2, + "517": 1, + "534": 1, + "535": 2, + "538": 1, + "539": 1, + "541": 2, + "543": 1, + "544": 1, + "546": 1, + "550": 2, + "553": 1, + "554": 1, + "557": 4, + "558": 1, + "559": 1, + "560": 1, + "564": 1, + "565": 1, + "568": 1, + "571": 1, + "573": 2, + "575": 2, + "576": 1, + "577": 1, + "578": 1, + "579": 2, + "580": 2, + "581": 2, + "582": 2, + "585": 1, + "588": 1, + "592": 1, + "593": 1, + "594": 2, + "599": 2, + "601": 1, + "603": 2, + "606": 2, + "607": 2, + "609": 1, + "610": 1, + "612": 3, + "613": 1, + "616": 1, + "624": 1, + "629": 1, + "631": 1, + "632": 3, + "633": 1, + "634": 1, + "640": 1, + "641": 3, + "647": 4, + "648": 2, + "651": 1, + "656": 2, + "657": 1, + "660": 1, + "662": 1, + "664": 1, + "668": 1, + "670": 1, + "676": 2, + "677": 1, + "678": 1, + "681": 1, + "687": 1, + "691": 1, + "694": 1, + "698": 1, + "708": 3, + "711": 1, + "712": 1, + "713": 1, + "715": 1, + "720": 2, + "731": 1, + "735": 1, + "737": 2, + "739": 2, + "746": 2, + "752": 3, + "753": 2, + "754": 2, + "755": 1, + "756": 2, + "760": 2, + "761": 1, + "762": 1, + "764": 1, + "766": 1, + "767": 2, + "772": 1, + "774": 3, + "776": 2, + "777": 2, + "779": 2, + "780": 1, + "781": 1, + "801": 1, + "809": 1, + "839": 1, + "845": 1, + "856": 1, + "881": 1, + "882": 1, + "887": 1, + "898": 1, + "924": 1, + "925": 1, + "929": 1, + "942": 1, + "943": 2, + "952": 1, + "958": 1, + "962": 2, + "967": 2, + "969": 2, + "970": 1, + "985": 1, + "989": 1, + "1023": 1, + "1045": 1, + "1052": 1, + "1061": 1, + "1073": 1, + "1143": 1, + "1168": 1, + "1192": 1, + "1207": 1, + "1211": 1, + "1219": 1, + "1231": 1, + "1238": 1, + "1241": 1, + "1255": 1, + "1259": 2, + "1261": 1, + "1262": 1, + "1263": 1, + "1307": 1, + "1320": 1, + "1323": 1, + "1329": 1, + "1351": 1, + "1556": 1, + "1561": 1, + "1572": 1, + "1583": 1, + "1591": 1, + "1699": 1, + "1716": 1, + "1730": 1, + "1759": 1, + "1764": 1, + "1778": 1, + "1796": 1, + "1811": 1, + "1827": 1, + "1839": 1, + "2053": 1, + "2061": 1, + "2081": 1, + "2096": 1, + "2103": 1, + "2118": 1, + "2120": 1, + "2145": 1, + "2154": 1, + "2188": 1, + "2215": 1, + "2284": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333631266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882dd830e1fde6b" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "dd830e1f" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_4_7.html b/autobahn/client/tungstenite_case_12_4_7.html new file mode 100644 index 0000000..3021799 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_7.html @@ -0,0 +1,1419 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.4.7 : Pass - 1485 ms @ 2020-09-07T18:49:50.120Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=362&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ig0HjeFO9QvOrom3BuZR4A==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: zhDn+KPJnnDztaXR4mipRINHgY8=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
2722544
2731273
2752550
2762552
2771277
2781278
2841284
2851285
2931293
2951295
2971297
2992598
3071307
3171317
3182636
3191319
3231323
3332666
3351335
3381338
3411341
3481348
3501350
3511351
3521352
35331059
3551355
35731071
3602720
36151805
36251810
36341452
36451820
36562190
36651830
36772569
36862208
36941476
37041480
37141484
3721372
37331119
3742748
3751375
3772754
3781378
3792758
38031140
3812762
3821382
3832766
3961396
4131413
4191419
4321432
4342868
4391439
4401440
4491449
4542908
4551455
4581458
4631463
4671467
4691469
47031410
4711471
4721472
4742948
4791479
4801480
4811481
4851485
4871487
4881488
4892978
4902980
4911491
4931493
49531485
4981498
4991499
5001500
5101510
5111511
5131513
5141514
5151515
51821036
5191519
5211521
5231523
5291529
5331533
5341534
53542140
53621072
53852690
53942156
5401540
54131623
54221084
5431543
54421088
54521090
54621092
54721094
5481548
55131653
5521552
5541554
5561556
55731671
55942236
56063360
56121122
56221124
56421128
56521130
56721134
56821136
5691569
57021140
57152855
5721572
57621152
57731731
5781578
5791579
58021160
58131743
58321166
58442336
5851585
58631758
5881588
58931767
59021180
59163546
59231776
59321186
59421188
59531785
59631788
59863588
59921198
60031800
60184808
6021602
60342412
60431812
60521210
60621212
60731821
608127296
60953045
6101610
61142444
61221224
61321226
61442456
61531845
61621232
61742468
61831854
61931857
62021240
6211621
6221622
62431872
62521250
62653130
62753135
62842512
62921258
63021260
63131893
63242528
6331633
63421268
63521270
6361636
63721274
63863828
63921278
64021280
64131923
64321286
64431932
64621292
64731941
64842592
6501650
65121302
65221304
65321306
6541654
6551655
65631968
65721314
65831974
65921318
66031980
66231986
66421328
66521330
6661666
6671667
6691669
67064020
6711671
67264032
6731673
67432022
67564050
6761676
67732031
67821356
6791679
68021360
68121362
6831683
6841684
68521370
6881688
68921378
69021380
69221384
6931693
69432082
69521390
69621392
6971697
69821396
6991699
7001700
70121402
70232106
70332109
7051705
7061706
70842832
70932127
71032130
71121422
7131713
71421428
71532145
7161716
71742868
71821436
71921438
72021440
7221722
72321446
7241724
72532175
7271727
7291729
73021460
7311731
7321732
7381738
7401740
74121482
7421742
74321486
7441744
7451745
7481748
7501750
7531753
7541754
75721514
7581758
76132283
7621762
7631763
7671767
7681768
7701770
7751775
77821556
7791779
7801780
7821782
7831783
7841784
7971797
7981798
8101810
8111811
81321626
8151815
8161816
8201820
8251825
8261826
8271827
8281828
83821676
8411841
84321686
84432532
8451845
84632538
8501850
85121702
8521852
85332559
85432562
8551855
85643424
8591859
86221724
8841884
8861886
8881888
8941894
8961896
9011901
9031903
9071907
9091909
91021820
9121912
91354565
9141914
9151915
9161916
91721834
9181918
9191919
92032760
9221922
9231923
9241924
92543700
92643704
9281928
93232796
9331933
93721874
93832814
93932817
94032820
94121882
94243768
94321886
94421888
94532835
94821896
94932847
95021900
9511951
95221904
9561956
9571957
9581958
95921918
9601960
96221924
96632898
9671967
97021940
9721972
9741974
9751975
97621952
9771977
9781978
98021960
98132943
98443936
9901990
9941994
99621992
100011000
100122002
100411004
100511005
100611006
100833024
101111011
101411014
101711017
101911019
102311023
102422048
102511025
102911029
103011030
103111031
103522070
103822076
103911039
104011040
104311043
104611046
105011050
105111051
105411054
105811058
106111061
106211062
106311063
106511065
106611066
106711067
106833204
107022140
107211072
107311073
107611076
108111081
108211082
108911089
109311093
109422188
109511095
109611096
110322206
110711107
110911109
111511115
111722234
111911119
112711127
112911129
113011130
113111131
113211132
113411134
113722274
113811138
113933417
114311143
114411144
114511145
114622292
114711147
114811148
115011150
115511155
115911159
116011160
116111161
116811168
117511175
117811178
118311183
118511185
119311193
119522390
119611196
120411204
123111231
123411234
124211242
124311243
125011250
125511255
125611256
125922518
126011260
126111261
126222524
126445056
126811268
127011270
128111281
128811288
129511295
129711297
130111301
130411304
131011310
133711337
134411344
134811348
134911349
135011350
144211442
147411474
147611476
147811478
148311483
149411494
150711507
150811508
151023020
151811518
151911519
152511525
152811528
152911529
153011530
153211532
153423068
153723074
153911539
154011540
154423088
154723094
154911549
155411554
155623112
155711557
158911589
159111591
159611596
159811598
160123202
160411604
160711607
161711617
163011630
163211632
163311633
165011650
165534965
165611656
165723314
165811658
183411834
185011850
186511865
188011880
188211882
190111901
192611926
193511935
197711977
203412034
206312063
207412074
208312083
211312113
214212142
223912239
228412284
232312323
234112341
234412344
236012360
237112371
240912409
244012440
244312443
244412444
244724894
244812448
246312463
246724934
247012470
247112471
248512485
248812488
249212492
249712497
249912499
250537515
250937527
251812518
253025060
253112531
253612536
253712537
254812548
254912549
255312553
255912559
256412564
257112571
260712607
Total1002849497
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
3271327
3281328
3303990
3312662
3341334
3381338
3431343
3471347
3511351
3641364
3701370
3711371
3751375
3811381
3911391
3941394
3951395
3961396
3991399
4091409
41231236
4151415
4161416
4172834
41941676
42041680
4211421
42331269
4242848
4251425
42631278
42731281
4311431
4331433
43531305
4371437
4391439
4401440
44131323
44231326
44331329
44431332
44583560
44641784
4482896
44973143
45031350
45183608
45241808
45352265
4551455
4601460
4612922
4651465
5141514
5191519
5211521
5221522
52331569
5241524
5251525
52721054
5361536
5371537
5381538
5391539
5401540
5411541
54921098
5521552
55421108
5581558
55931677
5601560
56121122
56221124
5641564
5651565
5681568
57021140
5721572
5731573
5741574
5751575
5761576
5771577
57821156
58021160
5831583
5891589
5901590
5941594
60421208
60521210
6061606
60721214
6081608
60921218
6111611
61221224
6141614
6161616
61721234
6191619
6201620
6211621
6221622
62421248
6251625
62621252
62721254
62821256
6291629
63031890
6311631
63242528
63331899
6341634
63563810
63663816
63763822
63885104
63931917
64053200
641117051
6421642
64342572
64463864
64531935
64621292
64742588
64895832
6491649
6501650
65153255
65342612
65453270
65542620
65663936
65742628
65842632
65953295
6601660
66131983
66221324
6631663
66442656
66542660
6661666
66785336
66821336
66932007
67032010
67132013
67232016
67432022
67521350
67632028
6771677
67821356
67953395
68032040
68121362
68253410
68364098
68532055
68632058
68742748
68874816
68921378
69064140
69132073
69242768
69332079
69464164
69553475
69653480
6971697
69874886
69953495
70032100
7011701
7021702
70364218
70442816
70564230
70674942
7081708
70942836
71032130
71142844
7121712
71321426
71521430
71621432
71742868
71864308
71942876
7211721
72242888
7231723
72442896
72542900
72632178
7271727
7291729
73021460
7311731
73242928
73332199
73421468
73532205
73832214
73932217
74142964
7421742
74321486
7471747
74932247
7541754
7571757
75821516
75932277
7661766
7701770
77121542
7721772
7771777
7801780
7871787
7951795
7961796
7981798
8021802
8031803
8071807
8091809
8111811
8141814
8161816
8171817
8211821
8221822
8251825
8261826
8271827
8281828
8301830
83132493
8321832
8331833
8341834
8381838
8391839
8411841
8451845
8481848
8511851
8541854
8631863
86421728
8661866
8671867
8711871
8761876
8801880
8811881
8841884
8851885
8861886
8891889
8911891
8921892
8951895
8961896
8981898
9051905
9061906
90721814
90854540
90932727
9131913
9141914
9201920
9251925
92732781
9301930
9331933
9371937
9381938
9411941
94532835
9501950
9551955
9561956
95832874
95921918
96021920
9641964
9711971
97221944
9741974
97621952
97732931
97821956
9791979
98132943
9851985
9861986
98721974
9891989
9901990
99121982
9931993
99421988
99921998
100022000
100122002
100233006
100311003
100411004
100722014
100922018
101011010
101211012
101311013
101411014
101555075
101611016
101711017
101911019
102022040
102211022
102433072
102511025
102622052
102711027
102811028
102911029
103011030
103111031
103233096
103411034
103611036
103733111
103811038
104011040
104322086
104722094
105022100
105111051
105333159
105411054
105522110
105733171
105833174
105911059
106011060
106211062
106322126
106422128
106511065
106911069
107411074
107911079
108011080
108111081
108333249
108511085
108611086
108911089
109211092
109811098
110011100
110111101
110611106
110822216
111111111
111411114
111511115
111611116
111811118
112022240
112111121
112211122
112511125
112622252
112722254
112911129
113011130
113211132
113622272
113922278
114122282
114611146
115011150
115111151
115211152
115311153
115411154
116311163
116711167
118011180
118111181
118322366
118611186
118733561
118922378
119233576
119311193
119422388
119511195
119711197
119811198
120011200
120222404
120511205
121111211
121611216
122811228
123011230
123211232
123311233
123811238
124011240
124211242
124411244
126611266
127222544
127711277
128211282
128411284
129111291
129711297
129811298
130022600
130211302
130311303
130422608
130533915
131011310
131111311
132111321
133211332
134511345
134711347
135111351
135311353
135611356
136211362
138711387
139511395
139922798
140111401
144511445
148111481
151511515
152311523
153311533
154011540
155111551
155511555
156111561
156611566
156711567
156834704
157511575
157711577
157923158
158111581
158323166
158411584
158511585
158834764
159011590
159211592
159723194
159811598
160411604
163611636
163911639
164011640
164311643
164523290
164811648
165211652
166111661
167523350
167611676
169511695
169611696
169846792
170123402
183611836
185511855
186811868
188311883
190611906
192611926
196711967
197511975
201612016
207012070
207312073
208112081
209112091
211812118
214212142
227712277
232212322
234512345
235912359
237312373
237512375
239612396
241112411
244412444
247412474
247612476
247824956
247912479
248712487
249237476
249312493
250012500
250212502
250712507
250812508
251212512
251312513
251425028
251512515
251925038
252312523
253312533
253712537
253812538
254012540
254312543
255112551
255312553
255512555
256412564
256712567
257412574
261112611
Total1002901923
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333632266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88820cba0e870f52
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3063626130653837
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_4_7.json b/autobahn/client/tungstenite_case_12_4_7.json new file mode 100644 index 0000000..dbd07b2 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_7.json @@ -0,0 +1,1266 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 362, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 1485, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=362&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ig0HjeFO9QvOrom3BuZR4A==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: zhDn+KPJnnDztaXR4mipRINHgY8=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.4.7", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "272": 2, + "273": 1, + "275": 2, + "276": 2, + "277": 1, + "278": 1, + "284": 1, + "285": 1, + "293": 1, + "295": 1, + "297": 1, + "299": 2, + "307": 1, + "317": 1, + "318": 2, + "319": 1, + "323": 1, + "333": 2, + "335": 1, + "338": 1, + "341": 1, + "348": 1, + "350": 1, + "351": 1, + "352": 1, + "353": 3, + "355": 1, + "357": 3, + "360": 2, + "361": 5, + "362": 5, + "363": 4, + "364": 5, + "365": 6, + "366": 5, + "367": 7, + "368": 6, + "369": 4, + "370": 4, + "371": 4, + "372": 1, + "373": 3, + "374": 2, + "375": 1, + "377": 2, + "378": 1, + "379": 2, + "380": 3, + "381": 2, + "382": 1, + "383": 2, + "396": 1, + "413": 1, + "419": 1, + "432": 1, + "434": 2, + "439": 1, + "440": 1, + "449": 1, + "454": 2, + "455": 1, + "458": 1, + "463": 1, + "467": 1, + "469": 1, + "470": 3, + "471": 1, + "472": 1, + "474": 2, + "479": 1, + "480": 1, + "481": 1, + "485": 1, + "487": 1, + "488": 1, + "489": 2, + "490": 2, + "491": 1, + "493": 1, + "495": 3, + "498": 1, + "499": 1, + "500": 1, + "510": 1, + "511": 1, + "513": 1, + "514": 1, + "515": 1, + "518": 2, + "519": 1, + "521": 1, + "523": 1, + "529": 1, + "533": 1, + "534": 1, + "535": 4, + "536": 2, + "538": 5, + "539": 4, + "540": 1, + "541": 3, + "542": 2, + "543": 1, + "544": 2, + "545": 2, + "546": 2, + "547": 2, + "548": 1, + "551": 3, + "552": 1, + "554": 1, + "556": 1, + "557": 3, + "559": 4, + "560": 6, + "561": 2, + "562": 2, + "564": 2, + "565": 2, + "567": 2, + "568": 2, + "569": 1, + "570": 2, + "571": 5, + "572": 1, + "576": 2, + "577": 3, + "578": 1, + "579": 1, + "580": 2, + "581": 3, + "583": 2, + "584": 4, + "585": 1, + "586": 3, + "588": 1, + "589": 3, + "590": 2, + "591": 6, + "592": 3, + "593": 2, + "594": 2, + "595": 3, + "596": 3, + "598": 6, + "599": 2, + "600": 3, + "601": 8, + "602": 1, + "603": 4, + "604": 3, + "605": 2, + "606": 2, + "607": 3, + "608": 12, + "609": 5, + "610": 1, + "611": 4, + "612": 2, + "613": 2, + "614": 4, + "615": 3, + "616": 2, + "617": 4, + "618": 3, + "619": 3, + "620": 2, + "621": 1, + "622": 1, + "624": 3, + "625": 2, + "626": 5, + "627": 5, + "628": 4, + "629": 2, + "630": 2, + "631": 3, + "632": 4, + "633": 1, + "634": 2, + "635": 2, + "636": 1, + "637": 2, + "638": 6, + "639": 2, + "640": 2, + "641": 3, + "643": 2, + "644": 3, + "646": 2, + "647": 3, + "648": 4, + "650": 1, + "651": 2, + "652": 2, + "653": 2, + "654": 1, + "655": 1, + "656": 3, + "657": 2, + "658": 3, + "659": 2, + "660": 3, + "662": 3, + "664": 2, + "665": 2, + "666": 1, + "667": 1, + "669": 1, + "670": 6, + "671": 1, + "672": 6, + "673": 1, + "674": 3, + "675": 6, + "676": 1, + "677": 3, + "678": 2, + "679": 1, + "680": 2, + "681": 2, + "683": 1, + "684": 1, + "685": 2, + "688": 1, + "689": 2, + "690": 2, + "692": 2, + "693": 1, + "694": 3, + "695": 2, + "696": 2, + "697": 1, + "698": 2, + "699": 1, + "700": 1, + "701": 2, + "702": 3, + "703": 3, + "705": 1, + "706": 1, + "708": 4, + "709": 3, + "710": 3, + "711": 2, + "713": 1, + "714": 2, + "715": 3, + "716": 1, + "717": 4, + "718": 2, + "719": 2, + "720": 2, + "722": 1, + "723": 2, + "724": 1, + "725": 3, + "727": 1, + "729": 1, + "730": 2, + "731": 1, + "732": 1, + "738": 1, + "740": 1, + "741": 2, + "742": 1, + "743": 2, + "744": 1, + "745": 1, + "748": 1, + "750": 1, + "753": 1, + "754": 1, + "757": 2, + "758": 1, + "761": 3, + "762": 1, + "763": 1, + "767": 1, + "768": 1, + "770": 1, + "775": 1, + "778": 2, + "779": 1, + "780": 1, + "782": 1, + "783": 1, + "784": 1, + "797": 1, + "798": 1, + "810": 1, + "811": 1, + "813": 2, + "815": 1, + "816": 1, + "820": 1, + "825": 1, + "826": 1, + "827": 1, + "828": 1, + "838": 2, + "841": 1, + "843": 2, + "844": 3, + "845": 1, + "846": 3, + "850": 1, + "851": 2, + "852": 1, + "853": 3, + "854": 3, + "855": 1, + "856": 4, + "859": 1, + "862": 2, + "884": 1, + "886": 1, + "888": 1, + "894": 1, + "896": 1, + "901": 1, + "903": 1, + "907": 1, + "909": 1, + "910": 2, + "912": 1, + "913": 5, + "914": 1, + "915": 1, + "916": 1, + "917": 2, + "918": 1, + "919": 1, + "920": 3, + "922": 1, + "923": 1, + "924": 1, + "925": 4, + "926": 4, + "928": 1, + "932": 3, + "933": 1, + "937": 2, + "938": 3, + "939": 3, + "940": 3, + "941": 2, + "942": 4, + "943": 2, + "944": 2, + "945": 3, + "948": 2, + "949": 3, + "950": 2, + "951": 1, + "952": 2, + "956": 1, + "957": 1, + "958": 1, + "959": 2, + "960": 1, + "962": 2, + "966": 3, + "967": 1, + "970": 2, + "972": 1, + "974": 1, + "975": 1, + "976": 2, + "977": 1, + "978": 1, + "980": 2, + "981": 3, + "984": 4, + "990": 1, + "994": 1, + "996": 2, + "1000": 1, + "1001": 2, + "1004": 1, + "1005": 1, + "1006": 1, + "1008": 3, + "1011": 1, + "1014": 1, + "1017": 1, + "1019": 1, + "1023": 1, + "1024": 2, + "1025": 1, + "1029": 1, + "1030": 1, + "1031": 1, + "1035": 2, + "1038": 2, + "1039": 1, + "1040": 1, + "1043": 1, + "1046": 1, + "1050": 1, + "1051": 1, + "1054": 1, + "1058": 1, + "1061": 1, + "1062": 1, + "1063": 1, + "1065": 1, + "1066": 1, + "1067": 1, + "1068": 3, + "1070": 2, + "1072": 1, + "1073": 1, + "1076": 1, + "1081": 1, + "1082": 1, + "1089": 1, + "1093": 1, + "1094": 2, + "1095": 1, + "1096": 1, + "1103": 2, + "1107": 1, + "1109": 1, + "1115": 1, + "1117": 2, + "1119": 1, + "1127": 1, + "1129": 1, + "1130": 1, + "1131": 1, + "1132": 1, + "1134": 1, + "1137": 2, + "1138": 1, + "1139": 3, + "1143": 1, + "1144": 1, + "1145": 1, + "1146": 2, + "1147": 1, + "1148": 1, + "1150": 1, + "1155": 1, + "1159": 1, + "1160": 1, + "1161": 1, + "1168": 1, + "1175": 1, + "1178": 1, + "1183": 1, + "1185": 1, + "1193": 1, + "1195": 2, + "1196": 1, + "1204": 1, + "1231": 1, + "1234": 1, + "1242": 1, + "1243": 1, + "1250": 1, + "1255": 1, + "1256": 1, + "1259": 2, + "1260": 1, + "1261": 1, + "1262": 2, + "1264": 4, + "1268": 1, + "1270": 1, + "1281": 1, + "1288": 1, + "1295": 1, + "1297": 1, + "1301": 1, + "1304": 1, + "1310": 1, + "1337": 1, + "1344": 1, + "1348": 1, + "1349": 1, + "1350": 1, + "1442": 1, + "1474": 1, + "1476": 1, + "1478": 1, + "1483": 1, + "1494": 1, + "1507": 1, + "1508": 1, + "1510": 2, + "1518": 1, + "1519": 1, + "1525": 1, + "1528": 1, + "1529": 1, + "1530": 1, + "1532": 1, + "1534": 2, + "1537": 2, + "1539": 1, + "1540": 1, + "1544": 2, + "1547": 2, + "1549": 1, + "1554": 1, + "1556": 2, + "1557": 1, + "1589": 1, + "1591": 1, + "1596": 1, + "1598": 1, + "1601": 2, + "1604": 1, + "1607": 1, + "1617": 1, + "1630": 1, + "1632": 1, + "1633": 1, + "1650": 1, + "1655": 3, + "1656": 1, + "1657": 2, + "1658": 1, + "1834": 1, + "1850": 1, + "1865": 1, + "1880": 1, + "1882": 1, + "1901": 1, + "1926": 1, + "1935": 1, + "1977": 1, + "2034": 1, + "2063": 1, + "2074": 1, + "2083": 1, + "2113": 1, + "2142": 1, + "2239": 1, + "2284": 1, + "2323": 1, + "2341": 1, + "2344": 1, + "2360": 1, + "2371": 1, + "2409": 1, + "2440": 1, + "2443": 1, + "2444": 1, + "2447": 2, + "2448": 1, + "2463": 1, + "2467": 2, + "2470": 1, + "2471": 1, + "2485": 1, + "2488": 1, + "2492": 1, + "2497": 1, + "2499": 1, + "2505": 3, + "2509": 3, + "2518": 1, + "2530": 2, + "2531": 1, + "2536": 1, + "2537": 1, + "2548": 1, + "2549": 1, + "2553": 1, + "2559": 1, + "2564": 1, + "2571": 1, + "2607": 1 + }, + "started": "2020-09-07T18:49:50.120Z", + "trafficStats": { + "incomingCompressionRatio": 0.051339481061322224, + "incomingOctetsAppLevel": 16385674, + "incomingOctetsWebSocketLevel": 841232, + "incomingOctetsWireLevel": 849232, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.009509861726610495, + "outgoingCompressionRatio": 0.05478364820391276, + "outgoingOctetsAppLevel": 16385674, + "outgoingOctetsWebSocketLevel": 897667, + "outgoingOctetsWireLevel": 901667, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.004455995374676801, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "327": 1, + "328": 1, + "330": 3, + "331": 2, + "334": 1, + "338": 1, + "343": 1, + "347": 1, + "351": 1, + "364": 1, + "370": 1, + "371": 1, + "375": 1, + "381": 1, + "391": 1, + "394": 1, + "395": 1, + "396": 1, + "399": 1, + "409": 1, + "412": 3, + "415": 1, + "416": 1, + "417": 2, + "419": 4, + "420": 4, + "421": 1, + "423": 3, + "424": 2, + "425": 1, + "426": 3, + "427": 3, + "431": 1, + "433": 1, + "435": 3, + "437": 1, + "439": 1, + "440": 1, + "441": 3, + "442": 3, + "443": 3, + "444": 3, + "445": 8, + "446": 4, + "448": 2, + "449": 7, + "450": 3, + "451": 8, + "452": 4, + "453": 5, + "455": 1, + "460": 1, + "461": 2, + "465": 1, + "514": 1, + "519": 1, + "521": 1, + "522": 1, + "523": 3, + "524": 1, + "525": 1, + "527": 2, + "536": 1, + "537": 1, + "538": 1, + "539": 1, + "540": 1, + "541": 1, + "549": 2, + "552": 1, + "554": 2, + "558": 1, + "559": 3, + "560": 1, + "561": 2, + "562": 2, + "564": 1, + "565": 1, + "568": 1, + "570": 2, + "572": 1, + "573": 1, + "574": 1, + "575": 1, + "576": 1, + "577": 1, + "578": 2, + "580": 2, + "583": 1, + "589": 1, + "590": 1, + "594": 1, + "604": 2, + "605": 2, + "606": 1, + "607": 2, + "608": 1, + "609": 2, + "611": 1, + "612": 2, + "614": 1, + "616": 1, + "617": 2, + "619": 1, + "620": 1, + "621": 1, + "622": 1, + "624": 2, + "625": 1, + "626": 2, + "627": 2, + "628": 2, + "629": 1, + "630": 3, + "631": 1, + "632": 4, + "633": 3, + "634": 1, + "635": 6, + "636": 6, + "637": 6, + "638": 8, + "639": 3, + "640": 5, + "641": 11, + "642": 1, + "643": 4, + "644": 6, + "645": 3, + "646": 2, + "647": 4, + "648": 9, + "649": 1, + "650": 1, + "651": 5, + "653": 4, + "654": 5, + "655": 4, + "656": 6, + "657": 4, + "658": 4, + "659": 5, + "660": 1, + "661": 3, + "662": 2, + "663": 1, + "664": 4, + "665": 4, + "666": 1, + "667": 8, + "668": 2, + "669": 3, + "670": 3, + "671": 3, + "672": 3, + "674": 3, + "675": 2, + "676": 3, + "677": 1, + "678": 2, + "679": 5, + "680": 3, + "681": 2, + "682": 5, + "683": 6, + "685": 3, + "686": 3, + "687": 4, + "688": 7, + "689": 2, + "690": 6, + "691": 3, + "692": 4, + "693": 3, + "694": 6, + "695": 5, + "696": 5, + "697": 1, + "698": 7, + "699": 5, + "700": 3, + "701": 1, + "702": 1, + "703": 6, + "704": 4, + "705": 6, + "706": 7, + "708": 1, + "709": 4, + "710": 3, + "711": 4, + "712": 1, + "713": 2, + "715": 2, + "716": 2, + "717": 4, + "718": 6, + "719": 4, + "721": 1, + "722": 4, + "723": 1, + "724": 4, + "725": 4, + "726": 3, + "727": 1, + "729": 1, + "730": 2, + "731": 1, + "732": 4, + "733": 3, + "734": 2, + "735": 3, + "738": 3, + "739": 3, + "741": 4, + "742": 1, + "743": 2, + "747": 1, + "749": 3, + "754": 1, + "757": 1, + "758": 2, + "759": 3, + "766": 1, + "770": 1, + "771": 2, + "772": 1, + "777": 1, + "780": 1, + "787": 1, + "795": 1, + "796": 1, + "798": 1, + "802": 1, + "803": 1, + "807": 1, + "809": 1, + "811": 1, + "814": 1, + "816": 1, + "817": 1, + "821": 1, + "822": 1, + "825": 1, + "826": 1, + "827": 1, + "828": 1, + "830": 1, + "831": 3, + "832": 1, + "833": 1, + "834": 1, + "838": 1, + "839": 1, + "841": 1, + "845": 1, + "848": 1, + "851": 1, + "854": 1, + "863": 1, + "864": 2, + "866": 1, + "867": 1, + "871": 1, + "876": 1, + "880": 1, + "881": 1, + "884": 1, + "885": 1, + "886": 1, + "889": 1, + "891": 1, + "892": 1, + "895": 1, + "896": 1, + "898": 1, + "905": 1, + "906": 1, + "907": 2, + "908": 5, + "909": 3, + "913": 1, + "914": 1, + "920": 1, + "925": 1, + "927": 3, + "930": 1, + "933": 1, + "937": 1, + "938": 1, + "941": 1, + "945": 3, + "950": 1, + "955": 1, + "956": 1, + "958": 3, + "959": 2, + "960": 2, + "964": 1, + "971": 1, + "972": 2, + "974": 1, + "976": 2, + "977": 3, + "978": 2, + "979": 1, + "981": 3, + "985": 1, + "986": 1, + "987": 2, + "989": 1, + "990": 1, + "991": 2, + "993": 1, + "994": 2, + "999": 2, + "1000": 2, + "1001": 2, + "1002": 3, + "1003": 1, + "1004": 1, + "1007": 2, + "1009": 2, + "1010": 1, + "1012": 1, + "1013": 1, + "1014": 1, + "1015": 5, + "1016": 1, + "1017": 1, + "1019": 1, + "1020": 2, + "1022": 1, + "1024": 3, + "1025": 1, + "1026": 2, + "1027": 1, + "1028": 1, + "1029": 1, + "1030": 1, + "1031": 1, + "1032": 3, + "1034": 1, + "1036": 1, + "1037": 3, + "1038": 1, + "1040": 1, + "1043": 2, + "1047": 2, + "1050": 2, + "1051": 1, + "1053": 3, + "1054": 1, + "1055": 2, + "1057": 3, + "1058": 3, + "1059": 1, + "1060": 1, + "1062": 1, + "1063": 2, + "1064": 2, + "1065": 1, + "1069": 1, + "1074": 1, + "1079": 1, + "1080": 1, + "1081": 1, + "1083": 3, + "1085": 1, + "1086": 1, + "1089": 1, + "1092": 1, + "1098": 1, + "1100": 1, + "1101": 1, + "1106": 1, + "1108": 2, + "1111": 1, + "1114": 1, + "1115": 1, + "1116": 1, + "1118": 1, + "1120": 2, + "1121": 1, + "1122": 1, + "1125": 1, + "1126": 2, + "1127": 2, + "1129": 1, + "1130": 1, + "1132": 1, + "1136": 2, + "1139": 2, + "1141": 2, + "1146": 1, + "1150": 1, + "1151": 1, + "1152": 1, + "1153": 1, + "1154": 1, + "1163": 1, + "1167": 1, + "1180": 1, + "1181": 1, + "1183": 2, + "1186": 1, + "1187": 3, + "1189": 2, + "1192": 3, + "1193": 1, + "1194": 2, + "1195": 1, + "1197": 1, + "1198": 1, + "1200": 1, + "1202": 2, + "1205": 1, + "1211": 1, + "1216": 1, + "1228": 1, + "1230": 1, + "1232": 1, + "1233": 1, + "1238": 1, + "1240": 1, + "1242": 1, + "1244": 1, + "1266": 1, + "1272": 2, + "1277": 1, + "1282": 1, + "1284": 1, + "1291": 1, + "1297": 1, + "1298": 1, + "1300": 2, + "1302": 1, + "1303": 1, + "1304": 2, + "1305": 3, + "1310": 1, + "1311": 1, + "1321": 1, + "1332": 1, + "1345": 1, + "1347": 1, + "1351": 1, + "1353": 1, + "1356": 1, + "1362": 1, + "1387": 1, + "1395": 1, + "1399": 2, + "1401": 1, + "1445": 1, + "1481": 1, + "1515": 1, + "1523": 1, + "1533": 1, + "1540": 1, + "1551": 1, + "1555": 1, + "1561": 1, + "1566": 1, + "1567": 1, + "1568": 3, + "1575": 1, + "1577": 1, + "1579": 2, + "1581": 1, + "1583": 2, + "1584": 1, + "1585": 1, + "1588": 3, + "1590": 1, + "1592": 1, + "1597": 2, + "1598": 1, + "1604": 1, + "1636": 1, + "1639": 1, + "1640": 1, + "1643": 1, + "1645": 2, + "1648": 1, + "1652": 1, + "1661": 1, + "1675": 2, + "1676": 1, + "1695": 1, + "1696": 1, + "1698": 4, + "1701": 2, + "1836": 1, + "1855": 1, + "1868": 1, + "1883": 1, + "1906": 1, + "1926": 1, + "1967": 1, + "1975": 1, + "2016": 1, + "2070": 1, + "2073": 1, + "2081": 1, + "2091": 1, + "2118": 1, + "2142": 1, + "2277": 1, + "2322": 1, + "2345": 1, + "2359": 1, + "2373": 1, + "2375": 1, + "2396": 1, + "2411": 1, + "2444": 1, + "2474": 1, + "2476": 1, + "2478": 2, + "2479": 1, + "2487": 1, + "2492": 3, + "2493": 1, + "2500": 1, + "2502": 1, + "2507": 1, + "2508": 1, + "2512": 1, + "2513": 1, + "2514": 2, + "2515": 1, + "2519": 2, + "2523": 1, + "2533": 1, + "2537": 1, + "2538": 1, + "2540": 1, + "2543": 1, + "2551": 1, + "2553": 1, + "2555": 1, + "2564": 1, + "2567": 1, + "2574": 1, + "2611": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333632266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88820cba0e870f52" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "0cba0e87" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_4_8.html b/autobahn/client/tungstenite_case_12_4_8.html new file mode 100644 index 0000000..f47d9d6 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_8.html @@ -0,0 +1,1667 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.4.8 : Pass - 2112 ms @ 2020-09-07T18:49:51.606Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=363&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 151Rch9lyQXHGTBUg25rdA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: E0wNajvlbbA7r3xK6fBhtCKW7Pc=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
70621412
70721414
7081708
70932127
71032130
71221424
71332139
7141714
71532145
7161716
7211721
7231723
7241724
7521752
7531753
7871787
7991799
8091809
8151815
8171817
8191819
8581858
8701870
8761876
8781878
8791879
88032640
88121762
88221764
8831883
88421768
88532655
8861886
88721774
88921778
8901890
89121782
89321786
8941894
8951895
89621792
89732691
89821796
9001900
9011901
9021902
9041904
9071907
90921818
9101910
9111911
91221824
9131913
9141914
91521830
91932757
9211921
92221844
9241924
92554625
92621852
9281928
9301930
9341934
9381938
9401940
94132823
9431943
94621892
9471947
94843792
94932847
9511951
95232856
9531953
95432862
9561956
9571957
9641964
97221944
97521950
97621952
9771977
97821956
97932937
98021960
9901990
9961996
100011000
100311003
100411004
101011010
101811018
102011020
102211022
102611026
102711027
102911029
103611036
103911039
104122082
104211042
104911049
105211052
105511055
105622112
106411064
106611066
107011070
108311083
108611086
108811088
109511095
110911109
111511115
111922238
112611126
112711127
112811128
113211132
113511135
114311143
114422288
115511155
116011160
116111161
116811168
117022340
117233516
117311173
117611176
117711177
117811178
117911179
118111181
118233546
118311183
118422368
118511185
118611186
118811188
119022380
119111191
119355965
119422388
119511195
119644784
119711197
119811198
119911199
120011200
120111201
120222404
120333609
120411204
120911209
121033630
121122422
121211212
121333639
121444856
121511215
121711217
121922438
122022440
122122442
122311223
122511225
122922458
123033690
123144924
123222464
123311233
123433702
123811238
123911239
124311243
124411244
124711247
124933747
125011250
125111251
125211252
125311253
125422508
125522510
125667536
125856290
125911259
126011260
126122522
126233786
126422528
126533795
126645064
126722534
126833804
126933807
127022540
127211272
127345092
127411274
127522550
127611276
127722554
127833834
127922558
128033840
128133843
128411284
128522570
128633858
128711287
128911289
129211292
129311293
129411294
129611296
129811298
130011300
130111301
130211302
130311303
130611306
130822616
130911309
131011310
131222624
131411314
131622632
131711317
131811318
131933957
132411324
132511325
132722654
132811328
132922658
133133993
133233996
133322666
133411334
133822676
133911339
134011340
134122682
134311343
134511345
134734041
134811348
134911349
135011350
135222704
135311353
135411354
1355810840
135645424
135722714
135822716
135934077
136111361
136222724
136334089
136422728
136522730
136634098
136811368
136911369
137211372
137311373
137911379
138122762
138411384
138511385
139111391
139511395
140022800
140122802
140311403
140622812
140911409
141411414
141711417
142111421
142211422
142811428
143211432
143611436
143711437
143822876
144311443
144457220
144811448
144922898
145111451
145211452
145411454
145611456
145734371
145811458
145911459
146022920
146111461
146211462
146322926
146434392
146522930
147111471
147422948
147634428
147711477
147911479
148122962
148222964
148411484
148511485
148622972
148745948
148822976
148922978
149034470
149134473
149245968
149345972
149457470
149511495
149634488
150023000
150111501
150234506
150311503
150423008
150523010
150646024
150723014
150911509
151046040
151123022
151311513
151411514
151911519
152323046
152511525
152811528
153311533
153611536
153723074
153911539
154211542
154611546
155711557
156111561
156423128
157323146
158111581
159011590
159211592
159311593
159423188
159523190
159723194
159823196
159911599
160023200
160511605
161011610
161111611
161311613
161411614
161623232
161711617
162023240
162211622
163111631
164411644
164511645
167311673
169611696
170311703
171011710
171711717
173711737
173911739
174011740
174611746
174911749
177811778
179311793
179411794
180611806
180711807
181323626
181411814
181523630
181611816
181911819
182023640
182323646
182611826
182711827
182911829
183023660
183111831
183311833
183411834
183511835
183735511
184111841
185111851
185311853
186311863
186411864
186611866
187311873
188111881
188311883
188511885
195411954
198111981
199011990
199111991
199611996
201112011
201324026
201612016
201712017
201924038
202112021
202212022
202424048
202624052
202712027
203312033
204124082
204212042
204312043
204624092
204712047
205012050
205224104
205436162
205736171
205948236
206112061
206224124
206312063
206412064
206512065
206712067
206912069
207012070
207212072
207312073
207412074
207736231
207812078
208012080
208312083
208412084
208912089
209024180
209112091
209512095
210024200
210324206
210412104
210512105
210612106
210712107
210812108
211012110
211112111
211212112
211612116
211712117
211812118
211912119
212312123
212424248
212512125
212612126
212724254
212812128
212912129
213224264
213312133
213512135
213612136
213812138
214112141
214212142
214312143
214424288
214524290
214612146
214812148
214924298
215024300
215112151
215248608
215312153
215412154
215512155
215712157
215812158
215912159
216036480
217312173
217412174
217812178
217912179
218012180
218112181
218212182
220212202
220324406
220512205
220712207
221112211
221612216
221912219
222112221
222324446
222724454
223112231
223712237
224512245
225612256
225812258
227512275
228112281
228512285
231612316
233312333
233812338
234912349
235112351
235312353
235424708
235924718
237612376
242112421
242612426
243012430
243112431
243212432
244312443
245712457
246612466
246712467
246912469
247024940
247712477
248012480
248812488
250312503
250412504
252212522
252512525
253112531
253412534
253912539
254312543
255912559
256712567
257012570
257712577
258912589
260112601
261812618
262825256
262912629
264012640
264225284
265112651
265725314
266025320
266912669
267012670
268025360
268112681
268338049
268412684
268512685
268612686
268712687
268912689
269012690
269112691
269212692
269312693
269612696
270412704
274612746
276412764
278712787
282612826
282812828
285125702
2852411408
285325706
285412854
285512855
285712857
285812858
286412864
286625732
286712867
286912869
287012870
287112871
287212872
287512875
288012880
289412894
290412904
291012910
291225824
291312913
2915411660
292225844
292712927
293112931
293312933
293412934
293812938
294525890
295912959
296112961
296612966
297012970
297112971
297612976
297712977
298212982
298312983
299625992
300013000
300113001
300613006
301113011
301213012
301813018
302613026
303013030
305913059
306413064
306513065
309513095
309613096
309726194
310513105
312326246
312513125
313013130
314713147
315213152
315326306
316613166
316713167
317613176
318013180
318313183
318513185
322113221
322413224
322513225
322913229
323313233
324113241
324213242
324313243
324513245
324926498
325013250
327213272
328013280
328613286
328813288
329213292
330713307
331013310
331213312
333413334
Total10021679074
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
8451845
84943396
8501850
85154255
85221704
8531853
85421708
8551855
8561856
85721714
8591859
8631863
8721872
8761876
9041904
9071907
9181918
9281928
9471947
9631963
9711971
9771977
9881988
100011000
101711017
102111021
103311033
103811038
104011040
104411044
104711047
105211052
105911059
106022120
106211062
106411064
106522130
106622132
106855340
106911069
107011070
107211072
107311073
107622152
107722154
107822156
107933237
108022160
108122162
108311083
108422168
108522170
108611086
108733261
108822176
108933267
109033270
109111091
109222184
109311093
109411094
109611096
109811098
109911099
110033300
110111101
110211102
110433312
110611106
110711107
111011110
111211112
111322226
111622232
111711117
111944476
112033360
112122242
112211122
112322246
112433372
112511125
112611126
112711127
112922258
113011130
113222264
113411134
113611136
113822276
114311143
116411164
116911169
117011170
117211172
117411174
117511175
118111181
118411184
118611186
118822376
119122382
119211192
119611196
119811198
120111201
120211202
120911209
121011210
121311213
121611216
122111221
122811228
122911229
123211232
123511235
124111241
124233726
124322486
124422488
124611246
124733741
124922498
125011250
125111251
125622512
125711257
125822516
125911259
126011260
126111261
126311263
126433792
126811268
126911269
127011270
127611276
128011280
128111281
128333849
128533855
128656430
128745148
128911289
129011290
129111291
129245168
129322586
129511295
129722594
129822596
129922598
130011300
130233906
130333909
130445216
130522610
130856540
130956545
131022620
131156555
131222624
131367878
131422628
131522630
131656580
131767902
131922638
132111321
132222644
132711327
132811328
132911329
133011330
133122662
133311333
133422668
133511335
133611336
133822676
134045360
134111341
134211342
134411344
134522690
134622692
134711347
134811348
135411354
135511355
135722714
135922718
136011360
136311363
136445456
136511365
136611366
136822736
136911369
137111371
137211372
137311373
137622752
137711377
137834134
137911379
138034140
138122762
138234146
138322766
138422768
138611386
138711387
138911389
139034170
139145564
139222784
139345572
139434182
139522790
139622792
139734191
1398811184
139956995
140022800
140211402
140368418
140622812
141222824
141511415
141811418
141911419
142211422
142411424
142611426
143211432
143522870
143611436
143811438
143911439
144011440
144311443
144411444
144622892
144711447
144911449
145122902
145211452
145911459
146111461
146422928
146622932
146811468
146911469
147011470
147311473
147411474
147711477
147822956
147911479
148111481
148222964
148411484
148711487
148822976
149011490
149211492
149411494
149822996
150611506
150811508
151211512
152111521
152911529
153211532
153423068
153611536
153711537
153811538
154223084
154623092
155111551
155511555
155811558
155911559
156111561
156311563
156523130
156611566
157611576
157711577
158211582
158323166
158411584
158523170
158823176
158911589
159011590
159111591
159411594
159611596
159711597
160023200
160423208
160523210
161011610
161111611
161211612
161311613
161411614
161534845
161611616
161711617
161811618
161923238
162123242
162311623
162923258
163111631
163411634
163811638
164011640
164311643
164623292
164723294
165058250
165223304
165323306
165411654
165511655
165611656
165923318
166023320
166123322
166234986
166423328
166511665
166611666
166711667
166823336
167011670
167211672
167411674
167535025
167623352
167735031
167911679
168023360
168111681
168411684
168523370
168723374
168923378
169123382
169211692
169411694
169511695
169623392
169811698
169911699
170111701
170211702
170346812
170523410
170823416
170935127
171023420
171258560
171311713
171511715
171611716
171823436
172111721
172311723
172823456
173511735
174911749
175511755
176411764
179411794
181711817
183611836
184011840
186311863
186611866
186911869
187811878
189123782
190211902
190511905
190811908
190911909
191023820
191123822
191423828
191611916
191723834
191911919
192011920
192111921
192311923
192423848
192523850
192635778
192723854
193511935
194911949
195511955
196811968
198111981
198411984
198511985
199011990
199111991
199211992
201612016
201812018
204212042
209112091
210112101
211212112
211512115
211724234
212012120
212412124
212512125
212712127
212824256
212912129
213224264
213712137
214224284
214524290
214924298
215224304
215312153
215424308
215612156
215712157
216012160
216112161
216212162
216636498
216924338
217136513
217212172
217312173
217412174
217612176
217812178
217924358
218124362
218512185
218612186
218812188
219012190
219124382
220112201
220212202
220312203
220424408
220512205
220612206
220712207
221112211
221224424
221324426
221412214
221924438
222112221
222212222
222312223
222612226
222812228
223024460
223112231
223512235
223924478
224412244
225112251
225312253
226312263
226412264
226612266
226724534
227024540
227524550
227612276
227824556
228024560
228212282
228424568
228612286
228712287
228912289
229012290
229112291
229224584
229312293
229512295
229836894
229924598
230024600
230212302
230312303
230412304
230512305
230612306
230836924
231024620
231312313
232612326
232824656
233012330
233712337
233812338
234212342
234312343
234612346
234812348
234912349
235012350
235412354
235512355
235912359
236912369
237612376
239212392
240612406
241112411
243112431
243412434
244312443
244712447
245312453
245612456
246712467
246912469
247524950
247612476
247812478
252612526
252812528
254425088
254512545
255112551
256512565
257512575
257912579
258325166
258412584
258612586
259012590
259212592
260112601
261312613
262112621
262312623
262412624
263612636
264012640
264712647
265812658
267612676
267712677
269612696
270012700
271612716
273212732
273325466
273612736
274225484
275212752
275312753
275812758
275912759
276212762
276312763
277325546
278112781
278312783
278412784
278512785
278612786
278838364
279038370
279125582
279212792
279512795
279612796
281412814
285712857
287212872
293512935
293612936
293812938
293912939
294212942
294312943
294612946
294812948
294912949
295012950
295125902
295312953
295438862
295525910
295912959
296125922
296312963
296412964
296512965
297525950
297912979
298412984
299012990
299212992
299925998
300413004
301113011
301313013
301513015
301626032
301713017
301913019
302113021
302213022
302413024
303013030
303313033
303726074
303813038
304113041
304313043
304613046
305713057
305813058
305913059
306213062
306313063
306513065
306813068
306913069
307313073
308313083
311213112
311613116
311813118
312613126
314513145
314613146
314913149
315113151
316813168
316913169
317013170
317613176
318713187
318913189
319013190
319213192
319613196
320113201
321213212
321913219
322126442
325413254
325613256
325713257
325926518
326813268
326913269
327413274
327513275
328126562
328313283
330613306
331013310
331813318
331913319
332013320
333613336
334013340
334213342
336213362
Total10021789696
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333633266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882cddae144ce32
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6364646165313434
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_4_8.json b/autobahn/client/tungstenite_case_12_4_8.json new file mode 100644 index 0000000..e89e442 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_8.json @@ -0,0 +1,1514 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 363, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 2112, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=363&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 151Rch9lyQXHGTBUg25rdA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: E0wNajvlbbA7r3xK6fBhtCKW7Pc=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.4.8", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "706": 2, + "707": 2, + "708": 1, + "709": 3, + "710": 3, + "712": 2, + "713": 3, + "714": 1, + "715": 3, + "716": 1, + "721": 1, + "723": 1, + "724": 1, + "752": 1, + "753": 1, + "787": 1, + "799": 1, + "809": 1, + "815": 1, + "817": 1, + "819": 1, + "858": 1, + "870": 1, + "876": 1, + "878": 1, + "879": 1, + "880": 3, + "881": 2, + "882": 2, + "883": 1, + "884": 2, + "885": 3, + "886": 1, + "887": 2, + "889": 2, + "890": 1, + "891": 2, + "893": 2, + "894": 1, + "895": 1, + "896": 2, + "897": 3, + "898": 2, + "900": 1, + "901": 1, + "902": 1, + "904": 1, + "907": 1, + "909": 2, + "910": 1, + "911": 1, + "912": 2, + "913": 1, + "914": 1, + "915": 2, + "919": 3, + "921": 1, + "922": 2, + "924": 1, + "925": 5, + "926": 2, + "928": 1, + "930": 1, + "934": 1, + "938": 1, + "940": 1, + "941": 3, + "943": 1, + "946": 2, + "947": 1, + "948": 4, + "949": 3, + "951": 1, + "952": 3, + "953": 1, + "954": 3, + "956": 1, + "957": 1, + "964": 1, + "972": 2, + "975": 2, + "976": 2, + "977": 1, + "978": 2, + "979": 3, + "980": 2, + "990": 1, + "996": 1, + "1000": 1, + "1003": 1, + "1004": 1, + "1010": 1, + "1018": 1, + "1020": 1, + "1022": 1, + "1026": 1, + "1027": 1, + "1029": 1, + "1036": 1, + "1039": 1, + "1041": 2, + "1042": 1, + "1049": 1, + "1052": 1, + "1055": 1, + "1056": 2, + "1064": 1, + "1066": 1, + "1070": 1, + "1083": 1, + "1086": 1, + "1088": 1, + "1095": 1, + "1109": 1, + "1115": 1, + "1119": 2, + "1126": 1, + "1127": 1, + "1128": 1, + "1132": 1, + "1135": 1, + "1143": 1, + "1144": 2, + "1155": 1, + "1160": 1, + "1161": 1, + "1168": 1, + "1170": 2, + "1172": 3, + "1173": 1, + "1176": 1, + "1177": 1, + "1178": 1, + "1179": 1, + "1181": 1, + "1182": 3, + "1183": 1, + "1184": 2, + "1185": 1, + "1186": 1, + "1188": 1, + "1190": 2, + "1191": 1, + "1193": 5, + "1194": 2, + "1195": 1, + "1196": 4, + "1197": 1, + "1198": 1, + "1199": 1, + "1200": 1, + "1201": 1, + "1202": 2, + "1203": 3, + "1204": 1, + "1209": 1, + "1210": 3, + "1211": 2, + "1212": 1, + "1213": 3, + "1214": 4, + "1215": 1, + "1217": 1, + "1219": 2, + "1220": 2, + "1221": 2, + "1223": 1, + "1225": 1, + "1229": 2, + "1230": 3, + "1231": 4, + "1232": 2, + "1233": 1, + "1234": 3, + "1238": 1, + "1239": 1, + "1243": 1, + "1244": 1, + "1247": 1, + "1249": 3, + "1250": 1, + "1251": 1, + "1252": 1, + "1253": 1, + "1254": 2, + "1255": 2, + "1256": 6, + "1258": 5, + "1259": 1, + "1260": 1, + "1261": 2, + "1262": 3, + "1264": 2, + "1265": 3, + "1266": 4, + "1267": 2, + "1268": 3, + "1269": 3, + "1270": 2, + "1272": 1, + "1273": 4, + "1274": 1, + "1275": 2, + "1276": 1, + "1277": 2, + "1278": 3, + "1279": 2, + "1280": 3, + "1281": 3, + "1284": 1, + "1285": 2, + "1286": 3, + "1287": 1, + "1289": 1, + "1292": 1, + "1293": 1, + "1294": 1, + "1296": 1, + "1298": 1, + "1300": 1, + "1301": 1, + "1302": 1, + "1303": 1, + "1306": 1, + "1308": 2, + "1309": 1, + "1310": 1, + "1312": 2, + "1314": 1, + "1316": 2, + "1317": 1, + "1318": 1, + "1319": 3, + "1324": 1, + "1325": 1, + "1327": 2, + "1328": 1, + "1329": 2, + "1331": 3, + "1332": 3, + "1333": 2, + "1334": 1, + "1338": 2, + "1339": 1, + "1340": 1, + "1341": 2, + "1343": 1, + "1345": 1, + "1347": 3, + "1348": 1, + "1349": 1, + "1350": 1, + "1352": 2, + "1353": 1, + "1354": 1, + "1355": 8, + "1356": 4, + "1357": 2, + "1358": 2, + "1359": 3, + "1361": 1, + "1362": 2, + "1363": 3, + "1364": 2, + "1365": 2, + "1366": 3, + "1368": 1, + "1369": 1, + "1372": 1, + "1373": 1, + "1379": 1, + "1381": 2, + "1384": 1, + "1385": 1, + "1391": 1, + "1395": 1, + "1400": 2, + "1401": 2, + "1403": 1, + "1406": 2, + "1409": 1, + "1414": 1, + "1417": 1, + "1421": 1, + "1422": 1, + "1428": 1, + "1432": 1, + "1436": 1, + "1437": 1, + "1438": 2, + "1443": 1, + "1444": 5, + "1448": 1, + "1449": 2, + "1451": 1, + "1452": 1, + "1454": 1, + "1456": 1, + "1457": 3, + "1458": 1, + "1459": 1, + "1460": 2, + "1461": 1, + "1462": 1, + "1463": 2, + "1464": 3, + "1465": 2, + "1471": 1, + "1474": 2, + "1476": 3, + "1477": 1, + "1479": 1, + "1481": 2, + "1482": 2, + "1484": 1, + "1485": 1, + "1486": 2, + "1487": 4, + "1488": 2, + "1489": 2, + "1490": 3, + "1491": 3, + "1492": 4, + "1493": 4, + "1494": 5, + "1495": 1, + "1496": 3, + "1500": 2, + "1501": 1, + "1502": 3, + "1503": 1, + "1504": 2, + "1505": 2, + "1506": 4, + "1507": 2, + "1509": 1, + "1510": 4, + "1511": 2, + "1513": 1, + "1514": 1, + "1519": 1, + "1523": 2, + "1525": 1, + "1528": 1, + "1533": 1, + "1536": 1, + "1537": 2, + "1539": 1, + "1542": 1, + "1546": 1, + "1557": 1, + "1561": 1, + "1564": 2, + "1573": 2, + "1581": 1, + "1590": 1, + "1592": 1, + "1593": 1, + "1594": 2, + "1595": 2, + "1597": 2, + "1598": 2, + "1599": 1, + "1600": 2, + "1605": 1, + "1610": 1, + "1611": 1, + "1613": 1, + "1614": 1, + "1616": 2, + "1617": 1, + "1620": 2, + "1622": 1, + "1631": 1, + "1644": 1, + "1645": 1, + "1673": 1, + "1696": 1, + "1703": 1, + "1710": 1, + "1717": 1, + "1737": 1, + "1739": 1, + "1740": 1, + "1746": 1, + "1749": 1, + "1778": 1, + "1793": 1, + "1794": 1, + "1806": 1, + "1807": 1, + "1813": 2, + "1814": 1, + "1815": 2, + "1816": 1, + "1819": 1, + "1820": 2, + "1823": 2, + "1826": 1, + "1827": 1, + "1829": 1, + "1830": 2, + "1831": 1, + "1833": 1, + "1834": 1, + "1835": 1, + "1837": 3, + "1841": 1, + "1851": 1, + "1853": 1, + "1863": 1, + "1864": 1, + "1866": 1, + "1873": 1, + "1881": 1, + "1883": 1, + "1885": 1, + "1954": 1, + "1981": 1, + "1990": 1, + "1991": 1, + "1996": 1, + "2011": 1, + "2013": 2, + "2016": 1, + "2017": 1, + "2019": 2, + "2021": 1, + "2022": 1, + "2024": 2, + "2026": 2, + "2027": 1, + "2033": 1, + "2041": 2, + "2042": 1, + "2043": 1, + "2046": 2, + "2047": 1, + "2050": 1, + "2052": 2, + "2054": 3, + "2057": 3, + "2059": 4, + "2061": 1, + "2062": 2, + "2063": 1, + "2064": 1, + "2065": 1, + "2067": 1, + "2069": 1, + "2070": 1, + "2072": 1, + "2073": 1, + "2074": 1, + "2077": 3, + "2078": 1, + "2080": 1, + "2083": 1, + "2084": 1, + "2089": 1, + "2090": 2, + "2091": 1, + "2095": 1, + "2100": 2, + "2103": 2, + "2104": 1, + "2105": 1, + "2106": 1, + "2107": 1, + "2108": 1, + "2110": 1, + "2111": 1, + "2112": 1, + "2116": 1, + "2117": 1, + "2118": 1, + "2119": 1, + "2123": 1, + "2124": 2, + "2125": 1, + "2126": 1, + "2127": 2, + "2128": 1, + "2129": 1, + "2132": 2, + "2133": 1, + "2135": 1, + "2136": 1, + "2138": 1, + "2141": 1, + "2142": 1, + "2143": 1, + "2144": 2, + "2145": 2, + "2146": 1, + "2148": 1, + "2149": 2, + "2150": 2, + "2151": 1, + "2152": 4, + "2153": 1, + "2154": 1, + "2155": 1, + "2157": 1, + "2158": 1, + "2159": 1, + "2160": 3, + "2173": 1, + "2174": 1, + "2178": 1, + "2179": 1, + "2180": 1, + "2181": 1, + "2182": 1, + "2202": 1, + "2203": 2, + "2205": 1, + "2207": 1, + "2211": 1, + "2216": 1, + "2219": 1, + "2221": 1, + "2223": 2, + "2227": 2, + "2231": 1, + "2237": 1, + "2245": 1, + "2256": 1, + "2258": 1, + "2275": 1, + "2281": 1, + "2285": 1, + "2316": 1, + "2333": 1, + "2338": 1, + "2349": 1, + "2351": 1, + "2353": 1, + "2354": 2, + "2359": 2, + "2376": 1, + "2421": 1, + "2426": 1, + "2430": 1, + "2431": 1, + "2432": 1, + "2443": 1, + "2457": 1, + "2466": 1, + "2467": 1, + "2469": 1, + "2470": 2, + "2477": 1, + "2480": 1, + "2488": 1, + "2503": 1, + "2504": 1, + "2522": 1, + "2525": 1, + "2531": 1, + "2534": 1, + "2539": 1, + "2543": 1, + "2559": 1, + "2567": 1, + "2570": 1, + "2577": 1, + "2589": 1, + "2601": 1, + "2618": 1, + "2628": 2, + "2629": 1, + "2640": 1, + "2642": 2, + "2651": 1, + "2657": 2, + "2660": 2, + "2669": 1, + "2670": 1, + "2680": 2, + "2681": 1, + "2683": 3, + "2684": 1, + "2685": 1, + "2686": 1, + "2687": 1, + "2689": 1, + "2690": 1, + "2691": 1, + "2692": 1, + "2693": 1, + "2696": 1, + "2704": 1, + "2746": 1, + "2764": 1, + "2787": 1, + "2826": 1, + "2828": 1, + "2851": 2, + "2852": 4, + "2853": 2, + "2854": 1, + "2855": 1, + "2857": 1, + "2858": 1, + "2864": 1, + "2866": 2, + "2867": 1, + "2869": 1, + "2870": 1, + "2871": 1, + "2872": 1, + "2875": 1, + "2880": 1, + "2894": 1, + "2904": 1, + "2910": 1, + "2912": 2, + "2913": 1, + "2915": 4, + "2922": 2, + "2927": 1, + "2931": 1, + "2933": 1, + "2934": 1, + "2938": 1, + "2945": 2, + "2959": 1, + "2961": 1, + "2966": 1, + "2970": 1, + "2971": 1, + "2976": 1, + "2977": 1, + "2982": 1, + "2983": 1, + "2996": 2, + "3000": 1, + "3001": 1, + "3006": 1, + "3011": 1, + "3012": 1, + "3018": 1, + "3026": 1, + "3030": 1, + "3059": 1, + "3064": 1, + "3065": 1, + "3095": 1, + "3096": 1, + "3097": 2, + "3105": 1, + "3123": 2, + "3125": 1, + "3130": 1, + "3147": 1, + "3152": 1, + "3153": 2, + "3166": 1, + "3167": 1, + "3176": 1, + "3180": 1, + "3183": 1, + "3185": 1, + "3221": 1, + "3224": 1, + "3225": 1, + "3229": 1, + "3233": 1, + "3241": 1, + "3242": 1, + "3243": 1, + "3245": 1, + "3249": 2, + "3250": 1, + "3272": 1, + "3280": 1, + "3286": 1, + "3288": 1, + "3292": 1, + "3307": 1, + "3310": 1, + "3312": 1, + "3334": 1 + }, + "started": "2020-09-07T18:49:51.606Z", + "trafficStats": { + "incomingCompressionRatio": 0.050983835025644964, + "incomingOctetsAppLevel": 32771348, + "incomingOctetsWebSocketLevel": 1670809, + "incomingOctetsWireLevel": 1678809, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.004788099657112213, + "outgoingCompressionRatio": 0.054481738132956876, + "outgoingOctetsAppLevel": 32771348, + "outgoingOctetsWebSocketLevel": 1785440, + "outgoingOctetsWireLevel": 1789440, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0022403441168563493, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "845": 1, + "849": 4, + "850": 1, + "851": 5, + "852": 2, + "853": 1, + "854": 2, + "855": 1, + "856": 1, + "857": 2, + "859": 1, + "863": 1, + "872": 1, + "876": 1, + "904": 1, + "907": 1, + "918": 1, + "928": 1, + "947": 1, + "963": 1, + "971": 1, + "977": 1, + "988": 1, + "1000": 1, + "1017": 1, + "1021": 1, + "1033": 1, + "1038": 1, + "1040": 1, + "1044": 1, + "1047": 1, + "1052": 1, + "1059": 1, + "1060": 2, + "1062": 1, + "1064": 1, + "1065": 2, + "1066": 2, + "1068": 5, + "1069": 1, + "1070": 1, + "1072": 1, + "1073": 1, + "1076": 2, + "1077": 2, + "1078": 2, + "1079": 3, + "1080": 2, + "1081": 2, + "1083": 1, + "1084": 2, + "1085": 2, + "1086": 1, + "1087": 3, + "1088": 2, + "1089": 3, + "1090": 3, + "1091": 1, + "1092": 2, + "1093": 1, + "1094": 1, + "1096": 1, + "1098": 1, + "1099": 1, + "1100": 3, + "1101": 1, + "1102": 1, + "1104": 3, + "1106": 1, + "1107": 1, + "1110": 1, + "1112": 1, + "1113": 2, + "1116": 2, + "1117": 1, + "1119": 4, + "1120": 3, + "1121": 2, + "1122": 1, + "1123": 2, + "1124": 3, + "1125": 1, + "1126": 1, + "1127": 1, + "1129": 2, + "1130": 1, + "1132": 2, + "1134": 1, + "1136": 1, + "1138": 2, + "1143": 1, + "1164": 1, + "1169": 1, + "1170": 1, + "1172": 1, + "1174": 1, + "1175": 1, + "1181": 1, + "1184": 1, + "1186": 1, + "1188": 2, + "1191": 2, + "1192": 1, + "1196": 1, + "1198": 1, + "1201": 1, + "1202": 1, + "1209": 1, + "1210": 1, + "1213": 1, + "1216": 1, + "1221": 1, + "1228": 1, + "1229": 1, + "1232": 1, + "1235": 1, + "1241": 1, + "1242": 3, + "1243": 2, + "1244": 2, + "1246": 1, + "1247": 3, + "1249": 2, + "1250": 1, + "1251": 1, + "1256": 2, + "1257": 1, + "1258": 2, + "1259": 1, + "1260": 1, + "1261": 1, + "1263": 1, + "1264": 3, + "1268": 1, + "1269": 1, + "1270": 1, + "1276": 1, + "1280": 1, + "1281": 1, + "1283": 3, + "1285": 3, + "1286": 5, + "1287": 4, + "1289": 1, + "1290": 1, + "1291": 1, + "1292": 4, + "1293": 2, + "1295": 1, + "1297": 2, + "1298": 2, + "1299": 2, + "1300": 1, + "1302": 3, + "1303": 3, + "1304": 4, + "1305": 2, + "1308": 5, + "1309": 5, + "1310": 2, + "1311": 5, + "1312": 2, + "1313": 6, + "1314": 2, + "1315": 2, + "1316": 5, + "1317": 6, + "1319": 2, + "1321": 1, + "1322": 2, + "1327": 1, + "1328": 1, + "1329": 1, + "1330": 1, + "1331": 2, + "1333": 1, + "1334": 2, + "1335": 1, + "1336": 1, + "1338": 2, + "1340": 4, + "1341": 1, + "1342": 1, + "1344": 1, + "1345": 2, + "1346": 2, + "1347": 1, + "1348": 1, + "1354": 1, + "1355": 1, + "1357": 2, + "1359": 2, + "1360": 1, + "1363": 1, + "1364": 4, + "1365": 1, + "1366": 1, + "1368": 2, + "1369": 1, + "1371": 1, + "1372": 1, + "1373": 1, + "1376": 2, + "1377": 1, + "1378": 3, + "1379": 1, + "1380": 3, + "1381": 2, + "1382": 3, + "1383": 2, + "1384": 2, + "1386": 1, + "1387": 1, + "1389": 1, + "1390": 3, + "1391": 4, + "1392": 2, + "1393": 4, + "1394": 3, + "1395": 2, + "1396": 2, + "1397": 3, + "1398": 8, + "1399": 5, + "1400": 2, + "1402": 1, + "1403": 6, + "1406": 2, + "1412": 2, + "1415": 1, + "1418": 1, + "1419": 1, + "1422": 1, + "1424": 1, + "1426": 1, + "1432": 1, + "1435": 2, + "1436": 1, + "1438": 1, + "1439": 1, + "1440": 1, + "1443": 1, + "1444": 1, + "1446": 2, + "1447": 1, + "1449": 1, + "1451": 2, + "1452": 1, + "1459": 1, + "1461": 1, + "1464": 2, + "1466": 2, + "1468": 1, + "1469": 1, + "1470": 1, + "1473": 1, + "1474": 1, + "1477": 1, + "1478": 2, + "1479": 1, + "1481": 1, + "1482": 2, + "1484": 1, + "1487": 1, + "1488": 2, + "1490": 1, + "1492": 1, + "1494": 1, + "1498": 2, + "1506": 1, + "1508": 1, + "1512": 1, + "1521": 1, + "1529": 1, + "1532": 1, + "1534": 2, + "1536": 1, + "1537": 1, + "1538": 1, + "1542": 2, + "1546": 2, + "1551": 1, + "1555": 1, + "1558": 1, + "1559": 1, + "1561": 1, + "1563": 1, + "1565": 2, + "1566": 1, + "1576": 1, + "1577": 1, + "1582": 1, + "1583": 2, + "1584": 1, + "1585": 2, + "1588": 2, + "1589": 1, + "1590": 1, + "1591": 1, + "1594": 1, + "1596": 1, + "1597": 1, + "1600": 2, + "1604": 2, + "1605": 2, + "1610": 1, + "1611": 1, + "1612": 1, + "1613": 1, + "1614": 1, + "1615": 3, + "1616": 1, + "1617": 1, + "1618": 1, + "1619": 2, + "1621": 2, + "1623": 1, + "1629": 2, + "1631": 1, + "1634": 1, + "1638": 1, + "1640": 1, + "1643": 1, + "1646": 2, + "1647": 2, + "1650": 5, + "1652": 2, + "1653": 2, + "1654": 1, + "1655": 1, + "1656": 1, + "1659": 2, + "1660": 2, + "1661": 2, + "1662": 3, + "1664": 2, + "1665": 1, + "1666": 1, + "1667": 1, + "1668": 2, + "1670": 1, + "1672": 1, + "1674": 1, + "1675": 3, + "1676": 2, + "1677": 3, + "1679": 1, + "1680": 2, + "1681": 1, + "1684": 1, + "1685": 2, + "1687": 2, + "1689": 2, + "1691": 2, + "1692": 1, + "1694": 1, + "1695": 1, + "1696": 2, + "1698": 1, + "1699": 1, + "1701": 1, + "1702": 1, + "1703": 4, + "1705": 2, + "1708": 2, + "1709": 3, + "1710": 2, + "1712": 5, + "1713": 1, + "1715": 1, + "1716": 1, + "1718": 2, + "1721": 1, + "1723": 1, + "1728": 2, + "1735": 1, + "1749": 1, + "1755": 1, + "1764": 1, + "1794": 1, + "1817": 1, + "1836": 1, + "1840": 1, + "1863": 1, + "1866": 1, + "1869": 1, + "1878": 1, + "1891": 2, + "1902": 1, + "1905": 1, + "1908": 1, + "1909": 1, + "1910": 2, + "1911": 2, + "1914": 2, + "1916": 1, + "1917": 2, + "1919": 1, + "1920": 1, + "1921": 1, + "1923": 1, + "1924": 2, + "1925": 2, + "1926": 3, + "1927": 2, + "1935": 1, + "1949": 1, + "1955": 1, + "1968": 1, + "1981": 1, + "1984": 1, + "1985": 1, + "1990": 1, + "1991": 1, + "1992": 1, + "2016": 1, + "2018": 1, + "2042": 1, + "2091": 1, + "2101": 1, + "2112": 1, + "2115": 1, + "2117": 2, + "2120": 1, + "2124": 1, + "2125": 1, + "2127": 1, + "2128": 2, + "2129": 1, + "2132": 2, + "2137": 1, + "2142": 2, + "2145": 2, + "2149": 2, + "2152": 2, + "2153": 1, + "2154": 2, + "2156": 1, + "2157": 1, + "2160": 1, + "2161": 1, + "2162": 1, + "2166": 3, + "2169": 2, + "2171": 3, + "2172": 1, + "2173": 1, + "2174": 1, + "2176": 1, + "2178": 1, + "2179": 2, + "2181": 2, + "2185": 1, + "2186": 1, + "2188": 1, + "2190": 1, + "2191": 2, + "2201": 1, + "2202": 1, + "2203": 1, + "2204": 2, + "2205": 1, + "2206": 1, + "2207": 1, + "2211": 1, + "2212": 2, + "2213": 2, + "2214": 1, + "2219": 2, + "2221": 1, + "2222": 1, + "2223": 1, + "2226": 1, + "2228": 1, + "2230": 2, + "2231": 1, + "2235": 1, + "2239": 2, + "2244": 1, + "2251": 1, + "2253": 1, + "2263": 1, + "2264": 1, + "2266": 1, + "2267": 2, + "2270": 2, + "2275": 2, + "2276": 1, + "2278": 2, + "2280": 2, + "2282": 1, + "2284": 2, + "2286": 1, + "2287": 1, + "2289": 1, + "2290": 1, + "2291": 1, + "2292": 2, + "2293": 1, + "2295": 1, + "2298": 3, + "2299": 2, + "2300": 2, + "2302": 1, + "2303": 1, + "2304": 1, + "2305": 1, + "2306": 1, + "2308": 3, + "2310": 2, + "2313": 1, + "2326": 1, + "2328": 2, + "2330": 1, + "2337": 1, + "2338": 1, + "2342": 1, + "2343": 1, + "2346": 1, + "2348": 1, + "2349": 1, + "2350": 1, + "2354": 1, + "2355": 1, + "2359": 1, + "2369": 1, + "2376": 1, + "2392": 1, + "2406": 1, + "2411": 1, + "2431": 1, + "2434": 1, + "2443": 1, + "2447": 1, + "2453": 1, + "2456": 1, + "2467": 1, + "2469": 1, + "2475": 2, + "2476": 1, + "2478": 1, + "2526": 1, + "2528": 1, + "2544": 2, + "2545": 1, + "2551": 1, + "2565": 1, + "2575": 1, + "2579": 1, + "2583": 2, + "2584": 1, + "2586": 1, + "2590": 1, + "2592": 1, + "2601": 1, + "2613": 1, + "2621": 1, + "2623": 1, + "2624": 1, + "2636": 1, + "2640": 1, + "2647": 1, + "2658": 1, + "2676": 1, + "2677": 1, + "2696": 1, + "2700": 1, + "2716": 1, + "2732": 1, + "2733": 2, + "2736": 1, + "2742": 2, + "2752": 1, + "2753": 1, + "2758": 1, + "2759": 1, + "2762": 1, + "2763": 1, + "2773": 2, + "2781": 1, + "2783": 1, + "2784": 1, + "2785": 1, + "2786": 1, + "2788": 3, + "2790": 3, + "2791": 2, + "2792": 1, + "2795": 1, + "2796": 1, + "2814": 1, + "2857": 1, + "2872": 1, + "2935": 1, + "2936": 1, + "2938": 1, + "2939": 1, + "2942": 1, + "2943": 1, + "2946": 1, + "2948": 1, + "2949": 1, + "2950": 1, + "2951": 2, + "2953": 1, + "2954": 3, + "2955": 2, + "2959": 1, + "2961": 2, + "2963": 1, + "2964": 1, + "2965": 1, + "2975": 2, + "2979": 1, + "2984": 1, + "2990": 1, + "2992": 1, + "2999": 2, + "3004": 1, + "3011": 1, + "3013": 1, + "3015": 1, + "3016": 2, + "3017": 1, + "3019": 1, + "3021": 1, + "3022": 1, + "3024": 1, + "3030": 1, + "3033": 1, + "3037": 2, + "3038": 1, + "3041": 1, + "3043": 1, + "3046": 1, + "3057": 1, + "3058": 1, + "3059": 1, + "3062": 1, + "3063": 1, + "3065": 1, + "3068": 1, + "3069": 1, + "3073": 1, + "3083": 1, + "3112": 1, + "3116": 1, + "3118": 1, + "3126": 1, + "3145": 1, + "3146": 1, + "3149": 1, + "3151": 1, + "3168": 1, + "3169": 1, + "3170": 1, + "3176": 1, + "3187": 1, + "3189": 1, + "3190": 1, + "3192": 1, + "3196": 1, + "3201": 1, + "3212": 1, + "3219": 1, + "3221": 2, + "3254": 1, + "3256": 1, + "3257": 1, + "3259": 2, + "3268": 1, + "3269": 1, + "3274": 1, + "3275": 1, + "3281": 2, + "3283": 1, + "3306": 1, + "3310": 1, + "3318": 1, + "3319": 1, + "3320": 1, + "3336": 1, + "3340": 1, + "3342": 1, + "3362": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333633266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882cddae144ce32" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "cddae144" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_4_9.html b/autobahn/client/tungstenite_case_12_4_9.html new file mode 100644 index 0000000..172454f --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_9.html @@ -0,0 +1,1498 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.4.9 : Pass - 3315 ms @ 2020-09-07T18:49:53.719Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=364&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Ze5kEnEW06Y/0FqsPTpuJg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: rLWTK3k8+e3820D8/ZeuXRqd+jc=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
223012230
223424468
224824496
225024500
225312253
225412254
225512255
225624512
225824516
225912259
226024520
226212262
226336789
226449056
226549060
226849072
227112271
227212272
227512275
227712277
227836834
228012280
228136843
228212282
228424568
228624572
228824576
229012290
229212292
229312293
229512295
231712317
231812318
231912319
232212322
232324646
233324666
233824676
234012340
234312343
234424688
234912349
235024700
235524710
235837074
236012360
236212362
236812368
236924738
237124742
237337119
237537125
237624752
237912379
238212382
238424768
238537155
238612386
238812388
238912389
239012390
239112391
239412394
239812398
240012400
240312403
240412404
240824816
241012410
241112411
241212412
241412414
241524830
241612416
241712417
241824836
2419512095
242037260
242124842
242212422
2424512120
242749708
243124862
243224864
243324866
243624872
243712437
243824876
243924878
244137323
244324886
244512445
244612446
244812448
244912449
245012450
245112451
245224904
245337359
245412454
245812458
246212462
246312463
246424928
246624932
246724934
246812468
247049880
247212472
247312473
247712477
247824956
247912479
248312483
248537455
248812488
248912489
249024980
249149964
249237476
249324986
249412494
2495512475
249624992
249812498
250012500
250137503
250725014
250812508
250925018
251037530
251112511
251337539
251412514
251525030
251637548
251812518
252525050
252612526
252712527
253337599
2534410136
253512535
253637608
253712537
253925078
254225084
254312543
254412544
254537635
254612546
2549512745
255012550
255337659
255437662
255537665
255612556
255925118
256312563
257212572
258325166
259312593
259412594
260912609
264012640
264112641
264412644
264512645
266725334
267412674
267725354
267812678
268212682
268412684
268512685
269312693
269625392
269725394
269812698
270212702
270312703
270612706
270712707
271025420
271112711
271412714
272412724
272825456
273212732
273312733
274112741
274212742
275712757
276012760
276612766
277012770
277112771
277225544
277412774
277512775
278125562
278512785
278838364
278912789
279512795
279738391
281538445
281812818
282112821
282212822
282412824
282812828
283012830
283125662
283312833
283812838
284025680
284225684
284338529
284712847
284912849
285012850
285312853
285412854
285525710
285712857
286512865
287512875
287712877
2879411516
288212882
288525770
288712887
288912889
289012890
289138673
289438682
290125802
296012960
296212962
296512965
296612966
296725934
298412984
298612986
299625992
299825996
299912999
300313003
300526010
300613006
301213012
303113031
303413034
303726074
303813038
303913039
304213042
304313043
304526090
304813048
305026100
306126122
306613066
306813068
307013070
307126142
307213072
307313073
307513075
3076515380
307726154
308013080
308126162
308239246
308339249
308426168
308613086
309026180
3091412364
309213092
309326186
309713097
311413114
311513115
312026240
313113131
315313153
315613156
315913159
316313163
317013170
317513175
317813178
317913179
318013180
318413184
319826396
320513205
320713207
323413234
323613236
323813238
324013240
324313243
324726494
325026500
326713267
327313273
330113301
330613306
331913319
332613326
332713327
333126662
333413334
340313403
340826816
340913409
343613436
344113441
344513445
344626892
345013450
346113461
346213462
347913479
348126962
348313483
348626972
348713487
348813488
348913489
349113491
350013500
350113501
3504310512
350513505
350627012
351527030
352327046
352513525
352713527
352827056
352927058
353027060
353727074
3538414152
353913539
354027080
354127082
354227084
354327086
354413544
354527090
354713547
354813548
357713577
358313583
358513585
358713587
3588310764
359013590
359113591
3593310779
359413594
360427208
360813608
361613616
3618310854
363127262
364413644
367213672
367813678
368213682
368413684
368513685
369327386
369513695
3696518480
369827396
370213702
370313703
370713707
371113711
371927438
372613726
3742726194
3744311232
375213752
375413754
382413824
383013830
383213832
383513835
384113841
384713847
385013850
390713907
391213912
391613916
395527910
395613956
395713957
396713967
397013970
397213972
397313973
397713977
398027960
399127982
400228004
402114021
403714037
403814038
405214052
405314053
406114061
406414064
406728134
4074312222
407728154
4078312234
4079312237
4080624480
408214082
408314083
408528170
408628172
408714087
408814088
408928178
409014090
4091520455
409214092
409314093
409914099
410028200
410214102
4104312312
410528210
410628212
410714107
410928218
411114111
411214112
411328226
411428228
411514115
411614116
411728234
4118312354
411914119
412014120
412114121
412314123
4126312378
4127312381
412828256
412928258
413514135
413614136
413914139
414028280
414228284
4143416572
414414144
414614146
414714147
4149312447
4150416600
415114151
4152416608
415628312
416628332
416928338
417028340
417914179
4181416724
418228364
418628372
4187416748
419514195
419728394
420114201
420328406
420628412
420728414
420928418
421014210
421814218
422128442
423014230
423314233
423628472
423928478
424128482
4242416968
424514245
424614246
424914249
425014250
425528510
425814258
425914259
426314263
4264312792
4265625590
426614266
426828536
426914269
427014270
427128542
4272834176
427314273
4274312822
4275312825
427614276
4277417108
427914279
428114281
428228564
428314283
428828576
428928578
429128582
4294312882
429528590
4296312888
429814298
430028600
430214302
430428608
430614306
430714307
431228624
431714317
431914319
432014320
433014330
4335417340
434314343
435514355
435614356
436128722
436414364
436614366
437828756
438414384
438714387
439014390
439214392
439414394
439828796
440428808
440714407
440914409
441428828
441614416
441928838
442714427
443514435
443614436
444028880
4444417776
444828896
445028900
445528910
445714457
445914459
446014460
446114461
446428928
446728934
446914469
447214472
447314473
447528950
447914479
448028960
448228964
448328966
449014490
449614496
449814498
449914499
4500313500
4504313512
450629012
450814508
450914509
451029020
451329026
451514515
4516313548
451714517
451914519
452114521
4522313566
4524313572
452514525
455429108
4558313674
455914559
456014560
456514565
458929178
459229184
459529190
460414604
460514605
460714607
461529230
465514655
Total10023367746
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
257212572
257625152
258712587
258812588
259112591
259212592
2594410376
259525190
259712597
259812598
259937797
260025200
260137803
260212602
2604410416
260525210
260637818
260712607
260837824
2609410436
261112611
261212612
2613513065
261412614
261537845
261637848
261725234
261912619
262012620
2621410484
262212622
262312623
2625615750
262625252
262712627
2628513140
2630513150
2632410528
263425268
263512635
263725274
263825276
263937917
264112641
264437932
264525290
264612646
264725294
265312653
265412654
266512665
2673410692
267412674
267925358
268112681
268225364
268312683
268625372
268812688
2692410768
269612696
270112701
270212702
270525410
270612706
270812708
270912709
271012710
271112711
271625432
271912719
272012720
272312723
272412724
272512725
272625452
272738181
273412734
273512735
273725474
2739410956
274112741
274225484
274312743
274412744
274525490
274612746
274925498
275025500
275425508
275612756
275712757
275812758
275938277
276038280
276112761
276338289
2764616584
2765411060
276625532
276725534
276825536
2769411076
277038310
277112771
277225544
2773822184
277412774
277712777
277938337
278012780
278138343
278212782
278325566
278412784
278525570
278625572
279225584
279412794
279512795
279638388
279738391
2798719586
279912799
2803411212
280512805
280638418
280712807
280812808
280912809
281112811
281325626
281438442
281612816
281725634
281925638
282012820
2822411288
282338469
282412824
282512825
282625652
282712827
2828411312
282912829
283112831
283212832
283412834
283625672
283738511
284612846
284712847
2851411404
285925718
286012860
286225724
286512865
287025740
287112871
287312873
287412874
288712887
289125782
289412894
290125802
290612906
290738721
291038730
291225824
292312923
292512925
292638778
295612956
295712957
296012960
296625932
296725934
296938907
297012970
297212972
298112981
298212982
298325966
298425968
298512985
299012990
299325986
299612996
300013000
300613006
301526030
302613026
303013030
303113031
303613036
303913039
306813068
307113071
307713077
308613086
311226224
313813138
314013140
315326306
315826316
315913159
318026360
318413184
318513185
318813188
319026380
319226384
319539585
319813198
320226404
3204412816
320513205
320613206
320713207
320813208
321226424
321513215
321713217
322013220
322113221
322213222
322526450
323013230
323213232
323313233
323413234
323626472
323826476
324226484
325013250
325826516
326413264
326613266
326926538
327426548
330526610
330913309
331013310
331213312
331413314
331826636
331913319
332013320
334513345
335326706
337513375
3377310131
339226784
339713397
3398310194
340113401
340213402
340826816
341213412
3415517075
341613416
341713417
341913419
342026840
343513435
343613436
343713437
344013440
344126882
347213472
347513475
348013480
348413484
348913489
349113491
349226984
349413494
350513505
350613506
350813508
350913509
351013510
351213512
351713517
355613556
355813558
356213562
356313563
358027160
361613616
362913629
363013630
363313633
363427268
363727274
365013650
365427308
365513655
365813658
366113661
366213662
366513665
369427388
369627392
370127402
3702414808
370327406
370913709
371127422
371413714
3721311163
372213722
372327446
372413724
372513725
372613726
372827456
373127462
373213732
373327466
373613736
373827476
374013740
374113741
374413744
374627492
374713747
377113771
377513775
378327566
378413784
378513785
378627572
379027580
379127582
379227584
3793311379
379627592
379813798
380113801
381113811
381313813
382313823
384413844
384913849
387313873
387713877
390113901
390313903
391527830
392413924
392713927
393913939
397013970
397513975
398027960
398113981
398313983
398527970
398813988
398913989
399013990
399113991
399313993
399413994
399927998
401214012
401514015
402414024
402814028
4029520145
403014030
403114031
403228064
403414034
404514045
404814048
406314063
407214072
410314103
410714107
411714117
412314123
414514145
414814148
414914149
415014150
415814158
416128322
417728354
423514235
423714237
424914249
425214252
426728534
427728554
428028560
428414284
429014290
4291312873
429214292
429414294
4295312885
429628592
429714297
430014300
430214302
430314303
430514305
430614306
430814308
430914309
431014310
431114311
431914319
432014320
432228644
432328646
432414324
433014330
433328666
434014340
4341313023
434228684
434314343
434614346
434728694
4348313044
435114351
435228704
435328706
435414354
435814358
435914359
436028720
436114361
436328726
436928738
437028740
4372313116
4373626238
4374313122
437514375
437614376
437728754
437828756
4380521900
438128762
4382313146
438328766
438414384
438514385
438628772
4387626322
4388521940
438914389
439014390
439114391
439228784
439328786
439414394
439514395
439628792
439714397
4398313194
439914399
440028800
440128802
440214402
440328806
440428808
440528810
440614406
440714407
441028820
4411417644
4412626472
44131044130
4415313245
441614416
441914419
442028840
442128842
442214422
4426313278
4427313281
442828856
4430522150
4431522155
443214432
443314433
443414434
443714437
443814438
443928878
4440313320
4441417764
444228884
4443522215
444728894
4449313347
445314453
445628912
445828916
445928918
446328926
446428928
446728934
446814468
447114471
4472417888
447614476
448114481
448314483
448428968
448614486
448914489
449214492
449414494
449614496
450029000
450529010
450829016
4511313533
451229024
451314513
451414514
451514515
451714517
452529050
4527313581
452814528
453329066
453429068
453529070
453729074
453829076
454329086
454429088
455714557
456414564
457114571
457329146
457514575
4584313752
458714587
4621418484
462414624
462514625
462814628
463314633
464314643
464414644
464514645
465214652
465414654
465514655
465929318
466329326
467014670
467414674
467514675
467614676
467914679
468029360
468314683
468914689
469029380
469214692
469329386
469429388
469514695
469614696
470014700
470129402
4702314106
470514705
470614706
471614716
472014720
472229444
472314723
4724837792
4725523625
473014730
473114731
Total10023593880
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333634266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882802bb93983c3
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3830326262393339
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_4_9.json b/autobahn/client/tungstenite_case_12_4_9.json new file mode 100644 index 0000000..62105ea --- /dev/null +++ b/autobahn/client/tungstenite_case_12_4_9.json @@ -0,0 +1,1345 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 364, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 3315, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=364&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Ze5kEnEW06Y/0FqsPTpuJg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: rLWTK3k8+e3820D8/ZeuXRqd+jc=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.4.9", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "2230": 1, + "2234": 2, + "2248": 2, + "2250": 2, + "2253": 1, + "2254": 1, + "2255": 1, + "2256": 2, + "2258": 2, + "2259": 1, + "2260": 2, + "2262": 1, + "2263": 3, + "2264": 4, + "2265": 4, + "2268": 4, + "2271": 1, + "2272": 1, + "2275": 1, + "2277": 1, + "2278": 3, + "2280": 1, + "2281": 3, + "2282": 1, + "2284": 2, + "2286": 2, + "2288": 2, + "2290": 1, + "2292": 1, + "2293": 1, + "2295": 1, + "2317": 1, + "2318": 1, + "2319": 1, + "2322": 1, + "2323": 2, + "2333": 2, + "2338": 2, + "2340": 1, + "2343": 1, + "2344": 2, + "2349": 1, + "2350": 2, + "2355": 2, + "2358": 3, + "2360": 1, + "2362": 1, + "2368": 1, + "2369": 2, + "2371": 2, + "2373": 3, + "2375": 3, + "2376": 2, + "2379": 1, + "2382": 1, + "2384": 2, + "2385": 3, + "2386": 1, + "2388": 1, + "2389": 1, + "2390": 1, + "2391": 1, + "2394": 1, + "2398": 1, + "2400": 1, + "2403": 1, + "2404": 1, + "2408": 2, + "2410": 1, + "2411": 1, + "2412": 1, + "2414": 1, + "2415": 2, + "2416": 1, + "2417": 1, + "2418": 2, + "2419": 5, + "2420": 3, + "2421": 2, + "2422": 1, + "2424": 5, + "2427": 4, + "2431": 2, + "2432": 2, + "2433": 2, + "2436": 2, + "2437": 1, + "2438": 2, + "2439": 2, + "2441": 3, + "2443": 2, + "2445": 1, + "2446": 1, + "2448": 1, + "2449": 1, + "2450": 1, + "2451": 1, + "2452": 2, + "2453": 3, + "2454": 1, + "2458": 1, + "2462": 1, + "2463": 1, + "2464": 2, + "2466": 2, + "2467": 2, + "2468": 1, + "2470": 4, + "2472": 1, + "2473": 1, + "2477": 1, + "2478": 2, + "2479": 1, + "2483": 1, + "2485": 3, + "2488": 1, + "2489": 1, + "2490": 2, + "2491": 4, + "2492": 3, + "2493": 2, + "2494": 1, + "2495": 5, + "2496": 2, + "2498": 1, + "2500": 1, + "2501": 3, + "2507": 2, + "2508": 1, + "2509": 2, + "2510": 3, + "2511": 1, + "2513": 3, + "2514": 1, + "2515": 2, + "2516": 3, + "2518": 1, + "2525": 2, + "2526": 1, + "2527": 1, + "2533": 3, + "2534": 4, + "2535": 1, + "2536": 3, + "2537": 1, + "2539": 2, + "2542": 2, + "2543": 1, + "2544": 1, + "2545": 3, + "2546": 1, + "2549": 5, + "2550": 1, + "2553": 3, + "2554": 3, + "2555": 3, + "2556": 1, + "2559": 2, + "2563": 1, + "2572": 1, + "2583": 2, + "2593": 1, + "2594": 1, + "2609": 1, + "2640": 1, + "2641": 1, + "2644": 1, + "2645": 1, + "2667": 2, + "2674": 1, + "2677": 2, + "2678": 1, + "2682": 1, + "2684": 1, + "2685": 1, + "2693": 1, + "2696": 2, + "2697": 2, + "2698": 1, + "2702": 1, + "2703": 1, + "2706": 1, + "2707": 1, + "2710": 2, + "2711": 1, + "2714": 1, + "2724": 1, + "2728": 2, + "2732": 1, + "2733": 1, + "2741": 1, + "2742": 1, + "2757": 1, + "2760": 1, + "2766": 1, + "2770": 1, + "2771": 1, + "2772": 2, + "2774": 1, + "2775": 1, + "2781": 2, + "2785": 1, + "2788": 3, + "2789": 1, + "2795": 1, + "2797": 3, + "2815": 3, + "2818": 1, + "2821": 1, + "2822": 1, + "2824": 1, + "2828": 1, + "2830": 1, + "2831": 2, + "2833": 1, + "2838": 1, + "2840": 2, + "2842": 2, + "2843": 3, + "2847": 1, + "2849": 1, + "2850": 1, + "2853": 1, + "2854": 1, + "2855": 2, + "2857": 1, + "2865": 1, + "2875": 1, + "2877": 1, + "2879": 4, + "2882": 1, + "2885": 2, + "2887": 1, + "2889": 1, + "2890": 1, + "2891": 3, + "2894": 3, + "2901": 2, + "2960": 1, + "2962": 1, + "2965": 1, + "2966": 1, + "2967": 2, + "2984": 1, + "2986": 1, + "2996": 2, + "2998": 2, + "2999": 1, + "3003": 1, + "3005": 2, + "3006": 1, + "3012": 1, + "3031": 1, + "3034": 1, + "3037": 2, + "3038": 1, + "3039": 1, + "3042": 1, + "3043": 1, + "3045": 2, + "3048": 1, + "3050": 2, + "3061": 2, + "3066": 1, + "3068": 1, + "3070": 1, + "3071": 2, + "3072": 1, + "3073": 1, + "3075": 1, + "3076": 5, + "3077": 2, + "3080": 1, + "3081": 2, + "3082": 3, + "3083": 3, + "3084": 2, + "3086": 1, + "3090": 2, + "3091": 4, + "3092": 1, + "3093": 2, + "3097": 1, + "3114": 1, + "3115": 1, + "3120": 2, + "3131": 1, + "3153": 1, + "3156": 1, + "3159": 1, + "3163": 1, + "3170": 1, + "3175": 1, + "3178": 1, + "3179": 1, + "3180": 1, + "3184": 1, + "3198": 2, + "3205": 1, + "3207": 1, + "3234": 1, + "3236": 1, + "3238": 1, + "3240": 1, + "3243": 1, + "3247": 2, + "3250": 2, + "3267": 1, + "3273": 1, + "3301": 1, + "3306": 1, + "3319": 1, + "3326": 1, + "3327": 1, + "3331": 2, + "3334": 1, + "3403": 1, + "3408": 2, + "3409": 1, + "3436": 1, + "3441": 1, + "3445": 1, + "3446": 2, + "3450": 1, + "3461": 1, + "3462": 1, + "3479": 1, + "3481": 2, + "3483": 1, + "3486": 2, + "3487": 1, + "3488": 1, + "3489": 1, + "3491": 1, + "3500": 1, + "3501": 1, + "3504": 3, + "3505": 1, + "3506": 2, + "3515": 2, + "3523": 2, + "3525": 1, + "3527": 1, + "3528": 2, + "3529": 2, + "3530": 2, + "3537": 2, + "3538": 4, + "3539": 1, + "3540": 2, + "3541": 2, + "3542": 2, + "3543": 2, + "3544": 1, + "3545": 2, + "3547": 1, + "3548": 1, + "3577": 1, + "3583": 1, + "3585": 1, + "3587": 1, + "3588": 3, + "3590": 1, + "3591": 1, + "3593": 3, + "3594": 1, + "3604": 2, + "3608": 1, + "3616": 1, + "3618": 3, + "3631": 2, + "3644": 1, + "3672": 1, + "3678": 1, + "3682": 1, + "3684": 1, + "3685": 1, + "3693": 2, + "3695": 1, + "3696": 5, + "3698": 2, + "3702": 1, + "3703": 1, + "3707": 1, + "3711": 1, + "3719": 2, + "3726": 1, + "3742": 7, + "3744": 3, + "3752": 1, + "3754": 1, + "3824": 1, + "3830": 1, + "3832": 1, + "3835": 1, + "3841": 1, + "3847": 1, + "3850": 1, + "3907": 1, + "3912": 1, + "3916": 1, + "3955": 2, + "3956": 1, + "3957": 1, + "3967": 1, + "3970": 1, + "3972": 1, + "3973": 1, + "3977": 1, + "3980": 2, + "3991": 2, + "4002": 2, + "4021": 1, + "4037": 1, + "4038": 1, + "4052": 1, + "4053": 1, + "4061": 1, + "4064": 1, + "4067": 2, + "4074": 3, + "4077": 2, + "4078": 3, + "4079": 3, + "4080": 6, + "4082": 1, + "4083": 1, + "4085": 2, + "4086": 2, + "4087": 1, + "4088": 1, + "4089": 2, + "4090": 1, + "4091": 5, + "4092": 1, + "4093": 1, + "4099": 1, + "4100": 2, + "4102": 1, + "4104": 3, + "4105": 2, + "4106": 2, + "4107": 1, + "4109": 2, + "4111": 1, + "4112": 1, + "4113": 2, + "4114": 2, + "4115": 1, + "4116": 1, + "4117": 2, + "4118": 3, + "4119": 1, + "4120": 1, + "4121": 1, + "4123": 1, + "4126": 3, + "4127": 3, + "4128": 2, + "4129": 2, + "4135": 1, + "4136": 1, + "4139": 1, + "4140": 2, + "4142": 2, + "4143": 4, + "4144": 1, + "4146": 1, + "4147": 1, + "4149": 3, + "4150": 4, + "4151": 1, + "4152": 4, + "4156": 2, + "4166": 2, + "4169": 2, + "4170": 2, + "4179": 1, + "4181": 4, + "4182": 2, + "4186": 2, + "4187": 4, + "4195": 1, + "4197": 2, + "4201": 1, + "4203": 2, + "4206": 2, + "4207": 2, + "4209": 2, + "4210": 1, + "4218": 1, + "4221": 2, + "4230": 1, + "4233": 1, + "4236": 2, + "4239": 2, + "4241": 2, + "4242": 4, + "4245": 1, + "4246": 1, + "4249": 1, + "4250": 1, + "4255": 2, + "4258": 1, + "4259": 1, + "4263": 1, + "4264": 3, + "4265": 6, + "4266": 1, + "4268": 2, + "4269": 1, + "4270": 1, + "4271": 2, + "4272": 8, + "4273": 1, + "4274": 3, + "4275": 3, + "4276": 1, + "4277": 4, + "4279": 1, + "4281": 1, + "4282": 2, + "4283": 1, + "4288": 2, + "4289": 2, + "4291": 2, + "4294": 3, + "4295": 2, + "4296": 3, + "4298": 1, + "4300": 2, + "4302": 1, + "4304": 2, + "4306": 1, + "4307": 1, + "4312": 2, + "4317": 1, + "4319": 1, + "4320": 1, + "4330": 1, + "4335": 4, + "4343": 1, + "4355": 1, + "4356": 1, + "4361": 2, + "4364": 1, + "4366": 1, + "4378": 2, + "4384": 1, + "4387": 1, + "4390": 1, + "4392": 1, + "4394": 1, + "4398": 2, + "4404": 2, + "4407": 1, + "4409": 1, + "4414": 2, + "4416": 1, + "4419": 2, + "4427": 1, + "4435": 1, + "4436": 1, + "4440": 2, + "4444": 4, + "4448": 2, + "4450": 2, + "4455": 2, + "4457": 1, + "4459": 1, + "4460": 1, + "4461": 1, + "4464": 2, + "4467": 2, + "4469": 1, + "4472": 1, + "4473": 1, + "4475": 2, + "4479": 1, + "4480": 2, + "4482": 2, + "4483": 2, + "4490": 1, + "4496": 1, + "4498": 1, + "4499": 1, + "4500": 3, + "4504": 3, + "4506": 2, + "4508": 1, + "4509": 1, + "4510": 2, + "4513": 2, + "4515": 1, + "4516": 3, + "4517": 1, + "4519": 1, + "4521": 1, + "4522": 3, + "4524": 3, + "4525": 1, + "4554": 2, + "4558": 3, + "4559": 1, + "4560": 1, + "4565": 1, + "4589": 2, + "4592": 2, + "4595": 2, + "4604": 1, + "4605": 1, + "4607": 1, + "4615": 2, + "4655": 1 + }, + "started": "2020-09-07T18:49:53.719Z", + "trafficStats": { + "incomingCompressionRatio": 0.05125635381367967, + "incomingOctetsAppLevel": 65542723, + "incomingOctetsWebSocketLevel": 3359481, + "incomingOctetsWireLevel": 3367481, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0023813202098776566, + "outgoingCompressionRatio": 0.054767697094305956, + "outgoingOctetsAppLevel": 65542723, + "outgoingOctetsWebSocketLevel": 3589624, + "outgoingOctetsWireLevel": 3593624, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0011143228371550892, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "2572": 1, + "2576": 2, + "2587": 1, + "2588": 1, + "2591": 1, + "2592": 1, + "2594": 4, + "2595": 2, + "2597": 1, + "2598": 1, + "2599": 3, + "2600": 2, + "2601": 3, + "2602": 1, + "2604": 4, + "2605": 2, + "2606": 3, + "2607": 1, + "2608": 3, + "2609": 4, + "2611": 1, + "2612": 1, + "2613": 5, + "2614": 1, + "2615": 3, + "2616": 3, + "2617": 2, + "2619": 1, + "2620": 1, + "2621": 4, + "2622": 1, + "2623": 1, + "2625": 6, + "2626": 2, + "2627": 1, + "2628": 5, + "2630": 5, + "2632": 4, + "2634": 2, + "2635": 1, + "2637": 2, + "2638": 2, + "2639": 3, + "2641": 1, + "2644": 3, + "2645": 2, + "2646": 1, + "2647": 2, + "2653": 1, + "2654": 1, + "2665": 1, + "2673": 4, + "2674": 1, + "2679": 2, + "2681": 1, + "2682": 2, + "2683": 1, + "2686": 2, + "2688": 1, + "2692": 4, + "2696": 1, + "2701": 1, + "2702": 1, + "2705": 2, + "2706": 1, + "2708": 1, + "2709": 1, + "2710": 1, + "2711": 1, + "2716": 2, + "2719": 1, + "2720": 1, + "2723": 1, + "2724": 1, + "2725": 1, + "2726": 2, + "2727": 3, + "2734": 1, + "2735": 1, + "2737": 2, + "2739": 4, + "2741": 1, + "2742": 2, + "2743": 1, + "2744": 1, + "2745": 2, + "2746": 1, + "2749": 2, + "2750": 2, + "2754": 2, + "2756": 1, + "2757": 1, + "2758": 1, + "2759": 3, + "2760": 3, + "2761": 1, + "2763": 3, + "2764": 6, + "2765": 4, + "2766": 2, + "2767": 2, + "2768": 2, + "2769": 4, + "2770": 3, + "2771": 1, + "2772": 2, + "2773": 8, + "2774": 1, + "2777": 1, + "2779": 3, + "2780": 1, + "2781": 3, + "2782": 1, + "2783": 2, + "2784": 1, + "2785": 2, + "2786": 2, + "2792": 2, + "2794": 1, + "2795": 1, + "2796": 3, + "2797": 3, + "2798": 7, + "2799": 1, + "2803": 4, + "2805": 1, + "2806": 3, + "2807": 1, + "2808": 1, + "2809": 1, + "2811": 1, + "2813": 2, + "2814": 3, + "2816": 1, + "2817": 2, + "2819": 2, + "2820": 1, + "2822": 4, + "2823": 3, + "2824": 1, + "2825": 1, + "2826": 2, + "2827": 1, + "2828": 4, + "2829": 1, + "2831": 1, + "2832": 1, + "2834": 1, + "2836": 2, + "2837": 3, + "2846": 1, + "2847": 1, + "2851": 4, + "2859": 2, + "2860": 1, + "2862": 2, + "2865": 1, + "2870": 2, + "2871": 1, + "2873": 1, + "2874": 1, + "2887": 1, + "2891": 2, + "2894": 1, + "2901": 2, + "2906": 1, + "2907": 3, + "2910": 3, + "2912": 2, + "2923": 1, + "2925": 1, + "2926": 3, + "2956": 1, + "2957": 1, + "2960": 1, + "2966": 2, + "2967": 2, + "2969": 3, + "2970": 1, + "2972": 1, + "2981": 1, + "2982": 1, + "2983": 2, + "2984": 2, + "2985": 1, + "2990": 1, + "2993": 2, + "2996": 1, + "3000": 1, + "3006": 1, + "3015": 2, + "3026": 1, + "3030": 1, + "3031": 1, + "3036": 1, + "3039": 1, + "3068": 1, + "3071": 1, + "3077": 1, + "3086": 1, + "3112": 2, + "3138": 1, + "3140": 1, + "3153": 2, + "3158": 2, + "3159": 1, + "3180": 2, + "3184": 1, + "3185": 1, + "3188": 1, + "3190": 2, + "3192": 2, + "3195": 3, + "3198": 1, + "3202": 2, + "3204": 4, + "3205": 1, + "3206": 1, + "3207": 1, + "3208": 1, + "3212": 2, + "3215": 1, + "3217": 1, + "3220": 1, + "3221": 1, + "3222": 1, + "3225": 2, + "3230": 1, + "3232": 1, + "3233": 1, + "3234": 1, + "3236": 2, + "3238": 2, + "3242": 2, + "3250": 1, + "3258": 2, + "3264": 1, + "3266": 1, + "3269": 2, + "3274": 2, + "3305": 2, + "3309": 1, + "3310": 1, + "3312": 1, + "3314": 1, + "3318": 2, + "3319": 1, + "3320": 1, + "3345": 1, + "3353": 2, + "3375": 1, + "3377": 3, + "3392": 2, + "3397": 1, + "3398": 3, + "3401": 1, + "3402": 1, + "3408": 2, + "3412": 1, + "3415": 5, + "3416": 1, + "3417": 1, + "3419": 1, + "3420": 2, + "3435": 1, + "3436": 1, + "3437": 1, + "3440": 1, + "3441": 2, + "3472": 1, + "3475": 1, + "3480": 1, + "3484": 1, + "3489": 1, + "3491": 1, + "3492": 2, + "3494": 1, + "3505": 1, + "3506": 1, + "3508": 1, + "3509": 1, + "3510": 1, + "3512": 1, + "3517": 1, + "3556": 1, + "3558": 1, + "3562": 1, + "3563": 1, + "3580": 2, + "3616": 1, + "3629": 1, + "3630": 1, + "3633": 1, + "3634": 2, + "3637": 2, + "3650": 1, + "3654": 2, + "3655": 1, + "3658": 1, + "3661": 1, + "3662": 1, + "3665": 1, + "3694": 2, + "3696": 2, + "3701": 2, + "3702": 4, + "3703": 2, + "3709": 1, + "3711": 2, + "3714": 1, + "3721": 3, + "3722": 1, + "3723": 2, + "3724": 1, + "3725": 1, + "3726": 1, + "3728": 2, + "3731": 2, + "3732": 1, + "3733": 2, + "3736": 1, + "3738": 2, + "3740": 1, + "3741": 1, + "3744": 1, + "3746": 2, + "3747": 1, + "3771": 1, + "3775": 1, + "3783": 2, + "3784": 1, + "3785": 1, + "3786": 2, + "3790": 2, + "3791": 2, + "3792": 2, + "3793": 3, + "3796": 2, + "3798": 1, + "3801": 1, + "3811": 1, + "3813": 1, + "3823": 1, + "3844": 1, + "3849": 1, + "3873": 1, + "3877": 1, + "3901": 1, + "3903": 1, + "3915": 2, + "3924": 1, + "3927": 1, + "3939": 1, + "3970": 1, + "3975": 1, + "3980": 2, + "3981": 1, + "3983": 1, + "3985": 2, + "3988": 1, + "3989": 1, + "3990": 1, + "3991": 1, + "3993": 1, + "3994": 1, + "3999": 2, + "4012": 1, + "4015": 1, + "4024": 1, + "4028": 1, + "4029": 5, + "4030": 1, + "4031": 1, + "4032": 2, + "4034": 1, + "4045": 1, + "4048": 1, + "4063": 1, + "4072": 1, + "4103": 1, + "4107": 1, + "4117": 1, + "4123": 1, + "4145": 1, + "4148": 1, + "4149": 1, + "4150": 1, + "4158": 1, + "4161": 2, + "4177": 2, + "4235": 1, + "4237": 1, + "4249": 1, + "4252": 1, + "4267": 2, + "4277": 2, + "4280": 2, + "4284": 1, + "4290": 1, + "4291": 3, + "4292": 1, + "4294": 1, + "4295": 3, + "4296": 2, + "4297": 1, + "4300": 1, + "4302": 1, + "4303": 1, + "4305": 1, + "4306": 1, + "4308": 1, + "4309": 1, + "4310": 1, + "4311": 1, + "4319": 1, + "4320": 1, + "4322": 2, + "4323": 2, + "4324": 1, + "4330": 1, + "4333": 2, + "4340": 1, + "4341": 3, + "4342": 2, + "4343": 1, + "4346": 1, + "4347": 2, + "4348": 3, + "4351": 1, + "4352": 2, + "4353": 2, + "4354": 1, + "4358": 1, + "4359": 1, + "4360": 2, + "4361": 1, + "4363": 2, + "4369": 2, + "4370": 2, + "4372": 3, + "4373": 6, + "4374": 3, + "4375": 1, + "4376": 1, + "4377": 2, + "4378": 2, + "4380": 5, + "4381": 2, + "4382": 3, + "4383": 2, + "4384": 1, + "4385": 1, + "4386": 2, + "4387": 6, + "4388": 5, + "4389": 1, + "4390": 1, + "4391": 1, + "4392": 2, + "4393": 2, + "4394": 1, + "4395": 1, + "4396": 2, + "4397": 1, + "4398": 3, + "4399": 1, + "4400": 2, + "4401": 2, + "4402": 1, + "4403": 2, + "4404": 2, + "4405": 2, + "4406": 1, + "4407": 1, + "4410": 2, + "4411": 4, + "4412": 6, + "4413": 10, + "4415": 3, + "4416": 1, + "4419": 1, + "4420": 2, + "4421": 2, + "4422": 1, + "4426": 3, + "4427": 3, + "4428": 2, + "4430": 5, + "4431": 5, + "4432": 1, + "4433": 1, + "4434": 1, + "4437": 1, + "4438": 1, + "4439": 2, + "4440": 3, + "4441": 4, + "4442": 2, + "4443": 5, + "4447": 2, + "4449": 3, + "4453": 1, + "4456": 2, + "4458": 2, + "4459": 2, + "4463": 2, + "4464": 2, + "4467": 2, + "4468": 1, + "4471": 1, + "4472": 4, + "4476": 1, + "4481": 1, + "4483": 1, + "4484": 2, + "4486": 1, + "4489": 1, + "4492": 1, + "4494": 1, + "4496": 1, + "4500": 2, + "4505": 2, + "4508": 2, + "4511": 3, + "4512": 2, + "4513": 1, + "4514": 1, + "4515": 1, + "4517": 1, + "4525": 2, + "4527": 3, + "4528": 1, + "4533": 2, + "4534": 2, + "4535": 2, + "4537": 2, + "4538": 2, + "4543": 2, + "4544": 2, + "4557": 1, + "4564": 1, + "4571": 1, + "4573": 2, + "4575": 1, + "4584": 3, + "4587": 1, + "4621": 4, + "4624": 1, + "4625": 1, + "4628": 1, + "4633": 1, + "4643": 1, + "4644": 1, + "4645": 1, + "4652": 1, + "4654": 1, + "4655": 1, + "4659": 2, + "4663": 2, + "4670": 1, + "4674": 1, + "4675": 1, + "4676": 1, + "4679": 1, + "4680": 2, + "4683": 1, + "4689": 1, + "4690": 2, + "4692": 1, + "4693": 2, + "4694": 2, + "4695": 1, + "4696": 1, + "4700": 1, + "4701": 2, + "4702": 3, + "4705": 1, + "4706": 1, + "4716": 1, + "4720": 1, + "4722": 2, + "4723": 1, + "4724": 8, + "4725": 5, + "4730": 1, + "4731": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333634266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882802bb93983c3" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "802bb939" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_5_1.html b/autobahn/client/tungstenite_case_12_5_1.html new file mode 100644 index 0000000..bff165f --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_1.html @@ -0,0 +1,330 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.5.1 : Pass - 92 ms @ 2020-09-07T18:50:35.863Z

+

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=374&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: C0mYEPvtq8RA8QE8721kxA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: bzqQA5RuquHo/ClMTtY1Ue8PXPM=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
1011110
1146506
12896
1318234
1420280
15690
16464
179153
18590
19595
205100
22366
23123
24461104
2580220050
2611286
2571257
Total100223612
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
61166
746322
8864
918162
1020200
11666
12448
139117
14570
15575
16580
18354
19119
2046920
2180216842
2211242
2521252
Total100219603
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333734266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882d5d4c50dd63c
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6435643463353064
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_5_1.json b/autobahn/client/tungstenite_case_12_5_1.json new file mode 100644 index 0000000..4ac5ef4 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_1.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 374, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 92, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=374&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: C0mYEPvtq8RA8QE8721kxA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: bzqQA5RuquHo/ClMTtY1Ue8PXPM=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.5.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 11, + "11": 46, + "12": 8, + "13": 18, + "14": 20, + "15": 6, + "16": 4, + "17": 9, + "18": 5, + "19": 5, + "20": 5, + "22": 3, + "23": 1, + "24": 46, + "25": 802, + "26": 11, + "257": 1 + }, + "started": "2020-09-07T18:50:35.863Z", + "trafficStats": { + "incomingCompressionRatio": 1.0841875, + "incomingOctetsAppLevel": 16000, + "incomingOctetsWebSocketLevel": 17347, + "incomingOctetsWireLevel": 23347, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.3458811321842393, + "outgoingCompressionRatio": 1.0841875, + "outgoingOctetsAppLevel": 16000, + "outgoingOctetsWebSocketLevel": 17347, + "outgoingOctetsWireLevel": 19347, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.11529371072807978, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 11, + "7": 46, + "8": 8, + "9": 18, + "10": 20, + "11": 6, + "12": 4, + "13": 9, + "14": 5, + "15": 5, + "16": 5, + "18": 3, + "19": 1, + "20": 46, + "21": 802, + "22": 11, + "252": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333734266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882d5d4c50dd63c" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "d5d4c50d" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_5_10.html b/autobahn/client/tungstenite_case_12_5_10.html new file mode 100644 index 0000000..ee48caa --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_10.html @@ -0,0 +1,2084 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.5.10 : Pass - 9620 ms @ 2020-09-07T18:50:46.017Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=383&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ly7NCMJ+yuFQ41LerrpXBQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 0MJfpbd+ptRGVuV1JqD29XBzZv4=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
58158
2571257
137411374
144311443
149322986
158711587
163311633
345713457
354213542
359113591
365413654
369313693
379113791
379213792
385113851
390113901
392513925
400614006
406114061
434914349
448014480
454214542
469714697
485414854
500215002
546615466
553515535
559615596
563815638
571815718
579315793
775617756
785117851
788417884
793817938
801718017
810418104
879118791
889818898
900819008
909119091
916919169
927419274
949519495
957119571
962619626
969419694
975319753
975519755
978819788
983219832
986719867
989219892
10029110029
10074110074
10889110889
10965110965
11080111080
11184111184
11271111271
11385111385
13478113478
13553113553
13647113647
13671113671
13686113686
13720113720
14369114369
14472114472
14487114487
14592114592
14722114722
14852114852
15078115078
15095115095
15100115100
15135115135
15144115144
15161115161
15242115242
15245115245
15277115277
15294115294
15326115326
15331115331
15370115370
15394115394
15410115410
15430115430
15458115458
15537115537
17549117549
17626117626
17682117682
17748117748
17809117809
18694118694
18761118761
18853118853
18892118892
18978118978
19072119072
19123119123
19139119139
19161119161
19176119176
19195119195
19208119208
19512119512
19524119524
19546119546
19556119556
19581119581
19582119582
19855119855
19991119991
20124120124
20259120259
20378120378
20510120510
21201121201
21218121218
21219121219
21229121229
21232121232
21249121249
21251121251
21324121324
21326121326
21380121380
21460121460
21484121484
21515121515
21574121574
21617121617
21640121640
21646121646
21685121685
21847121847
21874121874
21881121881
21901121901
21902121902
21957121957
22075122075
22084122084
22098122098
22115122115
22130122130
22146122146
22378122378
22380122380
22394122394
22407122407
22411122411
22435122435
23284123284
23421123421
23517123517
23657123657
23795123795
23927123927
25057125057
25198125198
25327125327
25463125463
25595125595
25735125735
28352128352
28497128497
28648128648
28782128782
28929128929
29069129069
29371129371
29403129403
29493129493
29622129622
29694129694
29716129716
30478130478
30614130614
30748130748
30880130880
31016131016
31153131153
31248131248
31277131277
31299131299
31318131318
31341131341
31353131353
31782131782
31861131861
31949131949
32037132037
32113132113
32185132185
33347133347
33490133490
33564133564
33682133682
33815133815
33956133956
35764135764
35800135800
35890135890
35896135896
35947135947
35990271980
36007136007
36016136016
36028136028
36043136043
36134136134
36136136136
36216136216
36229136229
36245136245
36344136344
36470136470
37365137365
37404137404
37449137449
37502137502
37635137635
37703137703
39215139215
39314139314
39390278780
39420139420
39552139552
39769139769
39879139879
39980139980
40060140060
40097140097
40112140112
40116280232
40120140120
40143140143
40152140152
40252140252
41037141037
41168141168
41303141303
41439141439
41575141575
41703141703
41977141977
42074142074
42139142139
42195142195
42205142205
42300142300
42301142301
42364142364
42379142379
42396142396
42400142400
43461143461
43541143541
43598143598
43655143655
43658143658
43726143726
43739143739
43748143748
43778143778
43780143780
43791143791
43856143856
43913143913
43917143917
43964143964
43991287982
44054144054
44087144087
44131144131
44182144182
44212144212
44279144279
44282144282
44399144399
44526144526
44641144641
44767144767
44893144893
45021145021
45395145395
45399145399
45402145402
45413145413
45417145417
45425145425
45507145507
45515145515
45524145524
45525145525
45554145554
45605145605
45722145722
45832145832
45841145841
45847145847
45919145919
45941145941
46018146018
46034146034
46094146094
46122146122
46185146185
46229146229
47283147283
47366147366
47401147401
47457147457
47522147522
47559147559
47650147650
47659147659
47714147714
47779147779
47892147892
47993147993
48857148857
48955148955
49046149046
49053149053
49117298234
49137149137
49186149186
49238298476
49254149254
49304149304
49483149483
49486149486
49526149526
49529149529
49562149562
49675149675
49864149864
49979149979
50107150107
50214150214
50232150232
50245150245
50274150274
50338150338
50354150354
50377150377
50438150438
50466150466
50480150480
50545150545
50555150555
50645150645
50754150754
50853150853
52398152398
52463152463
52493152493
52503152503
52523152523
52547152547
52559152559
52574152574
52633152633
52681152681
52683152683
52708152708
52752152752
52799152799
52801152801
52817152817
52887152887
52903152903
52943152943
53008153008
53051153051
53086153086
53169153169
53230153230
54217154217
54254154254
54258154258
54266154266
54363154363
54468154468
54877154877
54984154984
55085155085
55186155186
55287155287
55392155392
55441155441
55564155564
55685155685
55713155713
55726155726
55746155746
55805155805
55816155816
55858155858
55871155871
55938155938
56062156062
56278156278
56327156327
56425156425
56450156450
56501156501
56591156591
57403157403
57495157495
57585157585
57677157677
57808157808
57879157879
58349158349
58449158449
58534158534
58536158536
58564158564
58573158573
585792117158
585802117160
58687158687
58691158691
588132117626
58921158921
58930158930
59067159067
59199159199
59231159231
59232159232
592352118470
59241159241
59243159243
592852118570
59286159286
59288159288
59289159289
59297159297
59387159387
59392159392
593942118788
59395159395
593962118792
59399159399
59401159401
594022118804
59483159483
595172119034
59521159521
595222119044
59523159523
59587159587
59609159609
59610159610
59612159612
596142119228
59616159616
596222119244
59625159625
596262119252
596272119254
59628159628
59630159630
596313178893
596322119264
59633159633
59635159635
59639159639
59640159640
59649159649
59653159653
59654159654
596573178971
59663159663
59664159664
59669159669
59673159673
59676159676
59677159677
59679159679
59689159689
59705159705
59715159715
59717159717
59720159720
59721159721
597232119446
59727159727
59728159728
59729159729
59730159730
59752159752
59761159761
59763159763
59790159790
59792159792
59834159834
59836159836
59838159838
598462119692
59847159847
59850159850
59851159851
598532119706
59854159854
59856159856
598592119718
59860159860
59867159867
59869159869
59878159878
59879159879
59884159884
59885159885
59886159886
59887159887
598882119776
59890159890
59891159891
59894159894
59895159895
59896159896
59899159899
59901159901
59912159912
59914159914
59915159915
599162119832
59918159918
599552119910
59956159956
59960159960
59961159961
59962159962
59963159963
59968159968
59984159984
59988159988
59992159992
599962119992
59997159997
59999159999
60000160000
60002160002
60011160011
60014160014
60015160015
600182120036
600202120040
60022160022
60024160024
60069160069
60096160096
60098160098
60102160102
60103160103
60104160104
601112120222
60114160114
60116160116
60117160117
60124160124
60126160126
601273180381
60128160128
601292120258
60133160133
60135160135
601382120276
60149160149
60151160151
601522120304
60154160154
601562120312
601573180471
601603180480
60161160161
60164160164
60166160166
601672120334
60168160168
60171160171
601752120350
601763180528
601772120354
60178160178
60179160179
601812120362
60183160183
60185160185
60187160187
60188160188
601912120382
60194160194
60237160237
60241160241
60263160263
60268160268
602692120538
60271160271
60272160272
60284160284
60353160353
60356160356
60358160358
60447160447
604502120900
60452160452
60453160453
60460160460
60525160525
60526160526
60531160531
60532160532
60538160538
60541160541
60699160699
607002121400
60701160701
60702160702
60706160706
60758160758
607622121524
60764160764
60768160768
60769160769
60877160877
60909160909
60912160912
609133182739
60914160914
60915160915
60916160916
60919160919
60922160922
60927160927
60928160928
60931160931
60933160933
60936160936
60937160937
60942160942
60961160961
60962160962
60964160964
60967160967
609682121936
60982160982
60984160984
60987160987
60990160990
60996160996
60997160997
60999160999
61000161000
61003161003
61014161014
61078161078
61142161142
61150161150
61151161151
61152161152
61153161153
61154161154
61155161155
61183161183
61216161216
61219161219
61221161221
61226161226
61228161228
61229161229
61265161265
61268161268
61271161271
612732122546
612742122548
61276161276
61280161280
61292161292
61322161322
61346161346
61360161360
61381161381
613863184158
61391161391
61398161398
61417161417
61426161426
614562122912
61457161457
61460161460
614642122928
61476161476
615102123020
61512161512
61514161514
61517161517
61519161519
61520161520
61528161528
61529161529
61532161532
61539161539
615482123096
61580161580
61596161596
61599161599
616002123200
61601161601
61602161602
616042123208
61607161607
61608161608
61609161609
616342123268
61635161635
61636161636
61637161637
616393184917
61641161641
616423184926
61644161644
61660161660
616622123324
61666161666
616732123346
61674161674
61675161675
61679161679
61685161685
61689161689
61751161751
61753161753
61757161757
61760161760
61761161761
61764161764
61772161772
618042123608
61805161805
61807161807
61808161808
61813161813
61864161864
61919161919
619622123924
61967161967
61972161972
61974161974
619752123950
61976161976
61980161980
61998161998
62028162028
620292124058
62031162031
620352124070
62036162036
62040162040
62045162045
62050162050
62052162052
62067162067
62069162069
62070162070
62079162079
62148162148
62178162178
62207162207
622122124424
62213162213
62215162215
62217162217
62285162285
62286162286
62291162291
62293162293
62299162299
62302162302
62336162336
62343162343
62345162345
62348162348
62351162351
62355162355
62380162380
62389162389
62393162393
62394162394
62395162395
62400162400
62425162425
62430162430
624452124890
62449162449
62450162450
62451162451
62453162453
62456162456
62459162459
62462162462
62463162463
62479162479
62481162481
62482162482
62484162484
62487162487
62489162489
62490162490
62491162491
62493162493
62494162494
62496162496
62497162497
62526162526
625272125054
625292125058
625312125062
625324250128
62537162537
62565162565
625662125132
62567162567
625682125136
62603162603
626042125208
626072125214
62608162608
62613162613
62618162618
62619162619
62620162620
62624162624
62625162625
62627162627
62641162641
62683162683
62688162688
62689162689
62692162692
62694162694
62697162697
62698162698
62699162699
627003188100
62701162701
62702162702
62703162703
62707162707
62708162708
62729162729
627332125466
62737162737
62753162753
62833162833
62891162891
62944162944
62946162946
62947162947
629522125904
62979162979
62983162983
629862125972
62988162988
62989162989
63058163058
63067163067
630682126136
63069163069
63078163078
63654163654
63796163796
63912163912
64028164028
64157164157
64189164189
64257164257
64314164314
64430164430
64448164448
64466164466
64471164471
64475164475
64476164476
64477164477
64523164523
64640164640
64725164725
65104165104
65200165200
65318165318
65404165404
65497165497
6553676850331648
Total177099416403
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
29651129651
29678129678
29771129771
29896129896
29968129968
29996129996
31522131522
31547131547
31572131572
31594131594
31615131615
31628131628
32052132052
32129132129
32210132210
32298132298
32374132374
32446132446
36039136039
36045136045
36139136139
36179136179
36187136187
36269136269
36277136277
36285136285
36303136303
36317136317
36374136374
36468136468
39476139476
39573139573
39658279316
39691139691
39808139808
39993139993
40092140092
40194140194
40273140273
40364140364
40465140465
42476142476
42495284990
42559142559
42573142573
42574142574
42590142590
42594142594
42637142637
42682142682
42700142700
43685143685
43763143763
43787143787
43850143850
43877143877
43913143913
43927143927
43966143966
43967143967
43992143992
44011144011
44041144041
44354144354
44416144416
44423144423
44465144465
44489144489
44492144492
44566144566
44588144588
44646144646
44683144683
44715144715
44784144784
45884145884
45903145903
45907291814
45910145910
45915145915
45922145922
45926145926
459273137781
45950145950
45988145988
46003146003
46099146099
46189146189
46255146255
46344146344
47594147594
47721147721
47796147796
47850147850
47879147879
47969147969
47979147979
48071148071
48095148095
48171148171
48193148193
48229148229
49014149014
49113149113
49210149210
49294149294
49395149395
49461149461
49538149538
49608149608
49616149616
49686149686
49738149738
49762149762
49803299606
49842299684
49877149877
49985149985
50718150718
50737150737
50781150781
50881150881
50964150964
51053151053
52725152725
52829152829
52834152834
52861152861
52896152896
52907152907
52945152945
52960152960
529812105962
52990152990
53008153008
53027153027
53029153029
53048153048
53077153077
53090153090
53123153123
53154153154
53159153159
53197153197
53267153267
53317153317
53410153410
54720154720
54772154772
54779154779
54783154783
54881154881
54987154987
55853155853
55869155869
55887155887
55945155945
56001156001
56016156016
56527156527
56575156575
56672156672
56698156698
56745156745
56834156834
57536157536
57625157625
57715157715
57812157812
57938157938
58009158009
58743158743
58744158744
58750158750
58793158793
587952117590
58796158796
58849158849
58867158867
58952158952
58993158993
59072159072
59117159117
59187159187
59254159254
59308159308
59382159382
59414159414
61374161374
61421161421
61482161482
61551161551
61618161618
61741161741
61875161875
61989161989
62043162043
62099162099
62160162160
62204162204
64140164140
64282164282
64383164383
64397164397
64501164501
64513164513
64573164573
64591164591
64596164596
64598164598
646012129202
64619164619
64642164642
64717164717
64747164747
64831164831
64919164919
65278165278
65374165374
65488165488
65583165583
65675165675
65770165770
67032167032
67101167101
67145167145
67151167151
67238167238
67290167290
69255169255
69358169358
69454169454
69460169460
69512169512
69545169545
69562169562
69655169655
69662169662
69790169790
69925169925
70043170043
70059170059
70178170178
70234170234
70397170397
70551170551
70701170701
71112171112
71181171181
71242171242
71284171284
71364171364
71439171439
73390173390
73482173482
73518173518
73572173572
73653173653
73735173735
74767174767
74869174869
74981174981
75063175063
75142175142
75204175204
75212175212
75239175239
75334175334
75336175336
75393175393
75428175428
75460175460
75482175482
75509175509
75599175599
75740175740
75790175790
76492176492
76572176572
76685176685
76787176787
76877176877
76986176986
79119179119
79191179191
79289179289
79310179310
79330179330
79364179364
80302180302
80406180406
80423180423
80525180525
80651180651
80656180656
80706180706
80707180707
80754180754
80785180785
80799180799
80818180818
80852180852
80861180861
809022161804
80976180976
80979180979
81002181002
81014181014
81029181029
81097181097
81115181115
81156181156
83111183111
83183183183
83236183236
83306183306
83365183365
84264184264
84331184331
84419184419
84454184454
84536184536
84627184627
84816184816
84831184831
84851184851
84869184869
84888184888
84900184900
85052185052
85064185064
85087185087
85096185096
851222170244
85758185758
85893185893
86028186028
86164186164
86273186273
86405186405
86735186735
86748186748
86751186751
86763186763
86767186767
86780186780
86790186790
86861186861
86864186864
86918186918
86996186996
87019187019
87047187047
87105187105
87152187152
87174187174
87180187180
87217187217
87389187389
87415187415
87421187421
874412174882
87497187497
87612187612
87621187621
87631187631
87651187651
87668187668
87682187682
879202175840
87935187935
87947187947
87952187952
87977187977
88977188977
89118189118
89216189216
89356189356
89498189498
89634189634
90934190934
91071191071
91204191204
91338191338
91472191472
91604191604
94034194034
94179194179
94329194329
94464194464
94613194613
94755194755
96333196333
96468196468
96603196603
96734196734
96872196872
97008197008
99026199026
99165199165
99248199248
99366199366
99497199497
99638199638
1018241101824
1019501101950
1020351102035
1020641102064
1021611102161
1022841102284
1030191103019
1030661103066
1031121103112
1031741103174
1033041103304
1033721103372
1057441105744
1057571105757
1057631105763
1057641105764
1057661105766
1057901105790
1068251106825
1069601106960
1071021107102
1072341107234
1073691107369
1074991107499
1100131110013
1101441110144
1102631110263
1103881110388
1105121110512
1106331110633
1115831111583
1115881111588
1116551111655
1117571111757
1118571111857
1119631111963
1154641115464
1155791115579
1157071115707
1158311115831
1159521115952
1160111116011
1160811116081
1161081116108
1162161116216
1163221116322
1164251116425
1165181116518
1204981120498
1206001120600
1206931120693
1207951120795
1208971120897
1210011121001
1210201121020
1211421121142
1212611121261
1213851121385
1215091121509
1216341121634
1247901124790
1247933374379
1248001124800
1248011124801
1248431124843
1248442249688
1248461124846
1248471124847
1248561124856
1249711124971
1249772249954
1249783374934
1249791124979
1249841124984
1249851124985
1249871124987
1249891124989
1250661125066
1250841125084
1250851125085
1250881125088
1250892250178
1250961125096
1251641125164
1251671125167
1251681125168
1251701125170
1251721125172
1251731125173
1251771125177
1251781125178
1251871125187
1251922250384
1251932250386
1251952250390
1251961125196
1251971125197
1252031125203
1252092250418
1252111125211
1252121125212
1252142250428
1252151125215
1252161125216
1252231125223
1252261125226
1252282250456
1252291125229
1252341125234
1252452250490
1252481125248
1252491125249
1252532250506
1252541125254
1252701125270
1252772250554
1252781125278
1252802250560
1252861125286
1252991125299
1253001125300
1253021125302
1253031125303
1253201125320
1253292250658
1253621125362
1253691125369
1254052250810
1254081125408
1254132250826
1254152250830
1254162250832
1254201125420
1254302250860
1254342250868
1254354501740
1254391125439
1254401125440
1254421125442
1254461125446
1254481125448
1254491125449
1254522250904
1254541125454
1254652250930
1254691125469
1254721125472
1254771125477
1254861125486
1254881125488
1254891125489
1254901125490
1254921125492
1254931125493
1255261125526
1255271125527
1255291125529
1255332251066
1255341125534
1255351125535
1255361125536
1255441125544
1255451125545
1255501125550
1255561125556
1255581125558
1255611125561
1255731125573
1255751125575
1255771125577
1255791125579
1255831125583
1255843376752
1255852251170
1255901125590
1255961125596
1256401125640
1256561125656
1256671125667
1256761125676
1256781125678
1256791125679
1256852251370
1256861125686
1256881125688
1256902251380
1256912251382
1256951125695
1257072251414
1257081125708
1257112251422
1257131125713
1257161125716
1257171125717
1257181125718
1257201125720
1257232251446
1257242251448
1257251125725
1257271125727
1257281125728
1257291125729
1257321125732
1257341125734
1257362251472
1257391125739
1257411125741
1257422251484
1257431125743
1257481125748
1257531125753
1257541125754
1257551125755
1257561125756
1257571125757
1257582251516
1257592251518
1257602251520
1257632251526
1257643377292
1257651125765
1257661125766
1258211125821
1258261125826
1258401125840
1258411125841
1258431125843
1258481125848
1258521125852
1258541125854
1258571125857
1259332251866
1259381125938
1259921125992
1259961125996
1259981125998
1259991125999
1260011126001
1260061126006
1261051126105
1261061126106
1261101126110
1261111126111
1261131126113
1261191126119
1262752252550
1262793378837
1262801126280
1263082252616
1263091126309
1263101126310
1263141126314
1263161126316
1264211126421
1264721126472
1264761126476
1264771126477
1264801126480
1264811126481
1264821126482
1264831126483
1264842252968
1264852252970
1264862252972
1264881126488
1264951126495
1264961126496
1265001126500
1265051126505
1265071126507
1265081126508
1265122253024
1265131126513
1265341126534
1265432253086
1265461126546
1265471126547
1265481126548
1265511126551
1265521126552
1265622253124
1266411126641
1266841126684
1266902253380
1266911126691
1266921126692
1266931126693
1267191126719
1267581126758
1267601126760
1267631126763
1267671126767
1267711126771
1268071126807
1268131126813
1268141126814
1268291126829
1268362253672
1268371126837
1268391126839
1268431126843
1268621126862
1268861126886
1269191126919
1269221126922
1269241126924
1269251126925
1269291126929
1269361126936
1269561126956
1270131127013
1270183381054
1270211127021
1270242254048
1270621127062
1270651127065
1270681127068
1270732254146
1270752254150
1270801127080
1270821127082
1270831127083
1270901127090
1270991127099
1271281127128
1271441127144
1271491127149
1271522254304
1271542254308
1271553381465
1271561127156
1271571127157
1271731127173
1271772254354
1271801127180
1271821127182
1271831127183
1271851127185
1271921127192
1271931127193
1271941127194
1271951127195
1271961127196
1272011127201
1272041127204
1272062254412
1272101127210
1272161127216
1272171127217
1272191127219
1272221127222
1272251127225
1272281127228
1272321127232
1272921127292
1272951127295
1272991127299
1273001127300
1273021127302
1273111127311
1273421127342
1273431127343
1273451127345
1273461127346
1273471127347
1273531127353
1275072255014
1275121127512
1275171127517
1275191127519
1275212255042
1275251127525
1275431127543
1275681127568
1275721127572
1275742255148
1275792255158
1275841127584
1275851127585
1275901127590
1275921127592
1276072255214
1276111127611
1276891127689
1277191127719
1277431127743
1277481127748
1277491127749
1277502255500
1277511127751
1278212255642
1278281127828
1278301127830
1278371127837
1278401127840
1278721127872
1278791127879
1278811127881
1278841127884
1278871127887
1278921127892
1279171127917
1279241127924
1279281127928
1279291127929
1279311127931
1279361127936
1279581127958
1279631127963
1279791127979
1279801127980
1279841127984
1279861127986
1279871127987
1279881127988
1279931127993
1279961127996
1280002256000
1280121128012
1280161128016
1280171128017
1280192256038
1280211128021
1280221128022
1280233384069
1280241128024
1280261128026
1280591128059
1280622256124
1280631128063
1280643384192
1280651128065
1280661128066
1280672256134
1280701128070
1281014512404
1281021128102
1281031128103
1281382256276
1281402256280
1281421128142
1281441128144
1281481128148
1281521128152
1281531128153
1281541128154
1281591128159
1281621128162
1281631128163
1281771128177
1282181128218
1282241128224
1282251128225
1282271128227
1282302256460
1282323384696
1282332256466
1282351128235
1282371128237
1282381128238
1282391128239
1282401128240
1282651128265
1282692256538
1282731128273
1282901128290
1283681128368
1284261128426
1284771128477
1284781128478
1284791128479
1284842256968
1285151128515
1285191128519
1285232257046
1285251128525
1285261128526
1285901128590
1285991128599
1286002257200
1286011128601
1286101128610
Total100299528841
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333833266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882c977cdadca9f
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6339373763646164
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_5_10.json b/autobahn/client/tungstenite_case_12_5_10.json new file mode 100644 index 0000000..f29ff06 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_10.json @@ -0,0 +1,1931 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 383, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 9620, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=383&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ly7NCMJ+yuFQ41LerrpXBQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 0MJfpbd+ptRGVuV1JqD29XBzZv4=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.5.10", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "58": 1, + "257": 1, + "1374": 1, + "1443": 1, + "1493": 2, + "1587": 1, + "1633": 1, + "3457": 1, + "3542": 1, + "3591": 1, + "3654": 1, + "3693": 1, + "3791": 1, + "3792": 1, + "3851": 1, + "3901": 1, + "3925": 1, + "4006": 1, + "4061": 1, + "4349": 1, + "4480": 1, + "4542": 1, + "4697": 1, + "4854": 1, + "5002": 1, + "5466": 1, + "5535": 1, + "5596": 1, + "5638": 1, + "5718": 1, + "5793": 1, + "7756": 1, + "7851": 1, + "7884": 1, + "7938": 1, + "8017": 1, + "8104": 1, + "8791": 1, + "8898": 1, + "9008": 1, + "9091": 1, + "9169": 1, + "9274": 1, + "9495": 1, + "9571": 1, + "9626": 1, + "9694": 1, + "9753": 1, + "9755": 1, + "9788": 1, + "9832": 1, + "9867": 1, + "9892": 1, + "10029": 1, + "10074": 1, + "10889": 1, + "10965": 1, + "11080": 1, + "11184": 1, + "11271": 1, + "11385": 1, + "13478": 1, + "13553": 1, + "13647": 1, + "13671": 1, + "13686": 1, + "13720": 1, + "14369": 1, + "14472": 1, + "14487": 1, + "14592": 1, + "14722": 1, + "14852": 1, + "15078": 1, + "15095": 1, + "15100": 1, + "15135": 1, + "15144": 1, + "15161": 1, + "15242": 1, + "15245": 1, + "15277": 1, + "15294": 1, + "15326": 1, + "15331": 1, + "15370": 1, + "15394": 1, + "15410": 1, + "15430": 1, + "15458": 1, + "15537": 1, + "17549": 1, + "17626": 1, + "17682": 1, + "17748": 1, + "17809": 1, + "18694": 1, + "18761": 1, + "18853": 1, + "18892": 1, + "18978": 1, + "19072": 1, + "19123": 1, + "19139": 1, + "19161": 1, + "19176": 1, + "19195": 1, + "19208": 1, + "19512": 1, + "19524": 1, + "19546": 1, + "19556": 1, + "19581": 1, + "19582": 1, + "19855": 1, + "19991": 1, + "20124": 1, + "20259": 1, + "20378": 1, + "20510": 1, + "21201": 1, + "21218": 1, + "21219": 1, + "21229": 1, + "21232": 1, + "21249": 1, + "21251": 1, + "21324": 1, + "21326": 1, + "21380": 1, + "21460": 1, + "21484": 1, + "21515": 1, + "21574": 1, + "21617": 1, + "21640": 1, + "21646": 1, + "21685": 1, + "21847": 1, + "21874": 1, + "21881": 1, + "21901": 1, + "21902": 1, + "21957": 1, + "22075": 1, + "22084": 1, + "22098": 1, + "22115": 1, + "22130": 1, + "22146": 1, + "22378": 1, + "22380": 1, + "22394": 1, + "22407": 1, + "22411": 1, + "22435": 1, + "23284": 1, + "23421": 1, + "23517": 1, + "23657": 1, + "23795": 1, + "23927": 1, + "25057": 1, + "25198": 1, + "25327": 1, + "25463": 1, + "25595": 1, + "25735": 1, + "28352": 1, + "28497": 1, + "28648": 1, + "28782": 1, + "28929": 1, + "29069": 1, + "29371": 1, + "29403": 1, + "29493": 1, + "29622": 1, + "29694": 1, + "29716": 1, + "30478": 1, + "30614": 1, + "30748": 1, + "30880": 1, + "31016": 1, + "31153": 1, + "31248": 1, + "31277": 1, + "31299": 1, + "31318": 1, + "31341": 1, + "31353": 1, + "31782": 1, + "31861": 1, + "31949": 1, + "32037": 1, + "32113": 1, + "32185": 1, + "33347": 1, + "33490": 1, + "33564": 1, + "33682": 1, + "33815": 1, + "33956": 1, + "35764": 1, + "35800": 1, + "35890": 1, + "35896": 1, + "35947": 1, + "35990": 2, + "36007": 1, + "36016": 1, + "36028": 1, + "36043": 1, + "36134": 1, + "36136": 1, + "36216": 1, + "36229": 1, + "36245": 1, + "36344": 1, + "36470": 1, + "37365": 1, + "37404": 1, + "37449": 1, + "37502": 1, + "37635": 1, + "37703": 1, + "39215": 1, + "39314": 1, + "39390": 2, + "39420": 1, + "39552": 1, + "39769": 1, + "39879": 1, + "39980": 1, + "40060": 1, + "40097": 1, + "40112": 1, + "40116": 2, + "40120": 1, + "40143": 1, + "40152": 1, + "40252": 1, + "41037": 1, + "41168": 1, + "41303": 1, + "41439": 1, + "41575": 1, + "41703": 1, + "41977": 1, + "42074": 1, + "42139": 1, + "42195": 1, + "42205": 1, + "42300": 1, + "42301": 1, + "42364": 1, + "42379": 1, + "42396": 1, + "42400": 1, + "43461": 1, + "43541": 1, + "43598": 1, + "43655": 1, + "43658": 1, + "43726": 1, + "43739": 1, + "43748": 1, + "43778": 1, + "43780": 1, + "43791": 1, + "43856": 1, + "43913": 1, + "43917": 1, + "43964": 1, + "43991": 2, + "44054": 1, + "44087": 1, + "44131": 1, + "44182": 1, + "44212": 1, + "44279": 1, + "44282": 1, + "44399": 1, + "44526": 1, + "44641": 1, + "44767": 1, + "44893": 1, + "45021": 1, + "45395": 1, + "45399": 1, + "45402": 1, + "45413": 1, + "45417": 1, + "45425": 1, + "45507": 1, + "45515": 1, + "45524": 1, + "45525": 1, + "45554": 1, + "45605": 1, + "45722": 1, + "45832": 1, + "45841": 1, + "45847": 1, + "45919": 1, + "45941": 1, + "46018": 1, + "46034": 1, + "46094": 1, + "46122": 1, + "46185": 1, + "46229": 1, + "47283": 1, + "47366": 1, + "47401": 1, + "47457": 1, + "47522": 1, + "47559": 1, + "47650": 1, + "47659": 1, + "47714": 1, + "47779": 1, + "47892": 1, + "47993": 1, + "48857": 1, + "48955": 1, + "49046": 1, + "49053": 1, + "49117": 2, + "49137": 1, + "49186": 1, + "49238": 2, + "49254": 1, + "49304": 1, + "49483": 1, + "49486": 1, + "49526": 1, + "49529": 1, + "49562": 1, + "49675": 1, + "49864": 1, + "49979": 1, + "50107": 1, + "50214": 1, + "50232": 1, + "50245": 1, + "50274": 1, + "50338": 1, + "50354": 1, + "50377": 1, + "50438": 1, + "50466": 1, + "50480": 1, + "50545": 1, + "50555": 1, + "50645": 1, + "50754": 1, + "50853": 1, + "52398": 1, + "52463": 1, + "52493": 1, + "52503": 1, + "52523": 1, + "52547": 1, + "52559": 1, + "52574": 1, + "52633": 1, + "52681": 1, + "52683": 1, + "52708": 1, + "52752": 1, + "52799": 1, + "52801": 1, + "52817": 1, + "52887": 1, + "52903": 1, + "52943": 1, + "53008": 1, + "53051": 1, + "53086": 1, + "53169": 1, + "53230": 1, + "54217": 1, + "54254": 1, + "54258": 1, + "54266": 1, + "54363": 1, + "54468": 1, + "54877": 1, + "54984": 1, + "55085": 1, + "55186": 1, + "55287": 1, + "55392": 1, + "55441": 1, + "55564": 1, + "55685": 1, + "55713": 1, + "55726": 1, + "55746": 1, + "55805": 1, + "55816": 1, + "55858": 1, + "55871": 1, + "55938": 1, + "56062": 1, + "56278": 1, + "56327": 1, + "56425": 1, + "56450": 1, + "56501": 1, + "56591": 1, + "57403": 1, + "57495": 1, + "57585": 1, + "57677": 1, + "57808": 1, + "57879": 1, + "58349": 1, + "58449": 1, + "58534": 1, + "58536": 1, + "58564": 1, + "58573": 1, + "58579": 2, + "58580": 2, + "58687": 1, + "58691": 1, + "58813": 2, + "58921": 1, + "58930": 1, + "59067": 1, + "59199": 1, + "59231": 1, + "59232": 1, + "59235": 2, + "59241": 1, + "59243": 1, + "59285": 2, + "59286": 1, + "59288": 1, + "59289": 1, + "59297": 1, + "59387": 1, + "59392": 1, + "59394": 2, + "59395": 1, + "59396": 2, + "59399": 1, + "59401": 1, + "59402": 2, + "59483": 1, + "59517": 2, + "59521": 1, + "59522": 2, + "59523": 1, + "59587": 1, + "59609": 1, + "59610": 1, + "59612": 1, + "59614": 2, + "59616": 1, + "59622": 2, + "59625": 1, + "59626": 2, + "59627": 2, + "59628": 1, + "59630": 1, + "59631": 3, + "59632": 2, + "59633": 1, + "59635": 1, + "59639": 1, + "59640": 1, + "59649": 1, + "59653": 1, + "59654": 1, + "59657": 3, + "59663": 1, + "59664": 1, + "59669": 1, + "59673": 1, + "59676": 1, + "59677": 1, + "59679": 1, + "59689": 1, + "59705": 1, + "59715": 1, + "59717": 1, + "59720": 1, + "59721": 1, + "59723": 2, + "59727": 1, + "59728": 1, + "59729": 1, + "59730": 1, + "59752": 1, + "59761": 1, + "59763": 1, + "59790": 1, + "59792": 1, + "59834": 1, + "59836": 1, + "59838": 1, + "59846": 2, + "59847": 1, + "59850": 1, + "59851": 1, + "59853": 2, + "59854": 1, + "59856": 1, + "59859": 2, + "59860": 1, + "59867": 1, + "59869": 1, + "59878": 1, + "59879": 1, + "59884": 1, + "59885": 1, + "59886": 1, + "59887": 1, + "59888": 2, + "59890": 1, + "59891": 1, + "59894": 1, + "59895": 1, + "59896": 1, + "59899": 1, + "59901": 1, + "59912": 1, + "59914": 1, + "59915": 1, + "59916": 2, + "59918": 1, + "59955": 2, + "59956": 1, + "59960": 1, + "59961": 1, + "59962": 1, + "59963": 1, + "59968": 1, + "59984": 1, + "59988": 1, + "59992": 1, + "59996": 2, + "59997": 1, + "59999": 1, + "60000": 1, + "60002": 1, + "60011": 1, + "60014": 1, + "60015": 1, + "60018": 2, + "60020": 2, + "60022": 1, + "60024": 1, + "60069": 1, + "60096": 1, + "60098": 1, + "60102": 1, + "60103": 1, + "60104": 1, + "60111": 2, + "60114": 1, + "60116": 1, + "60117": 1, + "60124": 1, + "60126": 1, + "60127": 3, + "60128": 1, + "60129": 2, + "60133": 1, + "60135": 1, + "60138": 2, + "60149": 1, + "60151": 1, + "60152": 2, + "60154": 1, + "60156": 2, + "60157": 3, + "60160": 3, + "60161": 1, + "60164": 1, + "60166": 1, + "60167": 2, + "60168": 1, + "60171": 1, + "60175": 2, + "60176": 3, + "60177": 2, + "60178": 1, + "60179": 1, + "60181": 2, + "60183": 1, + "60185": 1, + "60187": 1, + "60188": 1, + "60191": 2, + "60194": 1, + "60237": 1, + "60241": 1, + "60263": 1, + "60268": 1, + "60269": 2, + "60271": 1, + "60272": 1, + "60284": 1, + "60353": 1, + "60356": 1, + "60358": 1, + "60447": 1, + "60450": 2, + "60452": 1, + "60453": 1, + "60460": 1, + "60525": 1, + "60526": 1, + "60531": 1, + "60532": 1, + "60538": 1, + "60541": 1, + "60699": 1, + "60700": 2, + "60701": 1, + "60702": 1, + "60706": 1, + "60758": 1, + "60762": 2, + "60764": 1, + "60768": 1, + "60769": 1, + "60877": 1, + "60909": 1, + "60912": 1, + "60913": 3, + "60914": 1, + "60915": 1, + "60916": 1, + "60919": 1, + "60922": 1, + "60927": 1, + "60928": 1, + "60931": 1, + "60933": 1, + "60936": 1, + "60937": 1, + "60942": 1, + "60961": 1, + "60962": 1, + "60964": 1, + "60967": 1, + "60968": 2, + "60982": 1, + "60984": 1, + "60987": 1, + "60990": 1, + "60996": 1, + "60997": 1, + "60999": 1, + "61000": 1, + "61003": 1, + "61014": 1, + "61078": 1, + "61142": 1, + "61150": 1, + "61151": 1, + "61152": 1, + "61153": 1, + "61154": 1, + "61155": 1, + "61183": 1, + "61216": 1, + "61219": 1, + "61221": 1, + "61226": 1, + "61228": 1, + "61229": 1, + "61265": 1, + "61268": 1, + "61271": 1, + "61273": 2, + "61274": 2, + "61276": 1, + "61280": 1, + "61292": 1, + "61322": 1, + "61346": 1, + "61360": 1, + "61381": 1, + "61386": 3, + "61391": 1, + "61398": 1, + "61417": 1, + "61426": 1, + "61456": 2, + "61457": 1, + "61460": 1, + "61464": 2, + "61476": 1, + "61510": 2, + "61512": 1, + "61514": 1, + "61517": 1, + "61519": 1, + "61520": 1, + "61528": 1, + "61529": 1, + "61532": 1, + "61539": 1, + "61548": 2, + "61580": 1, + "61596": 1, + "61599": 1, + "61600": 2, + "61601": 1, + "61602": 1, + "61604": 2, + "61607": 1, + "61608": 1, + "61609": 1, + "61634": 2, + "61635": 1, + "61636": 1, + "61637": 1, + "61639": 3, + "61641": 1, + "61642": 3, + "61644": 1, + "61660": 1, + "61662": 2, + "61666": 1, + "61673": 2, + "61674": 1, + "61675": 1, + "61679": 1, + "61685": 1, + "61689": 1, + "61751": 1, + "61753": 1, + "61757": 1, + "61760": 1, + "61761": 1, + "61764": 1, + "61772": 1, + "61804": 2, + "61805": 1, + "61807": 1, + "61808": 1, + "61813": 1, + "61864": 1, + "61919": 1, + "61962": 2, + "61967": 1, + "61972": 1, + "61974": 1, + "61975": 2, + "61976": 1, + "61980": 1, + "61998": 1, + "62028": 1, + "62029": 2, + "62031": 1, + "62035": 2, + "62036": 1, + "62040": 1, + "62045": 1, + "62050": 1, + "62052": 1, + "62067": 1, + "62069": 1, + "62070": 1, + "62079": 1, + "62148": 1, + "62178": 1, + "62207": 1, + "62212": 2, + "62213": 1, + "62215": 1, + "62217": 1, + "62285": 1, + "62286": 1, + "62291": 1, + "62293": 1, + "62299": 1, + "62302": 1, + "62336": 1, + "62343": 1, + "62345": 1, + "62348": 1, + "62351": 1, + "62355": 1, + "62380": 1, + "62389": 1, + "62393": 1, + "62394": 1, + "62395": 1, + "62400": 1, + "62425": 1, + "62430": 1, + "62445": 2, + "62449": 1, + "62450": 1, + "62451": 1, + "62453": 1, + "62456": 1, + "62459": 1, + "62462": 1, + "62463": 1, + "62479": 1, + "62481": 1, + "62482": 1, + "62484": 1, + "62487": 1, + "62489": 1, + "62490": 1, + "62491": 1, + "62493": 1, + "62494": 1, + "62496": 1, + "62497": 1, + "62526": 1, + "62527": 2, + "62529": 2, + "62531": 2, + "62532": 4, + "62537": 1, + "62565": 1, + "62566": 2, + "62567": 1, + "62568": 2, + "62603": 1, + "62604": 2, + "62607": 2, + "62608": 1, + "62613": 1, + "62618": 1, + "62619": 1, + "62620": 1, + "62624": 1, + "62625": 1, + "62627": 1, + "62641": 1, + "62683": 1, + "62688": 1, + "62689": 1, + "62692": 1, + "62694": 1, + "62697": 1, + "62698": 1, + "62699": 1, + "62700": 3, + "62701": 1, + "62702": 1, + "62703": 1, + "62707": 1, + "62708": 1, + "62729": 1, + "62733": 2, + "62737": 1, + "62753": 1, + "62833": 1, + "62891": 1, + "62944": 1, + "62946": 1, + "62947": 1, + "62952": 2, + "62979": 1, + "62983": 1, + "62986": 2, + "62988": 1, + "62989": 1, + "63058": 1, + "63067": 1, + "63068": 2, + "63069": 1, + "63078": 1, + "63654": 1, + "63796": 1, + "63912": 1, + "64028": 1, + "64157": 1, + "64189": 1, + "64257": 1, + "64314": 1, + "64430": 1, + "64448": 1, + "64466": 1, + "64471": 1, + "64475": 1, + "64476": 1, + "64477": 1, + "64523": 1, + "64640": 1, + "64725": 1, + "65104": 1, + "65200": 1, + "65318": 1, + "65404": 1, + "65497": 1, + "65536": 768 + }, + "started": "2020-09-07T18:50:46.017Z", + "trafficStats": { + "incomingCompressionRatio": 0.7583887481689453, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 99403530, + "incomingOctetsWireLevel": 99416138, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.00012683654192159976, + "outgoingCompressionRatio": 0.7592770767211914, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 99519965, + "outgoingOctetsWireLevel": 99528585, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 8.661578608875114e-05, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "29651": 1, + "29678": 1, + "29771": 1, + "29896": 1, + "29968": 1, + "29996": 1, + "31522": 1, + "31547": 1, + "31572": 1, + "31594": 1, + "31615": 1, + "31628": 1, + "32052": 1, + "32129": 1, + "32210": 1, + "32298": 1, + "32374": 1, + "32446": 1, + "36039": 1, + "36045": 1, + "36139": 1, + "36179": 1, + "36187": 1, + "36269": 1, + "36277": 1, + "36285": 1, + "36303": 1, + "36317": 1, + "36374": 1, + "36468": 1, + "39476": 1, + "39573": 1, + "39658": 2, + "39691": 1, + "39808": 1, + "39993": 1, + "40092": 1, + "40194": 1, + "40273": 1, + "40364": 1, + "40465": 1, + "42476": 1, + "42495": 2, + "42559": 1, + "42573": 1, + "42574": 1, + "42590": 1, + "42594": 1, + "42637": 1, + "42682": 1, + "42700": 1, + "43685": 1, + "43763": 1, + "43787": 1, + "43850": 1, + "43877": 1, + "43913": 1, + "43927": 1, + "43966": 1, + "43967": 1, + "43992": 1, + "44011": 1, + "44041": 1, + "44354": 1, + "44416": 1, + "44423": 1, + "44465": 1, + "44489": 1, + "44492": 1, + "44566": 1, + "44588": 1, + "44646": 1, + "44683": 1, + "44715": 1, + "44784": 1, + "45884": 1, + "45903": 1, + "45907": 2, + "45910": 1, + "45915": 1, + "45922": 1, + "45926": 1, + "45927": 3, + "45950": 1, + "45988": 1, + "46003": 1, + "46099": 1, + "46189": 1, + "46255": 1, + "46344": 1, + "47594": 1, + "47721": 1, + "47796": 1, + "47850": 1, + "47879": 1, + "47969": 1, + "47979": 1, + "48071": 1, + "48095": 1, + "48171": 1, + "48193": 1, + "48229": 1, + "49014": 1, + "49113": 1, + "49210": 1, + "49294": 1, + "49395": 1, + "49461": 1, + "49538": 1, + "49608": 1, + "49616": 1, + "49686": 1, + "49738": 1, + "49762": 1, + "49803": 2, + "49842": 2, + "49877": 1, + "49985": 1, + "50718": 1, + "50737": 1, + "50781": 1, + "50881": 1, + "50964": 1, + "51053": 1, + "52725": 1, + "52829": 1, + "52834": 1, + "52861": 1, + "52896": 1, + "52907": 1, + "52945": 1, + "52960": 1, + "52981": 2, + "52990": 1, + "53008": 1, + "53027": 1, + "53029": 1, + "53048": 1, + "53077": 1, + "53090": 1, + "53123": 1, + "53154": 1, + "53159": 1, + "53197": 1, + "53267": 1, + "53317": 1, + "53410": 1, + "54720": 1, + "54772": 1, + "54779": 1, + "54783": 1, + "54881": 1, + "54987": 1, + "55853": 1, + "55869": 1, + "55887": 1, + "55945": 1, + "56001": 1, + "56016": 1, + "56527": 1, + "56575": 1, + "56672": 1, + "56698": 1, + "56745": 1, + "56834": 1, + "57536": 1, + "57625": 1, + "57715": 1, + "57812": 1, + "57938": 1, + "58009": 1, + "58743": 1, + "58744": 1, + "58750": 1, + "58793": 1, + "58795": 2, + "58796": 1, + "58849": 1, + "58867": 1, + "58952": 1, + "58993": 1, + "59072": 1, + "59117": 1, + "59187": 1, + "59254": 1, + "59308": 1, + "59382": 1, + "59414": 1, + "61374": 1, + "61421": 1, + "61482": 1, + "61551": 1, + "61618": 1, + "61741": 1, + "61875": 1, + "61989": 1, + "62043": 1, + "62099": 1, + "62160": 1, + "62204": 1, + "64140": 1, + "64282": 1, + "64383": 1, + "64397": 1, + "64501": 1, + "64513": 1, + "64573": 1, + "64591": 1, + "64596": 1, + "64598": 1, + "64601": 2, + "64619": 1, + "64642": 1, + "64717": 1, + "64747": 1, + "64831": 1, + "64919": 1, + "65278": 1, + "65374": 1, + "65488": 1, + "65583": 1, + "65675": 1, + "65770": 1, + "67032": 1, + "67101": 1, + "67145": 1, + "67151": 1, + "67238": 1, + "67290": 1, + "69255": 1, + "69358": 1, + "69454": 1, + "69460": 1, + "69512": 1, + "69545": 1, + "69562": 1, + "69655": 1, + "69662": 1, + "69790": 1, + "69925": 1, + "70043": 1, + "70059": 1, + "70178": 1, + "70234": 1, + "70397": 1, + "70551": 1, + "70701": 1, + "71112": 1, + "71181": 1, + "71242": 1, + "71284": 1, + "71364": 1, + "71439": 1, + "73390": 1, + "73482": 1, + "73518": 1, + "73572": 1, + "73653": 1, + "73735": 1, + "74767": 1, + "74869": 1, + "74981": 1, + "75063": 1, + "75142": 1, + "75204": 1, + "75212": 1, + "75239": 1, + "75334": 1, + "75336": 1, + "75393": 1, + "75428": 1, + "75460": 1, + "75482": 1, + "75509": 1, + "75599": 1, + "75740": 1, + "75790": 1, + "76492": 1, + "76572": 1, + "76685": 1, + "76787": 1, + "76877": 1, + "76986": 1, + "79119": 1, + "79191": 1, + "79289": 1, + "79310": 1, + "79330": 1, + "79364": 1, + "80302": 1, + "80406": 1, + "80423": 1, + "80525": 1, + "80651": 1, + "80656": 1, + "80706": 1, + "80707": 1, + "80754": 1, + "80785": 1, + "80799": 1, + "80818": 1, + "80852": 1, + "80861": 1, + "80902": 2, + "80976": 1, + "80979": 1, + "81002": 1, + "81014": 1, + "81029": 1, + "81097": 1, + "81115": 1, + "81156": 1, + "83111": 1, + "83183": 1, + "83236": 1, + "83306": 1, + "83365": 1, + "84264": 1, + "84331": 1, + "84419": 1, + "84454": 1, + "84536": 1, + "84627": 1, + "84816": 1, + "84831": 1, + "84851": 1, + "84869": 1, + "84888": 1, + "84900": 1, + "85052": 1, + "85064": 1, + "85087": 1, + "85096": 1, + "85122": 2, + "85758": 1, + "85893": 1, + "86028": 1, + "86164": 1, + "86273": 1, + "86405": 1, + "86735": 1, + "86748": 1, + "86751": 1, + "86763": 1, + "86767": 1, + "86780": 1, + "86790": 1, + "86861": 1, + "86864": 1, + "86918": 1, + "86996": 1, + "87019": 1, + "87047": 1, + "87105": 1, + "87152": 1, + "87174": 1, + "87180": 1, + "87217": 1, + "87389": 1, + "87415": 1, + "87421": 1, + "87441": 2, + "87497": 1, + "87612": 1, + "87621": 1, + "87631": 1, + "87651": 1, + "87668": 1, + "87682": 1, + "87920": 2, + "87935": 1, + "87947": 1, + "87952": 1, + "87977": 1, + "88977": 1, + "89118": 1, + "89216": 1, + "89356": 1, + "89498": 1, + "89634": 1, + "90934": 1, + "91071": 1, + "91204": 1, + "91338": 1, + "91472": 1, + "91604": 1, + "94034": 1, + "94179": 1, + "94329": 1, + "94464": 1, + "94613": 1, + "94755": 1, + "96333": 1, + "96468": 1, + "96603": 1, + "96734": 1, + "96872": 1, + "97008": 1, + "99026": 1, + "99165": 1, + "99248": 1, + "99366": 1, + "99497": 1, + "99638": 1, + "101824": 1, + "101950": 1, + "102035": 1, + "102064": 1, + "102161": 1, + "102284": 1, + "103019": 1, + "103066": 1, + "103112": 1, + "103174": 1, + "103304": 1, + "103372": 1, + "105744": 1, + "105757": 1, + "105763": 1, + "105764": 1, + "105766": 1, + "105790": 1, + "106825": 1, + "106960": 1, + "107102": 1, + "107234": 1, + "107369": 1, + "107499": 1, + "110013": 1, + "110144": 1, + "110263": 1, + "110388": 1, + "110512": 1, + "110633": 1, + "111583": 1, + "111588": 1, + "111655": 1, + "111757": 1, + "111857": 1, + "111963": 1, + "115464": 1, + "115579": 1, + "115707": 1, + "115831": 1, + "115952": 1, + "116011": 1, + "116081": 1, + "116108": 1, + "116216": 1, + "116322": 1, + "116425": 1, + "116518": 1, + "120498": 1, + "120600": 1, + "120693": 1, + "120795": 1, + "120897": 1, + "121001": 1, + "121020": 1, + "121142": 1, + "121261": 1, + "121385": 1, + "121509": 1, + "121634": 1, + "124790": 1, + "124793": 3, + "124800": 1, + "124801": 1, + "124843": 1, + "124844": 2, + "124846": 1, + "124847": 1, + "124856": 1, + "124971": 1, + "124977": 2, + "124978": 3, + "124979": 1, + "124984": 1, + "124985": 1, + "124987": 1, + "124989": 1, + "125066": 1, + "125084": 1, + "125085": 1, + "125088": 1, + "125089": 2, + "125096": 1, + "125164": 1, + "125167": 1, + "125168": 1, + "125170": 1, + "125172": 1, + "125173": 1, + "125177": 1, + "125178": 1, + "125187": 1, + "125192": 2, + "125193": 2, + "125195": 2, + "125196": 1, + "125197": 1, + "125203": 1, + "125209": 2, + "125211": 1, + "125212": 1, + "125214": 2, + "125215": 1, + "125216": 1, + "125223": 1, + "125226": 1, + "125228": 2, + "125229": 1, + "125234": 1, + "125245": 2, + "125248": 1, + "125249": 1, + "125253": 2, + "125254": 1, + "125270": 1, + "125277": 2, + "125278": 1, + "125280": 2, + "125286": 1, + "125299": 1, + "125300": 1, + "125302": 1, + "125303": 1, + "125320": 1, + "125329": 2, + "125362": 1, + "125369": 1, + "125405": 2, + "125408": 1, + "125413": 2, + "125415": 2, + "125416": 2, + "125420": 1, + "125430": 2, + "125434": 2, + "125435": 4, + "125439": 1, + "125440": 1, + "125442": 1, + "125446": 1, + "125448": 1, + "125449": 1, + "125452": 2, + "125454": 1, + "125465": 2, + "125469": 1, + "125472": 1, + "125477": 1, + "125486": 1, + "125488": 1, + "125489": 1, + "125490": 1, + "125492": 1, + "125493": 1, + "125526": 1, + "125527": 1, + "125529": 1, + "125533": 2, + "125534": 1, + "125535": 1, + "125536": 1, + "125544": 1, + "125545": 1, + "125550": 1, + "125556": 1, + "125558": 1, + "125561": 1, + "125573": 1, + "125575": 1, + "125577": 1, + "125579": 1, + "125583": 1, + "125584": 3, + "125585": 2, + "125590": 1, + "125596": 1, + "125640": 1, + "125656": 1, + "125667": 1, + "125676": 1, + "125678": 1, + "125679": 1, + "125685": 2, + "125686": 1, + "125688": 1, + "125690": 2, + "125691": 2, + "125695": 1, + "125707": 2, + "125708": 1, + "125711": 2, + "125713": 1, + "125716": 1, + "125717": 1, + "125718": 1, + "125720": 1, + "125723": 2, + "125724": 2, + "125725": 1, + "125727": 1, + "125728": 1, + "125729": 1, + "125732": 1, + "125734": 1, + "125736": 2, + "125739": 1, + "125741": 1, + "125742": 2, + "125743": 1, + "125748": 1, + "125753": 1, + "125754": 1, + "125755": 1, + "125756": 1, + "125757": 1, + "125758": 2, + "125759": 2, + "125760": 2, + "125763": 2, + "125764": 3, + "125765": 1, + "125766": 1, + "125821": 1, + "125826": 1, + "125840": 1, + "125841": 1, + "125843": 1, + "125848": 1, + "125852": 1, + "125854": 1, + "125857": 1, + "125933": 2, + "125938": 1, + "125992": 1, + "125996": 1, + "125998": 1, + "125999": 1, + "126001": 1, + "126006": 1, + "126105": 1, + "126106": 1, + "126110": 1, + "126111": 1, + "126113": 1, + "126119": 1, + "126275": 2, + "126279": 3, + "126280": 1, + "126308": 2, + "126309": 1, + "126310": 1, + "126314": 1, + "126316": 1, + "126421": 1, + "126472": 1, + "126476": 1, + "126477": 1, + "126480": 1, + "126481": 1, + "126482": 1, + "126483": 1, + "126484": 2, + "126485": 2, + "126486": 2, + "126488": 1, + "126495": 1, + "126496": 1, + "126500": 1, + "126505": 1, + "126507": 1, + "126508": 1, + "126512": 2, + "126513": 1, + "126534": 1, + "126543": 2, + "126546": 1, + "126547": 1, + "126548": 1, + "126551": 1, + "126552": 1, + "126562": 2, + "126641": 1, + "126684": 1, + "126690": 2, + "126691": 1, + "126692": 1, + "126693": 1, + "126719": 1, + "126758": 1, + "126760": 1, + "126763": 1, + "126767": 1, + "126771": 1, + "126807": 1, + "126813": 1, + "126814": 1, + "126829": 1, + "126836": 2, + "126837": 1, + "126839": 1, + "126843": 1, + "126862": 1, + "126886": 1, + "126919": 1, + "126922": 1, + "126924": 1, + "126925": 1, + "126929": 1, + "126936": 1, + "126956": 1, + "127013": 1, + "127018": 3, + "127021": 1, + "127024": 2, + "127062": 1, + "127065": 1, + "127068": 1, + "127073": 2, + "127075": 2, + "127080": 1, + "127082": 1, + "127083": 1, + "127090": 1, + "127099": 1, + "127128": 1, + "127144": 1, + "127149": 1, + "127152": 2, + "127154": 2, + "127155": 3, + "127156": 1, + "127157": 1, + "127173": 1, + "127177": 2, + "127180": 1, + "127182": 1, + "127183": 1, + "127185": 1, + "127192": 1, + "127193": 1, + "127194": 1, + "127195": 1, + "127196": 1, + "127201": 1, + "127204": 1, + "127206": 2, + "127210": 1, + "127216": 1, + "127217": 1, + "127219": 1, + "127222": 1, + "127225": 1, + "127228": 1, + "127232": 1, + "127292": 1, + "127295": 1, + "127299": 1, + "127300": 1, + "127302": 1, + "127311": 1, + "127342": 1, + "127343": 1, + "127345": 1, + "127346": 1, + "127347": 1, + "127353": 1, + "127507": 2, + "127512": 1, + "127517": 1, + "127519": 1, + "127521": 2, + "127525": 1, + "127543": 1, + "127568": 1, + "127572": 1, + "127574": 2, + "127579": 2, + "127584": 1, + "127585": 1, + "127590": 1, + "127592": 1, + "127607": 2, + "127611": 1, + "127689": 1, + "127719": 1, + "127743": 1, + "127748": 1, + "127749": 1, + "127750": 2, + "127751": 1, + "127821": 2, + "127828": 1, + "127830": 1, + "127837": 1, + "127840": 1, + "127872": 1, + "127879": 1, + "127881": 1, + "127884": 1, + "127887": 1, + "127892": 1, + "127917": 1, + "127924": 1, + "127928": 1, + "127929": 1, + "127931": 1, + "127936": 1, + "127958": 1, + "127963": 1, + "127979": 1, + "127980": 1, + "127984": 1, + "127986": 1, + "127987": 1, + "127988": 1, + "127993": 1, + "127996": 1, + "128000": 2, + "128012": 1, + "128016": 1, + "128017": 1, + "128019": 2, + "128021": 1, + "128022": 1, + "128023": 3, + "128024": 1, + "128026": 1, + "128059": 1, + "128062": 2, + "128063": 1, + "128064": 3, + "128065": 1, + "128066": 1, + "128067": 2, + "128070": 1, + "128101": 4, + "128102": 1, + "128103": 1, + "128138": 2, + "128140": 2, + "128142": 1, + "128144": 1, + "128148": 1, + "128152": 1, + "128153": 1, + "128154": 1, + "128159": 1, + "128162": 1, + "128163": 1, + "128177": 1, + "128218": 1, + "128224": 1, + "128225": 1, + "128227": 1, + "128230": 2, + "128232": 3, + "128233": 2, + "128235": 1, + "128237": 1, + "128238": 1, + "128239": 1, + "128240": 1, + "128265": 1, + "128269": 2, + "128273": 1, + "128290": 1, + "128368": 1, + "128426": 1, + "128477": 1, + "128478": 1, + "128479": 1, + "128484": 2, + "128515": 1, + "128519": 1, + "128523": 2, + "128525": 1, + "128526": 1, + "128590": 1, + "128599": 1, + "128600": 2, + "128601": 1, + "128610": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333833266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882c977cdadca9f" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "c977cdad" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_5_11.html b/autobahn/client/tungstenite_case_12_5_11.html new file mode 100644 index 0000000..72a5777 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_11.html @@ -0,0 +1,372 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.5.11 : Fail - 46 ms @ 2020-09-07T18:50:55.637Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Echo'ed message length differs from what I sent (got length 8191, expected length 8192).

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=384&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Iv6ajlass21UxH1P5RA1qg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: DB4tJOpu/QG6Ht7N+g3GjMfRmos=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
738317383
747817478
757217572
766117661
766917669
774517745
777617776
779817798
780217802
781317813
781717817
782117821
782417824
782917829
783017830
783717837
784317843
784517845
785217852
785317853
7861215722
786217862
787117871
790317903
791117911
791717917
791817918
793417934
795117951
798817988
801618016
801818018
802218022
803818038
805418054
806118061
807118071
807218072
812718127
819618196
Total43322965
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
13113
46292
61161
74174
75175
87187
94194
97197
1151115
1192238
1201120
1312262
1321132
1422284
1431143
1491149
1512302
1561156
1601160
1611161
1692338
1772354
1781178
1871187
1941194
2111211
2191219
2291229
2352470
2391239
2472494
2521252
2591259
2601236321360
Total1279327803
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
241
81
Total42
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
01236
241
81
Total1278
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333834266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88829c021b729fea
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3963303231623732
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_5_11.json b/autobahn/client/tungstenite_case_12_5_11.json new file mode 100644 index 0000000..13518ed --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_11.json @@ -0,0 +1,202 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "OK", + "case": 384, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 46, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=384&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Iv6ajlass21UxH1P5RA1qg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: DB4tJOpu/QG6Ht7N+g3GjMfRmos=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.5.11", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Echo'ed message length differs from what I sent (got length 8191, expected length 8192).", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 41, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "7383": 1, + "7478": 1, + "7572": 1, + "7661": 1, + "7669": 1, + "7745": 1, + "7776": 1, + "7798": 1, + "7802": 1, + "7813": 1, + "7817": 1, + "7821": 1, + "7824": 1, + "7829": 1, + "7830": 1, + "7837": 1, + "7843": 1, + "7845": 1, + "7852": 1, + "7853": 1, + "7861": 2, + "7862": 1, + "7871": 1, + "7903": 1, + "7911": 1, + "7917": 1, + "7918": 1, + "7934": 1, + "7951": 1, + "7988": 1, + "8016": 1, + "8018": 1, + "8022": 1, + "8038": 1, + "8054": 1, + "8061": 1, + "8071": 1, + "8072": 1, + "8127": 1, + "8196": 1 + }, + "started": "2020-09-07T18:50:55.637Z", + "trafficStats": null, + "txFrameStats": { + "0": 1236, + "2": 41, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "13": 1, + "46": 2, + "61": 1, + "74": 1, + "75": 1, + "87": 1, + "94": 1, + "97": 1, + "115": 1, + "119": 2, + "120": 1, + "131": 2, + "132": 1, + "142": 2, + "143": 1, + "149": 1, + "151": 2, + "156": 1, + "160": 1, + "161": 1, + "169": 2, + "177": 2, + "178": 1, + "187": 1, + "194": 1, + "211": 1, + "219": 1, + "229": 1, + "235": 2, + "239": 1, + "247": 2, + "252": 1, + "259": 1, + "260": 1236 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333834266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88829c021b729fea" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "9c021b72" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_5_12.html b/autobahn/client/tungstenite_case_12_5_12.html new file mode 100644 index 0000000..139426b --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_12.html @@ -0,0 +1,1314 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.5.12 : Pass - 2115 ms @ 2020-09-07T18:50:55.685Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=385&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: aqc/cnzbgb93Yn+yvE2kpA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Z9eDjslE04Tq4hW7di5DMLgCUhM=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
6861686
6991699
7071707
7371737
7501750
7551755
7771777
8711871
9781978
103311033
103611036
103711037
104211042
104911049
105411054
115011150
115211152
116911169
118911189
119811198
121311213
125411254
126411264
126711267
127211272
127511275
129611296
130311303
131122622
131511315
132311323
132711327
134111341
134911349
136011360
138511385
140311403
143111431
143711437
146211462
146511465
147411474
147911479
148622972
149611496
149911499
150011500
150211502
150711507
150811508
151111511
151811518
152611526
152711527
154011540
154311543
154511545
155711557
156011560
157411574
158811588
160911609
163511635
164611646
165511655
165611656
169411694
172311723
173411734
178211782
185011850
188811888
193911939
197511975
199411994
208212082
211112111
215112151
215412154
220412204
226612266
226812268
233612336
234312343
236912369
246812468
248612486
251312513
258212582
260812608
261112611
264112641
267312673
281212812
281412814
284012840
287012870
289412894
293712937
294012940
294812948
297112971
302113021
302326046
302813028
303013030
303213032
305413054
306313063
309113091
310313103
310713107
312513125
318613186
320513205
321613216
323113231
326413264
330113301
341113411
341413414
347613476
348013480
350913509
358513585
360813608
365513655
381613816
389513895
391713917
393213932
397613976
400914009
404414044
417314173
418914189
419014190
421414214
423528470
428814288
429928598
430814308
433914339
435914359
437614376
444014440
444214442
444314443
446314463
449614496
451314513
451414514
454814548
463614636
467414674
472214722
478614786
480314803
491514915
501015010
504115041
504215042
521915219
526315263
534815348
539215392
552215522
558215582
570115701
570915709
572415724
577115771
599615996
601716017
610716107
629116291
636116361
639416394
641916419
646616466
652516525
694516945
712517125
716017160
728517285
729417294
741317413
773517735
776817768
779917799
790017900
829018290
832318323
844118441
857218572
863018630
867418674
884318843
891818918
895218952
912519125
919719197
920219202
921519215
922819228
926119261
929519295
932519325
943519435
946519465
951919519
954319543
956719567
970819708
974319743
998619986
999519995
10013110013
10195110195
10204110204
10223110223
10228110228
10408110408
10434110434
10445110445
10475110475
10477110477
10487110487
10509110509
10513110513
10543110543
10556110556
10564110564
10582110582
10595110595
10601110601
10676110676
10684110684
10697110697
10711110711
10717110717
10763110763
10775110775
10786110786
10790110790
10793110793
10805110805
10806110806
10822221644
10843110843
10850110850
10856110856
10858110858
10873110873
10896110896
10899110899
10920221840
10921110921
10922110922
10932110932
10933110933
10938110938
10940110940
10941110941
10976110976
10983110983
10985110985
11001111001
11017111017
11026111026
11029111029
11036111036
11053222106
11055111055
11063111063
11070111070
11072111072
11074111074
11088111088
11110111110
11121111121
11177111177
11209111209
11211111211
11222111222
11226111226
11240111240
11268111268
11307111307
11321111321
11323111323
11332111332
11341111341
11358111358
11360111360
11371111371
11373111373
11378111378
11384111384
11402111402
11417111417
11422111422
11424111424
11425111425
11430111430
11433111433
11461111461
11465111465
11469111469
11492111492
11500111500
11510111510
11513111513
11535111535
11542111542
11547111547
11556111556
11565111565
11588223176
11590111590
11592111592
11594111594
11596111596
11597111597
11623111623
11647111647
11658111658
11660223320
11679111679
11680111680
11682111682
11691111691
11692111692
11712111712
11755111755
11791111791
11800111800
11814111814
11819111819
11859111859
11867111867
11894111894
11913111913
12001112001
12362112362
12968112968
13246113246
13708113708
13996113996
14325114325
14627114627
14793114793
14856114856
14891114891
14924114924
14928114928
14965114965
14982114982
14983114983
15044115044
15070115070
15071115071
15074115074
15082115082
15091115091
15097115097
15107115107
15150115150
15166115166
15187115187
15188115188
15222115222
15224115224
15314115314
15330115330
15331115331
15356115356
15357115357
15360115360
15363115363
15364115364
15365230730
15366346098
15368230736
15371230742
15373115373
15374115374
15378115378
15384115384
15389115389
15445115445
15458115458
15460115460
15463115463
15464115464
15465115465
15466115466
15467115467
15481115481
15489115489
15490230980
15491115491
15492230984
15503231006
15506231012
15507231014
15508115508
15517115517
15519115519
15524115524
15525115525
15527115527
15528115528
15534231068
15536115536
15537231074
15539115539
15541115541
15544115544
15545115545
15547115547
15551115551
15553115553
15555231110
15558231116
15560115560
15562115562
15565231130
15566346698
15570115570
15573231146
15575115575
15576346728
15577346731
15580115580
15581577905
15582231164
15583231166
15585231170
15586231172
15587115587
15590115590
15591115591
15592231184
15593231186
15594231188
15595231190
15596346788
15597346791
15599115599
15600115600
15601231202
15602462408
15603115603
15604346812
15605115605
15607231214
15608115608
15609346827
15610346830
15616115616
15619115619
15620346860
15621115621
15624115624
15625231250
15628115628
15633115633
15636115636
15639231278
15640115640
15641115641
15642115642
15643231286
15644115644
15645115645
15646115646
15647115647
15648115648
15652115652
15655231310
15656115656
15657115657
15664115664
15666231332
15667578335
15668231336
15669115669
15671115671
15672231344
15674231348
15676347028
15677231354
15678462712
15680115680
15682115682
15684231368
15690115690
15692115692
15701231402
15702115702
15703231406
15711115711
15713115713
15714231428
15715231430
15716231432
15718231436
15719347157
15721347163
15723115723
15724115724
15725347175
15727115727
15728231456
15729231458
15732462928
15736231472
15737115737
15743115743
15744115744
15745347235
15747231494
15749115749
15751347253
15752231504
15754231508
15755231510
15759115759
15760115760
15763231526
15764115764
15767231534
15768231536
15769347307
15770115770
15771231542
15772115772
15777231554
15778115778
15779115779
15780115780
15782115782
15783231566
15784115784
15785115785
15787347361
15788231576
15789115789
15790115790
15792115792
15793115793
15796115796
15797115797
15798231596
15799231598
158007110600
15801231602
15802347406
15803347409
15804115804
15805115805
15806115806
15808231616
15809347427
15810231620
15812694872
15813347439
15814463256
15815115815
15816115816
15817115817
15818231636
15820115820
15821115821
15822231644
15823231646
15824231648
15825115825
15826115826
15827115827
15835231670
15836115836
15837347511
15838115838
15839115839
15840231680
15841115841
15842115842
15845231690
15846115846
15847347541
15848463392
15850347550
15851115851
15854115854
15855231710
15857231714
15858231716
15859231718
15860463440
15861231722
15862231724
15863231726
15864463456
15865231730
15866347598
15867347601
15868115868
15869231738
15870347610
15873115873
15875115875
15882115882
15883115883
15884347652
15885115885
15894115894
15895115895
15896231792
15897231794
15904115904
15906115906
15907579535
15910115910
15911115911
15912231824
15916115916
15921231842
15924115924
15929231858
15934115934
15935115935
15936115936
15939347817
15940115940
15944115944
15948115948
15949115949
15953115953
15954115954
15957115957
15958115958
15959115959
15963115963
15968115968
15969115969
15973115973
15974115974
15978115978
15983231966
15987231974
15989115989
15990115990
15991231982
15993115993
15995231990
15996347988
16001116001
16002116002
16004116004
16006116006
16007116007
16008232016
16009116009
16010116010
16012348036
16014348042
16019116019
16020116020
16032232064
16034116034
16036232072
16038348114
16041232082
16043116043
16045116045
16046232092
16047232094
16049116049
16051116051
16052232104
16054232108
16057348171
16058116058
16059116059
16060232120
16061116061
16063116063
16065116065
16066116066
16067232134
16068116068
16069232138
16070116070
16071116071
16072348216
16074116074
16076232152
16077116077
16079116079
16080116080
16082348246
16083232166
16085116085
16089348267
16093116093
16095116095
16098232196
16109116109
16110232220
16111116111
16112116112
16113116113
16114232228
16115348345
16116232232
16117116117
16118116118
16119116119
16120116120
16121116121
16122116122
16123116123
16125116125
16126116126
16130116130
16131116131
16137116137
16139116139
16140232280
16141116141
16142116142
16143116143
16147116147
16149116149
16150116150
16156232312
16163116163
16166116166
16168116168
16170116170
16171116171
16172116172
16179116179
16182116182
16184232368
16188116188
16191116191
16192116192
16193116193
16194116194
16198116198
16200116200
16216116216
16233116233
16240116240
16242116242
16270116270
16295116295
16324116324
16326116326
16330116330
16332116332
Total100212497908
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
236
313
4416
5840
6848
7642
8540
9981
10220
11333
12112
13452
14228
15115
16464
17117
18472
19119
20360
21484
22488
236138
24372
26252
27254
284112
298232
304120
31393
32396
334132
345170
353105
363108
376222
383114
395195
40280
414164
423126
433129
443132
453135
464184
47147
484192
494196
504200
514204
522104
532106
54154
553165
563168
574228
585290
593177
605300
613183
626372
634252
647448
654260
664264
68168
692138
703210
715355
72172
732146
744296
75175
763228
772154
782156
79179
803240
813243
823246
832166
843252
857595
862172
872174
88188
89189
90190
913273
924368
94194
954380
96196
973291
985490
994396
1008800
1014404
1024408
1035515
1042208
1053315
1065530
1072214
1084432
1095545
1105550
1113333
1126672
1133339
1146684
1156690
1165580
1171117
1182236
1191119
1202240
1213363
1223366
1235615
1244496
1251125
1264504
1273381
1304520
1313393
1325660
1334532
1345670
1353405
1367952
1373411
13881104
1393417
1403420
1412282
1425710
1432286
1442288
1451145
1463438
1472294
1482296
1493447
1501150
1511151
1522304
1531153
1545770
1553465
1564624
1574628
1585790
15991431
16071120
1612322
1625810
1634652
1644656
1656990
1662332
1674668
1684672
1693507
17061020
1712342
1722344
1732346
1745870
1753525
1764704
1773531
1783534
1793537
1805900
1814724
1823546
18361098
18481472
18591665
1865930
18771309
1882376
1894756
19091710
1914764
1924768
1932386
19461164
19591755
1965980
19791773
1984792
1994796
20081600
20191809
2023606
2034812
2043612
2051205
2062412
20751035
20851040
2094836
2102420
21151055
2122424
2134852
21451070
21551075
21651080
2174868
2182436
2192438
2204880
2213663
22261332
22392007
2244896
22571575
22651130
2272454
2283684
2292458
2303690
23151155
23381864
23492106
23551175
23681888
2371237
238102380
23981912
24061440
24161446
24251210
243102430
24461464
24592205
246112706
2472494
24861488
24951245
250102500
25161506
2522504
25351265
25461524
25541020
25651280
2572514
2582516
2592518
2604830012558000
Total4930212700244
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
048300
21000
81
Total49301
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333835266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888219b7264c1a5f
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3139623732363463
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_5_12.json b/autobahn/client/tungstenite_case_12_5_12.json new file mode 100644 index 0000000..8a1f66f --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_12.json @@ -0,0 +1,1161 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 385, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 2115, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=385&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: aqc/cnzbgb93Yn+yvE2kpA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Z9eDjslE04Tq4hW7di5DMLgCUhM=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.5.12", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "686": 1, + "699": 1, + "707": 1, + "737": 1, + "750": 1, + "755": 1, + "777": 1, + "871": 1, + "978": 1, + "1033": 1, + "1036": 1, + "1037": 1, + "1042": 1, + "1049": 1, + "1054": 1, + "1150": 1, + "1152": 1, + "1169": 1, + "1189": 1, + "1198": 1, + "1213": 1, + "1254": 1, + "1264": 1, + "1267": 1, + "1272": 1, + "1275": 1, + "1296": 1, + "1303": 1, + "1311": 2, + "1315": 1, + "1323": 1, + "1327": 1, + "1341": 1, + "1349": 1, + "1360": 1, + "1385": 1, + "1403": 1, + "1431": 1, + "1437": 1, + "1462": 1, + "1465": 1, + "1474": 1, + "1479": 1, + "1486": 2, + "1496": 1, + "1499": 1, + "1500": 1, + "1502": 1, + "1507": 1, + "1508": 1, + "1511": 1, + "1518": 1, + "1526": 1, + "1527": 1, + "1540": 1, + "1543": 1, + "1545": 1, + "1557": 1, + "1560": 1, + "1574": 1, + "1588": 1, + "1609": 1, + "1635": 1, + "1646": 1, + "1655": 1, + "1656": 1, + "1694": 1, + "1723": 1, + "1734": 1, + "1782": 1, + "1850": 1, + "1888": 1, + "1939": 1, + "1975": 1, + "1994": 1, + "2082": 1, + "2111": 1, + "2151": 1, + "2154": 1, + "2204": 1, + "2266": 1, + "2268": 1, + "2336": 1, + "2343": 1, + "2369": 1, + "2468": 1, + "2486": 1, + "2513": 1, + "2582": 1, + "2608": 1, + "2611": 1, + "2641": 1, + "2673": 1, + "2812": 1, + "2814": 1, + "2840": 1, + "2870": 1, + "2894": 1, + "2937": 1, + "2940": 1, + "2948": 1, + "2971": 1, + "3021": 1, + "3023": 2, + "3028": 1, + "3030": 1, + "3032": 1, + "3054": 1, + "3063": 1, + "3091": 1, + "3103": 1, + "3107": 1, + "3125": 1, + "3186": 1, + "3205": 1, + "3216": 1, + "3231": 1, + "3264": 1, + "3301": 1, + "3411": 1, + "3414": 1, + "3476": 1, + "3480": 1, + "3509": 1, + "3585": 1, + "3608": 1, + "3655": 1, + "3816": 1, + "3895": 1, + "3917": 1, + "3932": 1, + "3976": 1, + "4009": 1, + "4044": 1, + "4173": 1, + "4189": 1, + "4190": 1, + "4214": 1, + "4235": 2, + "4288": 1, + "4299": 2, + "4308": 1, + "4339": 1, + "4359": 1, + "4376": 1, + "4440": 1, + "4442": 1, + "4443": 1, + "4463": 1, + "4496": 1, + "4513": 1, + "4514": 1, + "4548": 1, + "4636": 1, + "4674": 1, + "4722": 1, + "4786": 1, + "4803": 1, + "4915": 1, + "5010": 1, + "5041": 1, + "5042": 1, + "5219": 1, + "5263": 1, + "5348": 1, + "5392": 1, + "5522": 1, + "5582": 1, + "5701": 1, + "5709": 1, + "5724": 1, + "5771": 1, + "5996": 1, + "6017": 1, + "6107": 1, + "6291": 1, + "6361": 1, + "6394": 1, + "6419": 1, + "6466": 1, + "6525": 1, + "6945": 1, + "7125": 1, + "7160": 1, + "7285": 1, + "7294": 1, + "7413": 1, + "7735": 1, + "7768": 1, + "7799": 1, + "7900": 1, + "8290": 1, + "8323": 1, + "8441": 1, + "8572": 1, + "8630": 1, + "8674": 1, + "8843": 1, + "8918": 1, + "8952": 1, + "9125": 1, + "9197": 1, + "9202": 1, + "9215": 1, + "9228": 1, + "9261": 1, + "9295": 1, + "9325": 1, + "9435": 1, + "9465": 1, + "9519": 1, + "9543": 1, + "9567": 1, + "9708": 1, + "9743": 1, + "9986": 1, + "9995": 1, + "10013": 1, + "10195": 1, + "10204": 1, + "10223": 1, + "10228": 1, + "10408": 1, + "10434": 1, + "10445": 1, + "10475": 1, + "10477": 1, + "10487": 1, + "10509": 1, + "10513": 1, + "10543": 1, + "10556": 1, + "10564": 1, + "10582": 1, + "10595": 1, + "10601": 1, + "10676": 1, + "10684": 1, + "10697": 1, + "10711": 1, + "10717": 1, + "10763": 1, + "10775": 1, + "10786": 1, + "10790": 1, + "10793": 1, + "10805": 1, + "10806": 1, + "10822": 2, + "10843": 1, + "10850": 1, + "10856": 1, + "10858": 1, + "10873": 1, + "10896": 1, + "10899": 1, + "10920": 2, + "10921": 1, + "10922": 1, + "10932": 1, + "10933": 1, + "10938": 1, + "10940": 1, + "10941": 1, + "10976": 1, + "10983": 1, + "10985": 1, + "11001": 1, + "11017": 1, + "11026": 1, + "11029": 1, + "11036": 1, + "11053": 2, + "11055": 1, + "11063": 1, + "11070": 1, + "11072": 1, + "11074": 1, + "11088": 1, + "11110": 1, + "11121": 1, + "11177": 1, + "11209": 1, + "11211": 1, + "11222": 1, + "11226": 1, + "11240": 1, + "11268": 1, + "11307": 1, + "11321": 1, + "11323": 1, + "11332": 1, + "11341": 1, + "11358": 1, + "11360": 1, + "11371": 1, + "11373": 1, + "11378": 1, + "11384": 1, + "11402": 1, + "11417": 1, + "11422": 1, + "11424": 1, + "11425": 1, + "11430": 1, + "11433": 1, + "11461": 1, + "11465": 1, + "11469": 1, + "11492": 1, + "11500": 1, + "11510": 1, + "11513": 1, + "11535": 1, + "11542": 1, + "11547": 1, + "11556": 1, + "11565": 1, + "11588": 2, + "11590": 1, + "11592": 1, + "11594": 1, + "11596": 1, + "11597": 1, + "11623": 1, + "11647": 1, + "11658": 1, + "11660": 2, + "11679": 1, + "11680": 1, + "11682": 1, + "11691": 1, + "11692": 1, + "11712": 1, + "11755": 1, + "11791": 1, + "11800": 1, + "11814": 1, + "11819": 1, + "11859": 1, + "11867": 1, + "11894": 1, + "11913": 1, + "12001": 1, + "12362": 1, + "12968": 1, + "13246": 1, + "13708": 1, + "13996": 1, + "14325": 1, + "14627": 1, + "14793": 1, + "14856": 1, + "14891": 1, + "14924": 1, + "14928": 1, + "14965": 1, + "14982": 1, + "14983": 1, + "15044": 1, + "15070": 1, + "15071": 1, + "15074": 1, + "15082": 1, + "15091": 1, + "15097": 1, + "15107": 1, + "15150": 1, + "15166": 1, + "15187": 1, + "15188": 1, + "15222": 1, + "15224": 1, + "15314": 1, + "15330": 1, + "15331": 1, + "15356": 1, + "15357": 1, + "15360": 1, + "15363": 1, + "15364": 1, + "15365": 2, + "15366": 3, + "15368": 2, + "15371": 2, + "15373": 1, + "15374": 1, + "15378": 1, + "15384": 1, + "15389": 1, + "15445": 1, + "15458": 1, + "15460": 1, + "15463": 1, + "15464": 1, + "15465": 1, + "15466": 1, + "15467": 1, + "15481": 1, + "15489": 1, + "15490": 2, + "15491": 1, + "15492": 2, + "15503": 2, + "15506": 2, + "15507": 2, + "15508": 1, + "15517": 1, + "15519": 1, + "15524": 1, + "15525": 1, + "15527": 1, + "15528": 1, + "15534": 2, + "15536": 1, + "15537": 2, + "15539": 1, + "15541": 1, + "15544": 1, + "15545": 1, + "15547": 1, + "15551": 1, + "15553": 1, + "15555": 2, + "15558": 2, + "15560": 1, + "15562": 1, + "15565": 2, + "15566": 3, + "15570": 1, + "15573": 2, + "15575": 1, + "15576": 3, + "15577": 3, + "15580": 1, + "15581": 5, + "15582": 2, + "15583": 2, + "15585": 2, + "15586": 2, + "15587": 1, + "15590": 1, + "15591": 1, + "15592": 2, + "15593": 2, + "15594": 2, + "15595": 2, + "15596": 3, + "15597": 3, + "15599": 1, + "15600": 1, + "15601": 2, + "15602": 4, + "15603": 1, + "15604": 3, + "15605": 1, + "15607": 2, + "15608": 1, + "15609": 3, + "15610": 3, + "15616": 1, + "15619": 1, + "15620": 3, + "15621": 1, + "15624": 1, + "15625": 2, + "15628": 1, + "15633": 1, + "15636": 1, + "15639": 2, + "15640": 1, + "15641": 1, + "15642": 1, + "15643": 2, + "15644": 1, + "15645": 1, + "15646": 1, + "15647": 1, + "15648": 1, + "15652": 1, + "15655": 2, + "15656": 1, + "15657": 1, + "15664": 1, + "15666": 2, + "15667": 5, + "15668": 2, + "15669": 1, + "15671": 1, + "15672": 2, + "15674": 2, + "15676": 3, + "15677": 2, + "15678": 4, + "15680": 1, + "15682": 1, + "15684": 2, + "15690": 1, + "15692": 1, + "15701": 2, + "15702": 1, + "15703": 2, + "15711": 1, + "15713": 1, + "15714": 2, + "15715": 2, + "15716": 2, + "15718": 2, + "15719": 3, + "15721": 3, + "15723": 1, + "15724": 1, + "15725": 3, + "15727": 1, + "15728": 2, + "15729": 2, + "15732": 4, + "15736": 2, + "15737": 1, + "15743": 1, + "15744": 1, + "15745": 3, + "15747": 2, + "15749": 1, + "15751": 3, + "15752": 2, + "15754": 2, + "15755": 2, + "15759": 1, + "15760": 1, + "15763": 2, + "15764": 1, + "15767": 2, + "15768": 2, + "15769": 3, + "15770": 1, + "15771": 2, + "15772": 1, + "15777": 2, + "15778": 1, + "15779": 1, + "15780": 1, + "15782": 1, + "15783": 2, + "15784": 1, + "15785": 1, + "15787": 3, + "15788": 2, + "15789": 1, + "15790": 1, + "15792": 1, + "15793": 1, + "15796": 1, + "15797": 1, + "15798": 2, + "15799": 2, + "15800": 7, + "15801": 2, + "15802": 3, + "15803": 3, + "15804": 1, + "15805": 1, + "15806": 1, + "15808": 2, + "15809": 3, + "15810": 2, + "15812": 6, + "15813": 3, + "15814": 4, + "15815": 1, + "15816": 1, + "15817": 1, + "15818": 2, + "15820": 1, + "15821": 1, + "15822": 2, + "15823": 2, + "15824": 2, + "15825": 1, + "15826": 1, + "15827": 1, + "15835": 2, + "15836": 1, + "15837": 3, + "15838": 1, + "15839": 1, + "15840": 2, + "15841": 1, + "15842": 1, + "15845": 2, + "15846": 1, + "15847": 3, + "15848": 4, + "15850": 3, + "15851": 1, + "15854": 1, + "15855": 2, + "15857": 2, + "15858": 2, + "15859": 2, + "15860": 4, + "15861": 2, + "15862": 2, + "15863": 2, + "15864": 4, + "15865": 2, + "15866": 3, + "15867": 3, + "15868": 1, + "15869": 2, + "15870": 3, + "15873": 1, + "15875": 1, + "15882": 1, + "15883": 1, + "15884": 3, + "15885": 1, + "15894": 1, + "15895": 1, + "15896": 2, + "15897": 2, + "15904": 1, + "15906": 1, + "15907": 5, + "15910": 1, + "15911": 1, + "15912": 2, + "15916": 1, + "15921": 2, + "15924": 1, + "15929": 2, + "15934": 1, + "15935": 1, + "15936": 1, + "15939": 3, + "15940": 1, + "15944": 1, + "15948": 1, + "15949": 1, + "15953": 1, + "15954": 1, + "15957": 1, + "15958": 1, + "15959": 1, + "15963": 1, + "15968": 1, + "15969": 1, + "15973": 1, + "15974": 1, + "15978": 1, + "15983": 2, + "15987": 2, + "15989": 1, + "15990": 1, + "15991": 2, + "15993": 1, + "15995": 2, + "15996": 3, + "16001": 1, + "16002": 1, + "16004": 1, + "16006": 1, + "16007": 1, + "16008": 2, + "16009": 1, + "16010": 1, + "16012": 3, + "16014": 3, + "16019": 1, + "16020": 1, + "16032": 2, + "16034": 1, + "16036": 2, + "16038": 3, + "16041": 2, + "16043": 1, + "16045": 1, + "16046": 2, + "16047": 2, + "16049": 1, + "16051": 1, + "16052": 2, + "16054": 2, + "16057": 3, + "16058": 1, + "16059": 1, + "16060": 2, + "16061": 1, + "16063": 1, + "16065": 1, + "16066": 1, + "16067": 2, + "16068": 1, + "16069": 2, + "16070": 1, + "16071": 1, + "16072": 3, + "16074": 1, + "16076": 2, + "16077": 1, + "16079": 1, + "16080": 1, + "16082": 3, + "16083": 2, + "16085": 1, + "16089": 3, + "16093": 1, + "16095": 1, + "16098": 2, + "16109": 1, + "16110": 2, + "16111": 1, + "16112": 1, + "16113": 1, + "16114": 2, + "16115": 3, + "16116": 2, + "16117": 1, + "16118": 1, + "16119": 1, + "16120": 1, + "16121": 1, + "16122": 1, + "16123": 1, + "16125": 1, + "16126": 1, + "16130": 1, + "16131": 1, + "16137": 1, + "16139": 1, + "16140": 2, + "16141": 1, + "16142": 1, + "16143": 1, + "16147": 1, + "16149": 1, + "16150": 1, + "16156": 2, + "16163": 1, + "16166": 1, + "16168": 1, + "16170": 1, + "16171": 1, + "16172": 1, + "16179": 1, + "16182": 1, + "16184": 2, + "16188": 1, + "16191": 1, + "16192": 1, + "16193": 1, + "16194": 1, + "16198": 1, + "16200": 1, + "16216": 1, + "16233": 1, + "16240": 1, + "16242": 1, + "16270": 1, + "16295": 1, + "16324": 1, + "16326": 1, + "16330": 1, + "16332": 1 + }, + "started": "2020-09-07T18:50:55.685Z", + "trafficStats": { + "incomingCompressionRatio": 0.7623073120117188, + "incomingOctetsAppLevel": 16384000, + "incomingOctetsWebSocketLevel": 12489643, + "incomingOctetsWireLevel": 12497643, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0006405307181318153, + "outgoingCompressionRatio": 0.7631610107421875, + "outgoingOctetsAppLevel": 16384000, + "outgoingOctetsWebSocketLevel": 12503630, + "outgoingOctetsWireLevel": 12699988, + "outgoingWebSocketFrames": 49300, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.015704079535302947, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 48300, + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 3, + "3": 1, + "4": 4, + "5": 8, + "6": 8, + "7": 6, + "8": 5, + "9": 9, + "10": 2, + "11": 3, + "12": 1, + "13": 4, + "14": 2, + "15": 1, + "16": 4, + "17": 1, + "18": 4, + "19": 1, + "20": 3, + "21": 4, + "22": 4, + "23": 6, + "24": 3, + "26": 2, + "27": 2, + "28": 4, + "29": 8, + "30": 4, + "31": 3, + "32": 3, + "33": 4, + "34": 5, + "35": 3, + "36": 3, + "37": 6, + "38": 3, + "39": 5, + "40": 2, + "41": 4, + "42": 3, + "43": 3, + "44": 3, + "45": 3, + "46": 4, + "47": 1, + "48": 4, + "49": 4, + "50": 4, + "51": 4, + "52": 2, + "53": 2, + "54": 1, + "55": 3, + "56": 3, + "57": 4, + "58": 5, + "59": 3, + "60": 5, + "61": 3, + "62": 6, + "63": 4, + "64": 7, + "65": 4, + "66": 4, + "68": 1, + "69": 2, + "70": 3, + "71": 5, + "72": 1, + "73": 2, + "74": 4, + "75": 1, + "76": 3, + "77": 2, + "78": 2, + "79": 1, + "80": 3, + "81": 3, + "82": 3, + "83": 2, + "84": 3, + "85": 7, + "86": 2, + "87": 2, + "88": 1, + "89": 1, + "90": 1, + "91": 3, + "92": 4, + "94": 1, + "95": 4, + "96": 1, + "97": 3, + "98": 5, + "99": 4, + "100": 8, + "101": 4, + "102": 4, + "103": 5, + "104": 2, + "105": 3, + "106": 5, + "107": 2, + "108": 4, + "109": 5, + "110": 5, + "111": 3, + "112": 6, + "113": 3, + "114": 6, + "115": 6, + "116": 5, + "117": 1, + "118": 2, + "119": 1, + "120": 2, + "121": 3, + "122": 3, + "123": 5, + "124": 4, + "125": 1, + "126": 4, + "127": 3, + "130": 4, + "131": 3, + "132": 5, + "133": 4, + "134": 5, + "135": 3, + "136": 7, + "137": 3, + "138": 8, + "139": 3, + "140": 3, + "141": 2, + "142": 5, + "143": 2, + "144": 2, + "145": 1, + "146": 3, + "147": 2, + "148": 2, + "149": 3, + "150": 1, + "151": 1, + "152": 2, + "153": 1, + "154": 5, + "155": 3, + "156": 4, + "157": 4, + "158": 5, + "159": 9, + "160": 7, + "161": 2, + "162": 5, + "163": 4, + "164": 4, + "165": 6, + "166": 2, + "167": 4, + "168": 4, + "169": 3, + "170": 6, + "171": 2, + "172": 2, + "173": 2, + "174": 5, + "175": 3, + "176": 4, + "177": 3, + "178": 3, + "179": 3, + "180": 5, + "181": 4, + "182": 3, + "183": 6, + "184": 8, + "185": 9, + "186": 5, + "187": 7, + "188": 2, + "189": 4, + "190": 9, + "191": 4, + "192": 4, + "193": 2, + "194": 6, + "195": 9, + "196": 5, + "197": 9, + "198": 4, + "199": 4, + "200": 8, + "201": 9, + "202": 3, + "203": 4, + "204": 3, + "205": 1, + "206": 2, + "207": 5, + "208": 5, + "209": 4, + "210": 2, + "211": 5, + "212": 2, + "213": 4, + "214": 5, + "215": 5, + "216": 5, + "217": 4, + "218": 2, + "219": 2, + "220": 4, + "221": 3, + "222": 6, + "223": 9, + "224": 4, + "225": 7, + "226": 5, + "227": 2, + "228": 3, + "229": 2, + "230": 3, + "231": 5, + "233": 8, + "234": 9, + "235": 5, + "236": 8, + "237": 1, + "238": 10, + "239": 8, + "240": 6, + "241": 6, + "242": 5, + "243": 10, + "244": 6, + "245": 9, + "246": 11, + "247": 2, + "248": 6, + "249": 5, + "250": 10, + "251": 6, + "252": 2, + "253": 5, + "254": 6, + "255": 4, + "256": 5, + "257": 2, + "258": 2, + "259": 2, + "260": 48300 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333835266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888219b7264c1a5f" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "19b7264c" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_5_13.html b/autobahn/client/tungstenite_case_12_5_13.html new file mode 100644 index 0000000..9f5e995 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_13.html @@ -0,0 +1,1388 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.5.13 : Pass - 3482 ms @ 2020-09-07T18:50:57.801Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=386&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: MiwUQodvsyaQlolsH5HvyA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: ckJG8hV14oxlZIvqGEXC3C9Eb7s=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
209512095
210912109
214512145
214812148
215412154
230612306
253612536
255212552
256312563
257512575
258612586
259712597
259912599
261812618
263712637
266912669
269012690
269112691
270512705
270712707
270912709
271712717
272012720
274612746
275812758
276312763
278412784
279412794
280912809
281212812
285612856
287612876
298212982
300713007
318213182
318713187
319413194
336013360
337913379
345713457
348313483
349213492
350113501
351313513
352413524
359813598
361813618
362613626
364813648
384413844
385113851
385413854
387813878
392013920
398113981
404314043
404514045
414114141
414814148
421414214
421714217
422814228
425114251
441314413
446214462
456714567
466514665
469214692
475714757
477714777
491914919
492614926
492914929
505315053
513315133
532115321
537915379
540315403
557415574
559415594
571215712
572015720
574115741
574815748
575415754
575715757
579615796
580415804
5816211632
582915829
585115851
586415864
588015880
592915929
593015930
593315933
593615936
596415964
614816148
616716167
626016260
628216282
629416294
647416474
650716507
650916509
652916529
672116721
691116911
711917119
715217152
724917249
726217262
729317293
732817328
752417524
770217702
771317713
774617746
777517775
797817978
809418094
819918199
822118221
823118231
828618286
829618296
831918319
842818428
847318473
847618476
854918549
859418594
860218602
864318643
864818648
865018650
865318653
866218662
867818678
868618686
8689217378
869318693
869718697
873418734
894718947
895818958
909119091
912419124
917019170
930719307
938019380
943619436
945519455
998519985
10138110138
10530110530
10648110648
10680110680
10750110750
11085111085
11262111262
11477111477
11567111567
11627111627
11717111717
11748111748
11864111864
11893111893
11953111953
12100112100
12123112123
12140112140
12582112582
12662112662
12690112690
12838112838
13248113248
13605113605
13641113641
13720113720
13851113851
13992113992
14317114317
14362114362
14374114374
14719114719
14985114985
15097115097
15247115247
15262115262
15302115302
15390115390
15541115541
15980115980
16074116074
16151116151
16223116223
16408116408
16490116490
16673116673
16800116800
17014117014
17087117087
17141117141
17182117182
17579117579
17705117705
17849117849
18221118221
18493118493
18775118775
18884118884
18919118919
19025119025
19420119420
19440119440
19449119449
19528119528
19585119585
19694119694
19719119719
19788119788
20000120000
20005120005
20102120102
20154120154
20173120173
20212120212
20308120308
20333120333
20485120485
20487120487
20547120547
20595120595
20614120614
20627120627
20670120670
20696120696
20701120701
20704120704
20718120718
20777120777
20779120779
20792120792
20834241668
20840120840
20849120849
20852120852
20857120857
20890120890
20895120895
20907120907
20912120912
21003121003
21013121013
21017121017
21056121056
21108121108
21131121131
21143121143
21170121170
21253121253
21285121285
21313121313
21314121314
21337121337
21340121340
21438121438
21443121443
21480121480
21507121507
21519121519
21534121534
21536121536
21604121604
21613121613
21631121631
21641121641
21656121656
21671121671
21675121675
21707121707
21744121744
21745121745
21747121747
21760121760
21785121785
21788121788
21817121817
21831121831
21838121838
21852121852
21870121870
21879121879
21930121930
21944121944
21957121957
21971121971
22040122040
22052122052
22104122104
22158122158
22163122163
22168122168
22180122180
22188122188
22189122189
22203122203
22343122343
22344122344
22358122358
22391122391
22463122463
22539122539
22561122561
22582122582
22594122594
22605122605
22618122618
22625122625
22631122631
22639122639
22644122644
22646122646
22648122648
22655122655
22661122661
22664122664
22671122671
22704122704
22705122705
22742122742
22746122746
22747122747
22769122769
22792122792
22801122801
22815122815
22847122847
22876122876
22919122919
22926122926
22969122969
22977122977
23000123000
23002123002
23007246014
23012123012
23014123014
23032123032
23043123043
23065123065
23109123109
23143123143
23168123168
23175123175
23180123180
23190123190
23341123341
23361123361
23384123384
24132124132
24234124234
24421124421
25293125293
25399125399
25558125558
26426126426
26962126962
27033127033
27303127303
28204128204
28327128327
28461128461
28564128564
29439129439
29540129540
29546129546
30504261008
30508130508
30510130510
30580130580
30602130602
30615130615
30655130655
30656130656
30696261392
30711130711
30714130714
30715130715
30716130716
30717130717
30721130721
30731130731
30740261480
30746130746
30748130748
30821130821
30830130830
30876130876
30882130882
30883130883
30884130884
30897130897
30910130910
30948261896
30951261902
30952130952
30986130986
30988130988
30989261978
30993130993
30995130995
31044131044
31061131061
31073262146
31076262152
31081131081
31082131082
31083131083
31084262168
31087131087
31090131090
31093131093
31094131094
31101131101
31104131104
31105131105
31108131108
31115131115
31120131120
31123131123
31126131126
31127393381
31128131128
31131131131
31132262264
31133131133
31136262272
31154262308
31155131155
311574124628
31158262316
31160262320
31161131161
31162262324
31167131167
31168131168
31169131169
31170393510
31171262342
31173131173
31174131174
311754124700
31176131176
31178262356
31180131180
31182131182
31202262404
31208131208
31209262418
31225131225
31227131227
31233131233
31240131240
31242131242
31243131243
31249131249
31253131253
31254131254
31262131262
312664125064
31267131267
31268262536
31269262538
31274262548
31300131300
31301262602
31303131303
31304131304
31305131305
31307131307
31310262620
31311131311
31312131312
313144125256
31316131316
31318131318
31319131319
31321131321
31323131323
31324131324
31326131326
31328393984
31330131330
31331131331
313324125328
31334394002
31335262670
31336131336
31337131337
31338131338
31342131342
31346131346
31347131347
31348131348
31349131349
31350262700
31352131352
313564125424
31357131357
31359262718
31361262722
31365131365
31366131366
31367131367
31369262738
31370131370
31371262742
31374131374
31375262750
31376262752
31381131381
31382262764
31393131393
313945156970
31395131395
31397131397
31398131398
31400131400
31401131401
31402131402
31408262816
31414131414
31415394245
31417262834
31418262836
31420262840
31421131421
31427262854
31432131432
31433262866
31435131435
31437131437
31438131438
31441131441
31445131445
31447131447
31450131450
31454262908
31456131456
31458131458
31459131459
31460131460
31461394383
31464131464
31466262932
31468131468
31469131469
31470131470
31471131471
31472131472
31473131473
31474131474
31479131479
31480131480
31486131486
31488131488
31489262978
31490262980
31491131491
31492131492
31494131494
31496131496
31498131498
31502131502
31505263010
31506131506
31507131507
31513131513
31514131514
31516131516
31517263034
31518263036
31522263044
31523263046
31524131524
31527131527
31528131528
31529263058
31530131530
31531131531
31540131540
31546263092
31555263110
31556263112
31559263118
31560131560
31563263126
31564131564
31565263130
31566131566
31567131567
31568263136
31575263150
31576394728
31580131580
31582131582
31583394749
31586263172
31587131587
31591131591
31593263186
31594131594
31602263204
31603131603
31606131606
31608131608
31611131611
31613131613
31614131614
31616131616
31617131617
31619263238
31620131620
31624131624
31625263250
31626263252
31629131629
31630131630
31631131631
31632263264
31633131633
31637263274
31639131639
31640131640
31644131644
31650131650
31651263302
31654131654
31658131658
31662263324
31663131663
31664131664
31665131665
31668263336
31679131679
31682131682
31683131683
31685131685
31692131692
31695131695
31696131696
31699263398
31700395100
31701131701
31702131702
31703131703
31705263410
31706395118
31708263416
31709131709
31711131711
31715131715
31719131719
31726263452
31730131730
31732131732
31733131733
31736263472
31739263478
31740131740
31743131743
31744131744
31745131745
31746131746
31747131747
31749131749
31753131753
31754131754
31755131755
31756131756
31758263516
31763263526
31764263528
31766263532
31767131767
31768131768
31773131773
31782131782
31784131784
31785131785
31794131794
31795131795
31797131797
317985158990
31799263598
31801131801
31807131807
31812131812
31823131823
31827131827
31828131828
31829131829
31830131830
31837131837
31838131838
31839131839
31845131845
31847131847
31852131852
31853131853
31862131862
31863263726
31864131864
31870131870
31872131872
31873131873
31876131876
31878131878
31879131879
31880131880
31881131881
31883263766
31889131889
31900131900
31903131903
31916131916
31917131917
31930131930
31935131935
31939263878
31940131940
31941131941
31943131943
31944131944
31948131948
31955131955
31958131958
31964131964
31966131966
31973131973
31974131974
31982131982
31997263994
32001132001
32003132003
32004264008
32015132015
32017132017
32018132018
32030132030
32038132038
32040132040
32043132043
32067396201
32070132070
32073132073
32075132075
32076264152
32078132078
32079132079
32084264168
32088132088
32090132090
32092132092
32097132097
32099132099
32102396306
32105132105
32106132106
32111132111
32114132114
32115132115
32116132116
32118132118
32124132124
32126132126
32129132129
32131132131
32132396396
32135264270
32137132137
32141132141
32143132143
32144132144
32150132150
32158264316
32159132159
32162396486
32163396489
32164264328
32165132165
32170264340
32178132178
32179132179
32181264362
32182264364
32186132186
32187132187
32188132188
32190264380
32193396579
32195132195
32199132199
32203132203
32204264408
32207132207
32208132208
32211132211
32215132215
32217264434
32222132222
32226132226
32229132229
32230264460
32232132232
32235132235
32236132236
32239396717
32245132245
32248132248
32249132249
32252132252
32254132254
32262132262
32265132265
32273132273
32304132304
32315132315
32317132317
32334264668
32335132335
32336132336
32345132345
32370264740
32371132371
Total100224911209
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
236
3412
4520
5315
6318
7321
8540
919
10330
11333
12224
13678
14570
15460
16464
17117
18118
199171
20240
216126
22122
23123
246144
254100
266156
274108
284112
29387
30130
31131
324128
33399
346204
357245
363108
374148
386228
395195
40280
41282
426252
433129
44144
455225
46292
47294
485240
502100
515255
522104
534212
545270
552110
56156
576342
584232
593177
60160
617427
623186
632126
644256
652130
66166
673201
684272
695345
707490
713213
726432
733219
744296
754300
763228
772154
785390
795395
802160
81181
825410
832166
843252
855425
865430
875435
887616
894356
903270
916546
925460
935465
942188
953285
967672
973291
985490
998792
1006600
1011101
1025510
1039927
1041104
1053315
1065530
1074428
1086648
1095545
1107770
1113333
1125560
1137791
1144456
1152230
1163348
1175585
1184472
1193357
1206720
1214484
1224488
1234492
1244496
1252250
1267882
1275635
1305650
1316786
13281056
1334532
1343402
1357945
1366816
1372274
1384552
1395695
14081120
1414564
1421142
14371001
14491296
1452290
1463438
1476882
1482296
1495745
15081200
1513453
1522304
1533459
1542308
1555775
1562312
1573471
1585790
1594636
1605800
16171127
1621162
1632326
1641164
1653495
16691494
1675835
1681168
1694676
1705850
1713513
1724688
1734692
1745870
17561050
1763528
1775885
1782356
1792358
1803540
1812362
18261092
18381464
18471288
1851185
18671302
1874748
1882376
1894756
19071330
1914764
1923576
1931193
1944776
1954780
1965980
1971197
1982396
1995995
20071400
2013603
2024808
20351015
2044816
20571435
20661236
2072414
2083624
2094836
21081680
2113633
21251060
21361278
2141214
2162432
21761302
2184872
2193657
22061320
22151105
22251110
22361338
2243672
2254900
2263678
2271227
2284912
2294916
2301230
23151155
2324928
2343702
2354940
2372474
23861428
2393717
24051200
2414964
2423726
2431243
2443732
24561470
24651230
2472494
2484992
2494996
2502500
2511251
25271764
25341012
2541254
25561530
25641024
2572514
2582516
25951295
2609688925191140
Total9789125322410
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
096889
21000
81
Total97890
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333836266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888286e4e27f850c
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3836653465323766
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_5_13.json b/autobahn/client/tungstenite_case_12_5_13.json new file mode 100644 index 0000000..0ef5c13 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_13.json @@ -0,0 +1,1235 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 386, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 3482, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=386&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: MiwUQodvsyaQlolsH5HvyA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: ckJG8hV14oxlZIvqGEXC3C9Eb7s=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.5.13", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "2095": 1, + "2109": 1, + "2145": 1, + "2148": 1, + "2154": 1, + "2306": 1, + "2536": 1, + "2552": 1, + "2563": 1, + "2575": 1, + "2586": 1, + "2597": 1, + "2599": 1, + "2618": 1, + "2637": 1, + "2669": 1, + "2690": 1, + "2691": 1, + "2705": 1, + "2707": 1, + "2709": 1, + "2717": 1, + "2720": 1, + "2746": 1, + "2758": 1, + "2763": 1, + "2784": 1, + "2794": 1, + "2809": 1, + "2812": 1, + "2856": 1, + "2876": 1, + "2982": 1, + "3007": 1, + "3182": 1, + "3187": 1, + "3194": 1, + "3360": 1, + "3379": 1, + "3457": 1, + "3483": 1, + "3492": 1, + "3501": 1, + "3513": 1, + "3524": 1, + "3598": 1, + "3618": 1, + "3626": 1, + "3648": 1, + "3844": 1, + "3851": 1, + "3854": 1, + "3878": 1, + "3920": 1, + "3981": 1, + "4043": 1, + "4045": 1, + "4141": 1, + "4148": 1, + "4214": 1, + "4217": 1, + "4228": 1, + "4251": 1, + "4413": 1, + "4462": 1, + "4567": 1, + "4665": 1, + "4692": 1, + "4757": 1, + "4777": 1, + "4919": 1, + "4926": 1, + "4929": 1, + "5053": 1, + "5133": 1, + "5321": 1, + "5379": 1, + "5403": 1, + "5574": 1, + "5594": 1, + "5712": 1, + "5720": 1, + "5741": 1, + "5748": 1, + "5754": 1, + "5757": 1, + "5796": 1, + "5804": 1, + "5816": 2, + "5829": 1, + "5851": 1, + "5864": 1, + "5880": 1, + "5929": 1, + "5930": 1, + "5933": 1, + "5936": 1, + "5964": 1, + "6148": 1, + "6167": 1, + "6260": 1, + "6282": 1, + "6294": 1, + "6474": 1, + "6507": 1, + "6509": 1, + "6529": 1, + "6721": 1, + "6911": 1, + "7119": 1, + "7152": 1, + "7249": 1, + "7262": 1, + "7293": 1, + "7328": 1, + "7524": 1, + "7702": 1, + "7713": 1, + "7746": 1, + "7775": 1, + "7978": 1, + "8094": 1, + "8199": 1, + "8221": 1, + "8231": 1, + "8286": 1, + "8296": 1, + "8319": 1, + "8428": 1, + "8473": 1, + "8476": 1, + "8549": 1, + "8594": 1, + "8602": 1, + "8643": 1, + "8648": 1, + "8650": 1, + "8653": 1, + "8662": 1, + "8678": 1, + "8686": 1, + "8689": 2, + "8693": 1, + "8697": 1, + "8734": 1, + "8947": 1, + "8958": 1, + "9091": 1, + "9124": 1, + "9170": 1, + "9307": 1, + "9380": 1, + "9436": 1, + "9455": 1, + "9985": 1, + "10138": 1, + "10530": 1, + "10648": 1, + "10680": 1, + "10750": 1, + "11085": 1, + "11262": 1, + "11477": 1, + "11567": 1, + "11627": 1, + "11717": 1, + "11748": 1, + "11864": 1, + "11893": 1, + "11953": 1, + "12100": 1, + "12123": 1, + "12140": 1, + "12582": 1, + "12662": 1, + "12690": 1, + "12838": 1, + "13248": 1, + "13605": 1, + "13641": 1, + "13720": 1, + "13851": 1, + "13992": 1, + "14317": 1, + "14362": 1, + "14374": 1, + "14719": 1, + "14985": 1, + "15097": 1, + "15247": 1, + "15262": 1, + "15302": 1, + "15390": 1, + "15541": 1, + "15980": 1, + "16074": 1, + "16151": 1, + "16223": 1, + "16408": 1, + "16490": 1, + "16673": 1, + "16800": 1, + "17014": 1, + "17087": 1, + "17141": 1, + "17182": 1, + "17579": 1, + "17705": 1, + "17849": 1, + "18221": 1, + "18493": 1, + "18775": 1, + "18884": 1, + "18919": 1, + "19025": 1, + "19420": 1, + "19440": 1, + "19449": 1, + "19528": 1, + "19585": 1, + "19694": 1, + "19719": 1, + "19788": 1, + "20000": 1, + "20005": 1, + "20102": 1, + "20154": 1, + "20173": 1, + "20212": 1, + "20308": 1, + "20333": 1, + "20485": 1, + "20487": 1, + "20547": 1, + "20595": 1, + "20614": 1, + "20627": 1, + "20670": 1, + "20696": 1, + "20701": 1, + "20704": 1, + "20718": 1, + "20777": 1, + "20779": 1, + "20792": 1, + "20834": 2, + "20840": 1, + "20849": 1, + "20852": 1, + "20857": 1, + "20890": 1, + "20895": 1, + "20907": 1, + "20912": 1, + "21003": 1, + "21013": 1, + "21017": 1, + "21056": 1, + "21108": 1, + "21131": 1, + "21143": 1, + "21170": 1, + "21253": 1, + "21285": 1, + "21313": 1, + "21314": 1, + "21337": 1, + "21340": 1, + "21438": 1, + "21443": 1, + "21480": 1, + "21507": 1, + "21519": 1, + "21534": 1, + "21536": 1, + "21604": 1, + "21613": 1, + "21631": 1, + "21641": 1, + "21656": 1, + "21671": 1, + "21675": 1, + "21707": 1, + "21744": 1, + "21745": 1, + "21747": 1, + "21760": 1, + "21785": 1, + "21788": 1, + "21817": 1, + "21831": 1, + "21838": 1, + "21852": 1, + "21870": 1, + "21879": 1, + "21930": 1, + "21944": 1, + "21957": 1, + "21971": 1, + "22040": 1, + "22052": 1, + "22104": 1, + "22158": 1, + "22163": 1, + "22168": 1, + "22180": 1, + "22188": 1, + "22189": 1, + "22203": 1, + "22343": 1, + "22344": 1, + "22358": 1, + "22391": 1, + "22463": 1, + "22539": 1, + "22561": 1, + "22582": 1, + "22594": 1, + "22605": 1, + "22618": 1, + "22625": 1, + "22631": 1, + "22639": 1, + "22644": 1, + "22646": 1, + "22648": 1, + "22655": 1, + "22661": 1, + "22664": 1, + "22671": 1, + "22704": 1, + "22705": 1, + "22742": 1, + "22746": 1, + "22747": 1, + "22769": 1, + "22792": 1, + "22801": 1, + "22815": 1, + "22847": 1, + "22876": 1, + "22919": 1, + "22926": 1, + "22969": 1, + "22977": 1, + "23000": 1, + "23002": 1, + "23007": 2, + "23012": 1, + "23014": 1, + "23032": 1, + "23043": 1, + "23065": 1, + "23109": 1, + "23143": 1, + "23168": 1, + "23175": 1, + "23180": 1, + "23190": 1, + "23341": 1, + "23361": 1, + "23384": 1, + "24132": 1, + "24234": 1, + "24421": 1, + "25293": 1, + "25399": 1, + "25558": 1, + "26426": 1, + "26962": 1, + "27033": 1, + "27303": 1, + "28204": 1, + "28327": 1, + "28461": 1, + "28564": 1, + "29439": 1, + "29540": 1, + "29546": 1, + "30504": 2, + "30508": 1, + "30510": 1, + "30580": 1, + "30602": 1, + "30615": 1, + "30655": 1, + "30656": 1, + "30696": 2, + "30711": 1, + "30714": 1, + "30715": 1, + "30716": 1, + "30717": 1, + "30721": 1, + "30731": 1, + "30740": 2, + "30746": 1, + "30748": 1, + "30821": 1, + "30830": 1, + "30876": 1, + "30882": 1, + "30883": 1, + "30884": 1, + "30897": 1, + "30910": 1, + "30948": 2, + "30951": 2, + "30952": 1, + "30986": 1, + "30988": 1, + "30989": 2, + "30993": 1, + "30995": 1, + "31044": 1, + "31061": 1, + "31073": 2, + "31076": 2, + "31081": 1, + "31082": 1, + "31083": 1, + "31084": 2, + "31087": 1, + "31090": 1, + "31093": 1, + "31094": 1, + "31101": 1, + "31104": 1, + "31105": 1, + "31108": 1, + "31115": 1, + "31120": 1, + "31123": 1, + "31126": 1, + "31127": 3, + "31128": 1, + "31131": 1, + "31132": 2, + "31133": 1, + "31136": 2, + "31154": 2, + "31155": 1, + "31157": 4, + "31158": 2, + "31160": 2, + "31161": 1, + "31162": 2, + "31167": 1, + "31168": 1, + "31169": 1, + "31170": 3, + "31171": 2, + "31173": 1, + "31174": 1, + "31175": 4, + "31176": 1, + "31178": 2, + "31180": 1, + "31182": 1, + "31202": 2, + "31208": 1, + "31209": 2, + "31225": 1, + "31227": 1, + "31233": 1, + "31240": 1, + "31242": 1, + "31243": 1, + "31249": 1, + "31253": 1, + "31254": 1, + "31262": 1, + "31266": 4, + "31267": 1, + "31268": 2, + "31269": 2, + "31274": 2, + "31300": 1, + "31301": 2, + "31303": 1, + "31304": 1, + "31305": 1, + "31307": 1, + "31310": 2, + "31311": 1, + "31312": 1, + "31314": 4, + "31316": 1, + "31318": 1, + "31319": 1, + "31321": 1, + "31323": 1, + "31324": 1, + "31326": 1, + "31328": 3, + "31330": 1, + "31331": 1, + "31332": 4, + "31334": 3, + "31335": 2, + "31336": 1, + "31337": 1, + "31338": 1, + "31342": 1, + "31346": 1, + "31347": 1, + "31348": 1, + "31349": 1, + "31350": 2, + "31352": 1, + "31356": 4, + "31357": 1, + "31359": 2, + "31361": 2, + "31365": 1, + "31366": 1, + "31367": 1, + "31369": 2, + "31370": 1, + "31371": 2, + "31374": 1, + "31375": 2, + "31376": 2, + "31381": 1, + "31382": 2, + "31393": 1, + "31394": 5, + "31395": 1, + "31397": 1, + "31398": 1, + "31400": 1, + "31401": 1, + "31402": 1, + "31408": 2, + "31414": 1, + "31415": 3, + "31417": 2, + "31418": 2, + "31420": 2, + "31421": 1, + "31427": 2, + "31432": 1, + "31433": 2, + "31435": 1, + "31437": 1, + "31438": 1, + "31441": 1, + "31445": 1, + "31447": 1, + "31450": 1, + "31454": 2, + "31456": 1, + "31458": 1, + "31459": 1, + "31460": 1, + "31461": 3, + "31464": 1, + "31466": 2, + "31468": 1, + "31469": 1, + "31470": 1, + "31471": 1, + "31472": 1, + "31473": 1, + "31474": 1, + "31479": 1, + "31480": 1, + "31486": 1, + "31488": 1, + "31489": 2, + "31490": 2, + "31491": 1, + "31492": 1, + "31494": 1, + "31496": 1, + "31498": 1, + "31502": 1, + "31505": 2, + "31506": 1, + "31507": 1, + "31513": 1, + "31514": 1, + "31516": 1, + "31517": 2, + "31518": 2, + "31522": 2, + "31523": 2, + "31524": 1, + "31527": 1, + "31528": 1, + "31529": 2, + "31530": 1, + "31531": 1, + "31540": 1, + "31546": 2, + "31555": 2, + "31556": 2, + "31559": 2, + "31560": 1, + "31563": 2, + "31564": 1, + "31565": 2, + "31566": 1, + "31567": 1, + "31568": 2, + "31575": 2, + "31576": 3, + "31580": 1, + "31582": 1, + "31583": 3, + "31586": 2, + "31587": 1, + "31591": 1, + "31593": 2, + "31594": 1, + "31602": 2, + "31603": 1, + "31606": 1, + "31608": 1, + "31611": 1, + "31613": 1, + "31614": 1, + "31616": 1, + "31617": 1, + "31619": 2, + "31620": 1, + "31624": 1, + "31625": 2, + "31626": 2, + "31629": 1, + "31630": 1, + "31631": 1, + "31632": 2, + "31633": 1, + "31637": 2, + "31639": 1, + "31640": 1, + "31644": 1, + "31650": 1, + "31651": 2, + "31654": 1, + "31658": 1, + "31662": 2, + "31663": 1, + "31664": 1, + "31665": 1, + "31668": 2, + "31679": 1, + "31682": 1, + "31683": 1, + "31685": 1, + "31692": 1, + "31695": 1, + "31696": 1, + "31699": 2, + "31700": 3, + "31701": 1, + "31702": 1, + "31703": 1, + "31705": 2, + "31706": 3, + "31708": 2, + "31709": 1, + "31711": 1, + "31715": 1, + "31719": 1, + "31726": 2, + "31730": 1, + "31732": 1, + "31733": 1, + "31736": 2, + "31739": 2, + "31740": 1, + "31743": 1, + "31744": 1, + "31745": 1, + "31746": 1, + "31747": 1, + "31749": 1, + "31753": 1, + "31754": 1, + "31755": 1, + "31756": 1, + "31758": 2, + "31763": 2, + "31764": 2, + "31766": 2, + "31767": 1, + "31768": 1, + "31773": 1, + "31782": 1, + "31784": 1, + "31785": 1, + "31794": 1, + "31795": 1, + "31797": 1, + "31798": 5, + "31799": 2, + "31801": 1, + "31807": 1, + "31812": 1, + "31823": 1, + "31827": 1, + "31828": 1, + "31829": 1, + "31830": 1, + "31837": 1, + "31838": 1, + "31839": 1, + "31845": 1, + "31847": 1, + "31852": 1, + "31853": 1, + "31862": 1, + "31863": 2, + "31864": 1, + "31870": 1, + "31872": 1, + "31873": 1, + "31876": 1, + "31878": 1, + "31879": 1, + "31880": 1, + "31881": 1, + "31883": 2, + "31889": 1, + "31900": 1, + "31903": 1, + "31916": 1, + "31917": 1, + "31930": 1, + "31935": 1, + "31939": 2, + "31940": 1, + "31941": 1, + "31943": 1, + "31944": 1, + "31948": 1, + "31955": 1, + "31958": 1, + "31964": 1, + "31966": 1, + "31973": 1, + "31974": 1, + "31982": 1, + "31997": 2, + "32001": 1, + "32003": 1, + "32004": 2, + "32015": 1, + "32017": 1, + "32018": 1, + "32030": 1, + "32038": 1, + "32040": 1, + "32043": 1, + "32067": 3, + "32070": 1, + "32073": 1, + "32075": 1, + "32076": 2, + "32078": 1, + "32079": 1, + "32084": 2, + "32088": 1, + "32090": 1, + "32092": 1, + "32097": 1, + "32099": 1, + "32102": 3, + "32105": 1, + "32106": 1, + "32111": 1, + "32114": 1, + "32115": 1, + "32116": 1, + "32118": 1, + "32124": 1, + "32126": 1, + "32129": 1, + "32131": 1, + "32132": 3, + "32135": 2, + "32137": 1, + "32141": 1, + "32143": 1, + "32144": 1, + "32150": 1, + "32158": 2, + "32159": 1, + "32162": 3, + "32163": 3, + "32164": 2, + "32165": 1, + "32170": 2, + "32178": 1, + "32179": 1, + "32181": 2, + "32182": 2, + "32186": 1, + "32187": 1, + "32188": 1, + "32190": 2, + "32193": 3, + "32195": 1, + "32199": 1, + "32203": 1, + "32204": 2, + "32207": 1, + "32208": 1, + "32211": 1, + "32215": 1, + "32217": 2, + "32222": 1, + "32226": 1, + "32229": 1, + "32230": 2, + "32232": 1, + "32235": 1, + "32236": 1, + "32239": 3, + "32245": 1, + "32248": 1, + "32249": 1, + "32252": 1, + "32254": 1, + "32262": 1, + "32265": 1, + "32273": 1, + "32304": 1, + "32315": 1, + "32317": 1, + "32334": 2, + "32335": 1, + "32336": 1, + "32345": 1, + "32370": 2, + "32371": 1 + }, + "started": "2020-09-07T18:50:57.801Z", + "trafficStats": { + "incomingCompressionRatio": 0.7599775390625, + "incomingOctetsAppLevel": 32768000, + "incomingOctetsWebSocketLevel": 24902944, + "incomingOctetsWireLevel": 24910944, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.00032124715856888245, + "outgoingCompressionRatio": 0.7608511962890625, + "outgoingOctetsAppLevel": 32768000, + "outgoingOctetsWebSocketLevel": 24931572, + "outgoingOctetsWireLevel": 25322154, + "outgoingWebSocketFrames": 97889, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.015666160160297954, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 96889, + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 3, + "3": 4, + "4": 5, + "5": 3, + "6": 3, + "7": 3, + "8": 5, + "9": 1, + "10": 3, + "11": 3, + "12": 2, + "13": 6, + "14": 5, + "15": 4, + "16": 4, + "17": 1, + "18": 1, + "19": 9, + "20": 2, + "21": 6, + "22": 1, + "23": 1, + "24": 6, + "25": 4, + "26": 6, + "27": 4, + "28": 4, + "29": 3, + "30": 1, + "31": 1, + "32": 4, + "33": 3, + "34": 6, + "35": 7, + "36": 3, + "37": 4, + "38": 6, + "39": 5, + "40": 2, + "41": 2, + "42": 6, + "43": 3, + "44": 1, + "45": 5, + "46": 2, + "47": 2, + "48": 5, + "50": 2, + "51": 5, + "52": 2, + "53": 4, + "54": 5, + "55": 2, + "56": 1, + "57": 6, + "58": 4, + "59": 3, + "60": 1, + "61": 7, + "62": 3, + "63": 2, + "64": 4, + "65": 2, + "66": 1, + "67": 3, + "68": 4, + "69": 5, + "70": 7, + "71": 3, + "72": 6, + "73": 3, + "74": 4, + "75": 4, + "76": 3, + "77": 2, + "78": 5, + "79": 5, + "80": 2, + "81": 1, + "82": 5, + "83": 2, + "84": 3, + "85": 5, + "86": 5, + "87": 5, + "88": 7, + "89": 4, + "90": 3, + "91": 6, + "92": 5, + "93": 5, + "94": 2, + "95": 3, + "96": 7, + "97": 3, + "98": 5, + "99": 8, + "100": 6, + "101": 1, + "102": 5, + "103": 9, + "104": 1, + "105": 3, + "106": 5, + "107": 4, + "108": 6, + "109": 5, + "110": 7, + "111": 3, + "112": 5, + "113": 7, + "114": 4, + "115": 2, + "116": 3, + "117": 5, + "118": 4, + "119": 3, + "120": 6, + "121": 4, + "122": 4, + "123": 4, + "124": 4, + "125": 2, + "126": 7, + "127": 5, + "130": 5, + "131": 6, + "132": 8, + "133": 4, + "134": 3, + "135": 7, + "136": 6, + "137": 2, + "138": 4, + "139": 5, + "140": 8, + "141": 4, + "142": 1, + "143": 7, + "144": 9, + "145": 2, + "146": 3, + "147": 6, + "148": 2, + "149": 5, + "150": 8, + "151": 3, + "152": 2, + "153": 3, + "154": 2, + "155": 5, + "156": 2, + "157": 3, + "158": 5, + "159": 4, + "160": 5, + "161": 7, + "162": 1, + "163": 2, + "164": 1, + "165": 3, + "166": 9, + "167": 5, + "168": 1, + "169": 4, + "170": 5, + "171": 3, + "172": 4, + "173": 4, + "174": 5, + "175": 6, + "176": 3, + "177": 5, + "178": 2, + "179": 2, + "180": 3, + "181": 2, + "182": 6, + "183": 8, + "184": 7, + "185": 1, + "186": 7, + "187": 4, + "188": 2, + "189": 4, + "190": 7, + "191": 4, + "192": 3, + "193": 1, + "194": 4, + "195": 4, + "196": 5, + "197": 1, + "198": 2, + "199": 5, + "200": 7, + "201": 3, + "202": 4, + "203": 5, + "204": 4, + "205": 7, + "206": 6, + "207": 2, + "208": 3, + "209": 4, + "210": 8, + "211": 3, + "212": 5, + "213": 6, + "214": 1, + "216": 2, + "217": 6, + "218": 4, + "219": 3, + "220": 6, + "221": 5, + "222": 5, + "223": 6, + "224": 3, + "225": 4, + "226": 3, + "227": 1, + "228": 4, + "229": 4, + "230": 1, + "231": 5, + "232": 4, + "234": 3, + "235": 4, + "237": 2, + "238": 6, + "239": 3, + "240": 5, + "241": 4, + "242": 3, + "243": 1, + "244": 3, + "245": 6, + "246": 5, + "247": 2, + "248": 4, + "249": 4, + "250": 2, + "251": 1, + "252": 7, + "253": 4, + "254": 1, + "255": 6, + "256": 4, + "257": 2, + "258": 2, + "259": 5, + "260": 96889 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333836266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888286e4e27f850c" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "86e4e27f" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_5_14.html b/autobahn/client/tungstenite_case_12_5_14.html new file mode 100644 index 0000000..9be7020 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_14.html @@ -0,0 +1,1395 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.5.14 : Pass - 6608 ms @ 2020-09-07T18:51:01.284Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=387&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 5g8xYeofpjuBZRFQd2L9PQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 8fsLohiF5VxjIOH3Sih0RSPHqs4=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
687616876
688116881
689216892
699216992
7000214000
719817198
720217202
720817208
723217232
724517245
725717257
748517485
751317513
752117521
776317763
778617786
781217812
814518145
816818168
817018170
852218522
863118631
871918719
876818768
891118911
940819408
941319413
944119441
946819468
948919489
949119491
980119801
9808219616
983019830
984419844
986119861
10302110302
10313110313
10365110365
10424110424
10439110439
10484110484
10714110714
10715110715
10721110721
10923110923
10951110951
10976110976
10977110977
11068111068
11114111114
11148111148
11184111184
11190111190
11205111205
11236111236
11305111305
11459111459
11587111587
11693111693
11887111887
11890111890
12005112005
12017112017
12099112099
12150112150
12604112604
12686112686
12784112784
13214113214
13340113340
13454113454
13788113788
13916113916
13981113981
14133114133
14147114147
14154114154
14167114167
14178114178
14183114183
14290114290
14298114298
14304114304
14358114358
14387114387
14394114394
14395114395
14452114452
14515114515
14518114518
14525114525
14558114558
14617114617
14627114627
14631114631
14645114645
14651114651
14658114658
14767114767
14894114894
15036115036
15696115696
15829115829
15904115904
15973115973
16019116019
16066116066
16484116484
16559116559
16675116675
17360117360
17497117497
17633117633
17817117817
17905117905
17996117996
18010118010
18108118108
18158118158
18658118658
18778118778
18918118918
19271119271
19385119385
19505119505
20149120149
20213120213
20271120271
20308120308
20394120394
20432120432
20676120676
20693120693
20709120709
21427121427
21529121529
21586121586
21686121686
21688121688
21698121698
22304122304
22313122313
22319122319
22659122659
22774122774
22817122817
22901122901
22953122953
23084123084
23657123657
23760123760
23867123867
23938123938
24048124048
24176124176
25067125067
25195125195
25313125313
25467125467
25541125541
25590125590
25648125648
25699125699
25792125792
26369126369
26396126396
26463126463
26966126966
27068127068
27185127185
27617127617
27649127649
27682127682
28068128068
28202128202
28337128337
28891128891
28972128972
28974128974
29080129080
29116129116
29152129152
29177129177
29278129278
29380129380
30493130493
30527130527
30550130550
30588130588
30979130979
31099131099
31176131176
31226131226
31271131271
31381131381
31727131727
31863131863
32005132005
32647132647
32721132721
32768132768
33314133314
33338133338
33419133419
33474133474
33509133509
33611133611
34187134187
34251134251
34301134301
34669134669
34774134774
34869134869
35145135145
35220135220
35231135231
36045136045
36099136099
36152136152
36168136168
36227136227
36278136278
36286136286
36306136306
36355136355
36383136383
36429136429
36446136446
37709137709
37778137778
37831137831
37840137840
37856137856
37889137889
37980137980
37984137984
38051138051
38240138240
38308138308
38379138379
38878138878
39010139010
39069139069
39136139136
39146139146
39199139199
39496139496
39627139627
39706139706
40500140500
40581140581
40586140586
40624140624
40740140740
40804140804
41457141457
41511141511
41529141529
41599141599
41654141654
41668141668
41685141685
41717141717
41722141722
41751141751
41787141787
41842141842
41876141876
41879141879
41888141888
41967141967
41982141982
42004142004
42005142005
42015142015
42036142036
42107142107
42141142141
42222142222
42238142238
42246142246
42256284512
42290142290
42304142304
42347142347
42348284696
42362142362
42364142364
42368142368
42376142376
42380142380
42418142418
42630142630
42633142633
42656142656
42661142661
42708142708
42709142709
42771142771
42782142782
42803142803
42862142862
42865142865
42872142872
42878142878
42942142942
42991142991
43145143145
43214143214
43226286452
43235286470
43270143270
43275143275
43286143286
43304143304
43306143306
43344143344
43467143467
43505143505
43509143509
43533143533
43548143548
43554143554
43562143562
43578143578
43612287224
43619143619
43643143643
43656143656
43662143662
43664143664
43692143692
43707143707
43717143717
43756143756
43773143773
43779143779
43786143786
43790143790
43792143792
43844143844
43848143848
43896143896
43918143918
43919143919
43929143929
43948143948
44052144052
44188144188
44435144435
44522144522
44566144566
44632144632
44690144690
44700144700
44978144978
45089145089
45198145198
45569145569
45577145577
45605145605
45735145735
45738145738
45741145741
45778145778
45824145824
45825145825
45831145831
45837145837
45860145860
45868145868
45886145886
45924145924
46345146345
46438146438
46440146440
47164147164
47295147295
47423147423
48601148601
48708148708
48811148811
49985149985
50097150097
50214150214
50718150718
50825150825
50927150927
52659152659
52711152711
52831152831
53192153192
53296153296
53399153399
55311155311
55408155408
55443155443
55512155512
55572155572
55698155698
57725157725
57833157833
57937157937
58214158214
58328158328
58451158451
59683159683
59734159734
59835159835
61005161005
61129161129
61165161165
61765161765
61767161767
61768161768
61844161844
61847161847
61848161848
619722123944
61973161973
62224162224
62247162247
622492124498
622562124512
62260162260
622642124528
62289162289
62291162291
62293162293
62325162325
62330162330
62331162331
62332162332
62338162338
62361162361
62369162369
62401162401
62406162406
624172124834
62420162420
62423162423
62424162424
62446162446
62449162449
62451162451
62455162455
62458162458
62459162459
62462162462
624732124946
62476162476
62477162477
62478162478
62479162479
62480162480
62481162481
62482162482
624832124966
624852124970
62497162497
62498162498
62499162499
62504162504
62506162506
62507162507
62508162508
62509162509
62510162510
62511162511
62514162514
625162125032
625172125034
625182125036
62523162523
62535162535
62537162537
62538162538
62540162540
62541162541
62542162542
62544162544
62551162551
62555162555
62580162580
62582162582
62586162586
625922125184
626003187800
62622162622
62624162624
626253187875
62626162626
62631162631
62633162633
626355313175
62638162638
62639162639
62640162640
62641162641
62647162647
626482125296
62649162649
62656162656
626682125336
62669162669
62672162672
626732125346
626745313370
62675162675
626762125352
62679162679
626842125368
626862125372
62687162687
626884250752
62708162708
62710162710
627122125424
627133188139
62714162714
62715162715
62716162716
627172125434
62718162718
62719162719
62722162722
62723162723
627262125452
62732162732
62736162736
627373188211
62739162739
627402125480
627412125482
627422125484
62744162744
627453188235
627462125492
62749162749
62757162757
62758162758
62759162759
627612125522
627632125526
627642125528
62766162766
627682125536
62769162769
627702125540
627723188316
627732125546
62774162774
62776162776
62777162777
62782162782
62784162784
62787162787
627892125578
62797162797
627982125596
627992125598
628012125602
62802162802
628052125610
62806162806
628072125614
628082125616
62812162812
62813162813
62827162827
62828162828
62829162829
62833162833
628382125676
62843162843
62844162844
62848162848
62849162849
62874162874
62878162878
628932125786
62894162894
62895162895
628972125794
62898162898
629023188706
62905162905
62914162914
62916162916
62921162921
62922162922
62923162923
629243188772
62929162929
629323188796
62936162936
62939162939
62940162940
62942162942
62945162945
629462125892
629472125894
62948162948
62951162951
62952162952
629532125906
62957162957
629583188874
62960162960
62961162961
62962162962
62964162964
62966162966
629723188916
629732125946
629772125954
62978162978
629792125958
62980162980
629813188943
63001163001
63004163004
630072126014
63015163015
63027163027
63032163032
630462126092
63053163053
631052126210
63108163108
631092126218
63110163110
63111163111
631152126230
63116163116
63119163119
631242126248
63128163128
63142163142
63145163145
631503189450
63153163153
63154163154
631553189465
63159163159
63162163162
63167163167
63170163170
631733189519
631742126348
63178163178
631822126364
63183163183
63184163184
63190163190
63196163196
63203163203
63206163206
63208163208
63223163223
63224163224
63231163231
632492126498
63262163262
63263163263
63368163368
63370163370
63371163371
63373163373
63376163376
63377163377
63392163392
63394163394
63396163396
63410163410
63411163411
63414163414
63448163448
634492126898
63450163450
634522126904
63457163457
63458163458
63467163467
63468163468
63486163486
63489163489
63495163495
63509163509
63512163512
63523163523
635242127048
635252127050
63529163529
63544163544
635462127092
63549163549
63550163550
63551163551
635522127104
63553163553
635772127154
63584163584
63609163609
63610163610
63614163614
636303190890
636322127264
63636163636
63656163656
636572127314
63660163660
63663163663
63666163666
63668163668
63669163669
636743191022
636762127352
63679163679
636812127362
63684163684
63689163689
636903191070
63691163691
636933191079
63694163694
63697163697
63699163699
637012127402
63702163702
637102127420
63711163711
63715163715
63733163733
63766163766
63785163785
63788163788
638053191415
63822163822
63823163823
63826163826
63829163829
63832163832
63833163833
638342127668
63835163835
63836163836
638423191526
63843163843
63853163853
63858163858
63865163865
63866163866
638672127734
638693191607
63870163870
63872163872
63881163881
63882163882
63885163885
638872127774
63888163888
63889163889
63891163891
63892163892
638942127788
63896163896
638972127794
63898163898
63901163901
639032127806
63913163913
63916163916
63918163918
63923163923
63941163941
63984163984
63986163986
63988163988
639992127998
64000164000
64092164092
64094164094
640962128192
640972128194
64109164109
64111164111
64113164113
641562128312
64163164163
64191164191
64227164227
642282128456
64240164240
64241164241
64242164242
642432128486
64245164245
642492128498
64254164254
64277164277
64280164280
64282164282
64292164292
64295164295
64296164296
64310164310
64314164314
64315164315
64316164316
64317164317
64333164333
64334164334
64339164339
64342164342
64348164348
643492128698
643503193050
64351164351
64368164368
64379164379
64383164383
64384164384
64395164395
64396164396
643973193191
64398164398
64400164400
64405164405
64423164423
64427164427
64428164428
64429164429
64431164431
64434164434
64437164437
64442164442
644502128900
64451164451
64453164453
64455164455
64468164468
64469164469
64470164470
64472164472
644763193428
64477164477
64479164479
Total100349716638
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
236
313
4624
5420
6424
7321
8324
919
10550
12672
13339
14684
15690
16580
17351
18590
19357
205100
21484
229198
23123
24124
258200
264104
279243
28128
298232
30390
31393
32264
337231
348272
353105
365180
384152
39278
40140
415205
42284
43286
444176
454180
46146
47147
483144
494196
503150
515255
523156
535265
545270
5512660
56156
578456
583174
593177
605300
612122
625310
634252
64164
656390
668528
675335
685340
69169
706420
714284
726432
732146
744296
752150
764304
776462
783234
79179
804320
814324
822164
833249
843252
85185
863258
878696
886528
895445
903270
915455
926552
934372
943282
959855
96196
972194
98198
992198
1005500
1014404
1024408
1034412
1043312
1055525
1065530
1073321
1094436
1103330
1113333
1121112
1132226
1141114
1151115
1164464
1178936
1186708
1197833
1201120
1213363
1223366
1231123
1242248
1253375
1262252
1271127
1302260
1313393
1325660
13381064
1346804
1356810
1364544
137111507
1386828
1395695
1406840
14191269
1425710
14371001
1444576
1452290
1465730
1473441
1484592
1495745
1505750
1511151
1524608
1531153
1541154
1552310
1561156
1572314
1584632
1596954
1602320
1613483
1621162
1635815
1642328
1651165
1672334
1683504
1695845
1702340
17161026
17261032
1733519
17481392
1753525
1763528
1773531
1782356
1805900
1814724
1824728
1842368
18571295
1863558
1874748
1882376
1891189
19091710
19181528
1923576
193101930
1945970
19561170
1963588
197101970
1984792
1993597
2002400
2013603
2024808
2034812
2042408
2063618
2073621
2083624
20961254
2103630
21151055
21261272
2132426
2141214
21551075
21661296
21781736
2183654
2193657
22051100
2214884
22251110
2233669
2244896
2254900
2264904
2273681
22851140
22951145
23071610
2314924
23281856
23351165
23451170
23551175
23661416
2373711
23851190
2391239
240122880
24151205
2424968
24361458
2454980
2462492
24751235
2481248
2493747
25061500
25141004
25241008
25341012
2542508
2552510
25671792
2573771
25841032
2592518
26019389750413220
Total19489950545270
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
0193897
21000
81
Total194898
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333837266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888239ab81313a43
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3339616238313331
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_5_14.json b/autobahn/client/tungstenite_case_12_5_14.json new file mode 100644 index 0000000..d8fbee1 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_14.json @@ -0,0 +1,1242 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 387, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 6608, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=387&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 5g8xYeofpjuBZRFQd2L9PQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 8fsLohiF5VxjIOH3Sih0RSPHqs4=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.5.14", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "6876": 1, + "6881": 1, + "6892": 1, + "6992": 1, + "7000": 2, + "7198": 1, + "7202": 1, + "7208": 1, + "7232": 1, + "7245": 1, + "7257": 1, + "7485": 1, + "7513": 1, + "7521": 1, + "7763": 1, + "7786": 1, + "7812": 1, + "8145": 1, + "8168": 1, + "8170": 1, + "8522": 1, + "8631": 1, + "8719": 1, + "8768": 1, + "8911": 1, + "9408": 1, + "9413": 1, + "9441": 1, + "9468": 1, + "9489": 1, + "9491": 1, + "9801": 1, + "9808": 2, + "9830": 1, + "9844": 1, + "9861": 1, + "10302": 1, + "10313": 1, + "10365": 1, + "10424": 1, + "10439": 1, + "10484": 1, + "10714": 1, + "10715": 1, + "10721": 1, + "10923": 1, + "10951": 1, + "10976": 1, + "10977": 1, + "11068": 1, + "11114": 1, + "11148": 1, + "11184": 1, + "11190": 1, + "11205": 1, + "11236": 1, + "11305": 1, + "11459": 1, + "11587": 1, + "11693": 1, + "11887": 1, + "11890": 1, + "12005": 1, + "12017": 1, + "12099": 1, + "12150": 1, + "12604": 1, + "12686": 1, + "12784": 1, + "13214": 1, + "13340": 1, + "13454": 1, + "13788": 1, + "13916": 1, + "13981": 1, + "14133": 1, + "14147": 1, + "14154": 1, + "14167": 1, + "14178": 1, + "14183": 1, + "14290": 1, + "14298": 1, + "14304": 1, + "14358": 1, + "14387": 1, + "14394": 1, + "14395": 1, + "14452": 1, + "14515": 1, + "14518": 1, + "14525": 1, + "14558": 1, + "14617": 1, + "14627": 1, + "14631": 1, + "14645": 1, + "14651": 1, + "14658": 1, + "14767": 1, + "14894": 1, + "15036": 1, + "15696": 1, + "15829": 1, + "15904": 1, + "15973": 1, + "16019": 1, + "16066": 1, + "16484": 1, + "16559": 1, + "16675": 1, + "17360": 1, + "17497": 1, + "17633": 1, + "17817": 1, + "17905": 1, + "17996": 1, + "18010": 1, + "18108": 1, + "18158": 1, + "18658": 1, + "18778": 1, + "18918": 1, + "19271": 1, + "19385": 1, + "19505": 1, + "20149": 1, + "20213": 1, + "20271": 1, + "20308": 1, + "20394": 1, + "20432": 1, + "20676": 1, + "20693": 1, + "20709": 1, + "21427": 1, + "21529": 1, + "21586": 1, + "21686": 1, + "21688": 1, + "21698": 1, + "22304": 1, + "22313": 1, + "22319": 1, + "22659": 1, + "22774": 1, + "22817": 1, + "22901": 1, + "22953": 1, + "23084": 1, + "23657": 1, + "23760": 1, + "23867": 1, + "23938": 1, + "24048": 1, + "24176": 1, + "25067": 1, + "25195": 1, + "25313": 1, + "25467": 1, + "25541": 1, + "25590": 1, + "25648": 1, + "25699": 1, + "25792": 1, + "26369": 1, + "26396": 1, + "26463": 1, + "26966": 1, + "27068": 1, + "27185": 1, + "27617": 1, + "27649": 1, + "27682": 1, + "28068": 1, + "28202": 1, + "28337": 1, + "28891": 1, + "28972": 1, + "28974": 1, + "29080": 1, + "29116": 1, + "29152": 1, + "29177": 1, + "29278": 1, + "29380": 1, + "30493": 1, + "30527": 1, + "30550": 1, + "30588": 1, + "30979": 1, + "31099": 1, + "31176": 1, + "31226": 1, + "31271": 1, + "31381": 1, + "31727": 1, + "31863": 1, + "32005": 1, + "32647": 1, + "32721": 1, + "32768": 1, + "33314": 1, + "33338": 1, + "33419": 1, + "33474": 1, + "33509": 1, + "33611": 1, + "34187": 1, + "34251": 1, + "34301": 1, + "34669": 1, + "34774": 1, + "34869": 1, + "35145": 1, + "35220": 1, + "35231": 1, + "36045": 1, + "36099": 1, + "36152": 1, + "36168": 1, + "36227": 1, + "36278": 1, + "36286": 1, + "36306": 1, + "36355": 1, + "36383": 1, + "36429": 1, + "36446": 1, + "37709": 1, + "37778": 1, + "37831": 1, + "37840": 1, + "37856": 1, + "37889": 1, + "37980": 1, + "37984": 1, + "38051": 1, + "38240": 1, + "38308": 1, + "38379": 1, + "38878": 1, + "39010": 1, + "39069": 1, + "39136": 1, + "39146": 1, + "39199": 1, + "39496": 1, + "39627": 1, + "39706": 1, + "40500": 1, + "40581": 1, + "40586": 1, + "40624": 1, + "40740": 1, + "40804": 1, + "41457": 1, + "41511": 1, + "41529": 1, + "41599": 1, + "41654": 1, + "41668": 1, + "41685": 1, + "41717": 1, + "41722": 1, + "41751": 1, + "41787": 1, + "41842": 1, + "41876": 1, + "41879": 1, + "41888": 1, + "41967": 1, + "41982": 1, + "42004": 1, + "42005": 1, + "42015": 1, + "42036": 1, + "42107": 1, + "42141": 1, + "42222": 1, + "42238": 1, + "42246": 1, + "42256": 2, + "42290": 1, + "42304": 1, + "42347": 1, + "42348": 2, + "42362": 1, + "42364": 1, + "42368": 1, + "42376": 1, + "42380": 1, + "42418": 1, + "42630": 1, + "42633": 1, + "42656": 1, + "42661": 1, + "42708": 1, + "42709": 1, + "42771": 1, + "42782": 1, + "42803": 1, + "42862": 1, + "42865": 1, + "42872": 1, + "42878": 1, + "42942": 1, + "42991": 1, + "43145": 1, + "43214": 1, + "43226": 2, + "43235": 2, + "43270": 1, + "43275": 1, + "43286": 1, + "43304": 1, + "43306": 1, + "43344": 1, + "43467": 1, + "43505": 1, + "43509": 1, + "43533": 1, + "43548": 1, + "43554": 1, + "43562": 1, + "43578": 1, + "43612": 2, + "43619": 1, + "43643": 1, + "43656": 1, + "43662": 1, + "43664": 1, + "43692": 1, + "43707": 1, + "43717": 1, + "43756": 1, + "43773": 1, + "43779": 1, + "43786": 1, + "43790": 1, + "43792": 1, + "43844": 1, + "43848": 1, + "43896": 1, + "43918": 1, + "43919": 1, + "43929": 1, + "43948": 1, + "44052": 1, + "44188": 1, + "44435": 1, + "44522": 1, + "44566": 1, + "44632": 1, + "44690": 1, + "44700": 1, + "44978": 1, + "45089": 1, + "45198": 1, + "45569": 1, + "45577": 1, + "45605": 1, + "45735": 1, + "45738": 1, + "45741": 1, + "45778": 1, + "45824": 1, + "45825": 1, + "45831": 1, + "45837": 1, + "45860": 1, + "45868": 1, + "45886": 1, + "45924": 1, + "46345": 1, + "46438": 1, + "46440": 1, + "47164": 1, + "47295": 1, + "47423": 1, + "48601": 1, + "48708": 1, + "48811": 1, + "49985": 1, + "50097": 1, + "50214": 1, + "50718": 1, + "50825": 1, + "50927": 1, + "52659": 1, + "52711": 1, + "52831": 1, + "53192": 1, + "53296": 1, + "53399": 1, + "55311": 1, + "55408": 1, + "55443": 1, + "55512": 1, + "55572": 1, + "55698": 1, + "57725": 1, + "57833": 1, + "57937": 1, + "58214": 1, + "58328": 1, + "58451": 1, + "59683": 1, + "59734": 1, + "59835": 1, + "61005": 1, + "61129": 1, + "61165": 1, + "61765": 1, + "61767": 1, + "61768": 1, + "61844": 1, + "61847": 1, + "61848": 1, + "61972": 2, + "61973": 1, + "62224": 1, + "62247": 1, + "62249": 2, + "62256": 2, + "62260": 1, + "62264": 2, + "62289": 1, + "62291": 1, + "62293": 1, + "62325": 1, + "62330": 1, + "62331": 1, + "62332": 1, + "62338": 1, + "62361": 1, + "62369": 1, + "62401": 1, + "62406": 1, + "62417": 2, + "62420": 1, + "62423": 1, + "62424": 1, + "62446": 1, + "62449": 1, + "62451": 1, + "62455": 1, + "62458": 1, + "62459": 1, + "62462": 1, + "62473": 2, + "62476": 1, + "62477": 1, + "62478": 1, + "62479": 1, + "62480": 1, + "62481": 1, + "62482": 1, + "62483": 2, + "62485": 2, + "62497": 1, + "62498": 1, + "62499": 1, + "62504": 1, + "62506": 1, + "62507": 1, + "62508": 1, + "62509": 1, + "62510": 1, + "62511": 1, + "62514": 1, + "62516": 2, + "62517": 2, + "62518": 2, + "62523": 1, + "62535": 1, + "62537": 1, + "62538": 1, + "62540": 1, + "62541": 1, + "62542": 1, + "62544": 1, + "62551": 1, + "62555": 1, + "62580": 1, + "62582": 1, + "62586": 1, + "62592": 2, + "62600": 3, + "62622": 1, + "62624": 1, + "62625": 3, + "62626": 1, + "62631": 1, + "62633": 1, + "62635": 5, + "62638": 1, + "62639": 1, + "62640": 1, + "62641": 1, + "62647": 1, + "62648": 2, + "62649": 1, + "62656": 1, + "62668": 2, + "62669": 1, + "62672": 1, + "62673": 2, + "62674": 5, + "62675": 1, + "62676": 2, + "62679": 1, + "62684": 2, + "62686": 2, + "62687": 1, + "62688": 4, + "62708": 1, + "62710": 1, + "62712": 2, + "62713": 3, + "62714": 1, + "62715": 1, + "62716": 1, + "62717": 2, + "62718": 1, + "62719": 1, + "62722": 1, + "62723": 1, + "62726": 2, + "62732": 1, + "62736": 1, + "62737": 3, + "62739": 1, + "62740": 2, + "62741": 2, + "62742": 2, + "62744": 1, + "62745": 3, + "62746": 2, + "62749": 1, + "62757": 1, + "62758": 1, + "62759": 1, + "62761": 2, + "62763": 2, + "62764": 2, + "62766": 1, + "62768": 2, + "62769": 1, + "62770": 2, + "62772": 3, + "62773": 2, + "62774": 1, + "62776": 1, + "62777": 1, + "62782": 1, + "62784": 1, + "62787": 1, + "62789": 2, + "62797": 1, + "62798": 2, + "62799": 2, + "62801": 2, + "62802": 1, + "62805": 2, + "62806": 1, + "62807": 2, + "62808": 2, + "62812": 1, + "62813": 1, + "62827": 1, + "62828": 1, + "62829": 1, + "62833": 1, + "62838": 2, + "62843": 1, + "62844": 1, + "62848": 1, + "62849": 1, + "62874": 1, + "62878": 1, + "62893": 2, + "62894": 1, + "62895": 1, + "62897": 2, + "62898": 1, + "62902": 3, + "62905": 1, + "62914": 1, + "62916": 1, + "62921": 1, + "62922": 1, + "62923": 1, + "62924": 3, + "62929": 1, + "62932": 3, + "62936": 1, + "62939": 1, + "62940": 1, + "62942": 1, + "62945": 1, + "62946": 2, + "62947": 2, + "62948": 1, + "62951": 1, + "62952": 1, + "62953": 2, + "62957": 1, + "62958": 3, + "62960": 1, + "62961": 1, + "62962": 1, + "62964": 1, + "62966": 1, + "62972": 3, + "62973": 2, + "62977": 2, + "62978": 1, + "62979": 2, + "62980": 1, + "62981": 3, + "63001": 1, + "63004": 1, + "63007": 2, + "63015": 1, + "63027": 1, + "63032": 1, + "63046": 2, + "63053": 1, + "63105": 2, + "63108": 1, + "63109": 2, + "63110": 1, + "63111": 1, + "63115": 2, + "63116": 1, + "63119": 1, + "63124": 2, + "63128": 1, + "63142": 1, + "63145": 1, + "63150": 3, + "63153": 1, + "63154": 1, + "63155": 3, + "63159": 1, + "63162": 1, + "63167": 1, + "63170": 1, + "63173": 3, + "63174": 2, + "63178": 1, + "63182": 2, + "63183": 1, + "63184": 1, + "63190": 1, + "63196": 1, + "63203": 1, + "63206": 1, + "63208": 1, + "63223": 1, + "63224": 1, + "63231": 1, + "63249": 2, + "63262": 1, + "63263": 1, + "63368": 1, + "63370": 1, + "63371": 1, + "63373": 1, + "63376": 1, + "63377": 1, + "63392": 1, + "63394": 1, + "63396": 1, + "63410": 1, + "63411": 1, + "63414": 1, + "63448": 1, + "63449": 2, + "63450": 1, + "63452": 2, + "63457": 1, + "63458": 1, + "63467": 1, + "63468": 1, + "63486": 1, + "63489": 1, + "63495": 1, + "63509": 1, + "63512": 1, + "63523": 1, + "63524": 2, + "63525": 2, + "63529": 1, + "63544": 1, + "63546": 2, + "63549": 1, + "63550": 1, + "63551": 1, + "63552": 2, + "63553": 1, + "63577": 2, + "63584": 1, + "63609": 1, + "63610": 1, + "63614": 1, + "63630": 3, + "63632": 2, + "63636": 1, + "63656": 1, + "63657": 2, + "63660": 1, + "63663": 1, + "63666": 1, + "63668": 1, + "63669": 1, + "63674": 3, + "63676": 2, + "63679": 1, + "63681": 2, + "63684": 1, + "63689": 1, + "63690": 3, + "63691": 1, + "63693": 3, + "63694": 1, + "63697": 1, + "63699": 1, + "63701": 2, + "63702": 1, + "63710": 2, + "63711": 1, + "63715": 1, + "63733": 1, + "63766": 1, + "63785": 1, + "63788": 1, + "63805": 3, + "63822": 1, + "63823": 1, + "63826": 1, + "63829": 1, + "63832": 1, + "63833": 1, + "63834": 2, + "63835": 1, + "63836": 1, + "63842": 3, + "63843": 1, + "63853": 1, + "63858": 1, + "63865": 1, + "63866": 1, + "63867": 2, + "63869": 3, + "63870": 1, + "63872": 1, + "63881": 1, + "63882": 1, + "63885": 1, + "63887": 2, + "63888": 1, + "63889": 1, + "63891": 1, + "63892": 1, + "63894": 2, + "63896": 1, + "63897": 2, + "63898": 1, + "63901": 1, + "63903": 2, + "63913": 1, + "63916": 1, + "63918": 1, + "63923": 1, + "63941": 1, + "63984": 1, + "63986": 1, + "63988": 1, + "63999": 2, + "64000": 1, + "64092": 1, + "64094": 1, + "64096": 2, + "64097": 2, + "64109": 1, + "64111": 1, + "64113": 1, + "64156": 2, + "64163": 1, + "64191": 1, + "64227": 1, + "64228": 2, + "64240": 1, + "64241": 1, + "64242": 1, + "64243": 2, + "64245": 1, + "64249": 2, + "64254": 1, + "64277": 1, + "64280": 1, + "64282": 1, + "64292": 1, + "64295": 1, + "64296": 1, + "64310": 1, + "64314": 1, + "64315": 1, + "64316": 1, + "64317": 1, + "64333": 1, + "64334": 1, + "64339": 1, + "64342": 1, + "64348": 1, + "64349": 2, + "64350": 3, + "64351": 1, + "64368": 1, + "64379": 1, + "64383": 1, + "64384": 1, + "64395": 1, + "64396": 1, + "64397": 3, + "64398": 1, + "64400": 1, + "64405": 1, + "64423": 1, + "64427": 1, + "64428": 1, + "64429": 1, + "64431": 1, + "64434": 1, + "64437": 1, + "64442": 1, + "64450": 2, + "64451": 1, + "64453": 1, + "64455": 1, + "64468": 1, + "64469": 1, + "64470": 1, + "64472": 1, + "64476": 3, + "64477": 1, + "64479": 1 + }, + "started": "2020-09-07T18:51:01.284Z", + "trafficStats": { + "incomingCompressionRatio": 0.7584895782470703, + "incomingOctetsAppLevel": 65536000, + "incomingOctetsWebSocketLevel": 49708373, + "incomingOctetsWireLevel": 49716373, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0001609386812962074, + "outgoingCompressionRatio": 0.7593745422363282, + "outgoingOctetsAppLevel": 65536000, + "outgoingOctetsWebSocketLevel": 49766370, + "outgoingOctetsWireLevel": 50545014, + "outgoingWebSocketFrames": 194897, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.015645987440916425, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 193897, + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 3, + "3": 1, + "4": 6, + "5": 4, + "6": 4, + "7": 3, + "8": 3, + "9": 1, + "10": 5, + "12": 6, + "13": 3, + "14": 6, + "15": 6, + "16": 5, + "17": 3, + "18": 5, + "19": 3, + "20": 5, + "21": 4, + "22": 9, + "23": 1, + "24": 1, + "25": 8, + "26": 4, + "27": 9, + "28": 1, + "29": 8, + "30": 3, + "31": 3, + "32": 2, + "33": 7, + "34": 8, + "35": 3, + "36": 5, + "38": 4, + "39": 2, + "40": 1, + "41": 5, + "42": 2, + "43": 2, + "44": 4, + "45": 4, + "46": 1, + "47": 1, + "48": 3, + "49": 4, + "50": 3, + "51": 5, + "52": 3, + "53": 5, + "54": 5, + "55": 12, + "56": 1, + "57": 8, + "58": 3, + "59": 3, + "60": 5, + "61": 2, + "62": 5, + "63": 4, + "64": 1, + "65": 6, + "66": 8, + "67": 5, + "68": 5, + "69": 1, + "70": 6, + "71": 4, + "72": 6, + "73": 2, + "74": 4, + "75": 2, + "76": 4, + "77": 6, + "78": 3, + "79": 1, + "80": 4, + "81": 4, + "82": 2, + "83": 3, + "84": 3, + "85": 1, + "86": 3, + "87": 8, + "88": 6, + "89": 5, + "90": 3, + "91": 5, + "92": 6, + "93": 4, + "94": 3, + "95": 9, + "96": 1, + "97": 2, + "98": 1, + "99": 2, + "100": 5, + "101": 4, + "102": 4, + "103": 4, + "104": 3, + "105": 5, + "106": 5, + "107": 3, + "109": 4, + "110": 3, + "111": 3, + "112": 1, + "113": 2, + "114": 1, + "115": 1, + "116": 4, + "117": 8, + "118": 6, + "119": 7, + "120": 1, + "121": 3, + "122": 3, + "123": 1, + "124": 2, + "125": 3, + "126": 2, + "127": 1, + "130": 2, + "131": 3, + "132": 5, + "133": 8, + "134": 6, + "135": 6, + "136": 4, + "137": 11, + "138": 6, + "139": 5, + "140": 6, + "141": 9, + "142": 5, + "143": 7, + "144": 4, + "145": 2, + "146": 5, + "147": 3, + "148": 4, + "149": 5, + "150": 5, + "151": 1, + "152": 4, + "153": 1, + "154": 1, + "155": 2, + "156": 1, + "157": 2, + "158": 4, + "159": 6, + "160": 2, + "161": 3, + "162": 1, + "163": 5, + "164": 2, + "165": 1, + "167": 2, + "168": 3, + "169": 5, + "170": 2, + "171": 6, + "172": 6, + "173": 3, + "174": 8, + "175": 3, + "176": 3, + "177": 3, + "178": 2, + "180": 5, + "181": 4, + "182": 4, + "184": 2, + "185": 7, + "186": 3, + "187": 4, + "188": 2, + "189": 1, + "190": 9, + "191": 8, + "192": 3, + "193": 10, + "194": 5, + "195": 6, + "196": 3, + "197": 10, + "198": 4, + "199": 3, + "200": 2, + "201": 3, + "202": 4, + "203": 4, + "204": 2, + "206": 3, + "207": 3, + "208": 3, + "209": 6, + "210": 3, + "211": 5, + "212": 6, + "213": 2, + "214": 1, + "215": 5, + "216": 6, + "217": 8, + "218": 3, + "219": 3, + "220": 5, + "221": 4, + "222": 5, + "223": 3, + "224": 4, + "225": 4, + "226": 4, + "227": 3, + "228": 5, + "229": 5, + "230": 7, + "231": 4, + "232": 8, + "233": 5, + "234": 5, + "235": 5, + "236": 6, + "237": 3, + "238": 5, + "239": 1, + "240": 12, + "241": 5, + "242": 4, + "243": 6, + "245": 4, + "246": 2, + "247": 5, + "248": 1, + "249": 3, + "250": 6, + "251": 4, + "252": 4, + "253": 4, + "254": 2, + "255": 2, + "256": 7, + "257": 3, + "258": 4, + "259": 2, + "260": 193897 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333837266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888239ab81313a43" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "39ab8131" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_5_15.html b/autobahn/client/tungstenite_case_12_5_15.html new file mode 100644 index 0000000..b72616b --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_15.html @@ -0,0 +1,1446 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.5.15 : Pass - 12350 ms @ 2020-09-07T18:51:07.893Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=388&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: mulE4+HQq32dErt1XbuD9w==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: I6DNit9POc1XFMYt6fJxa5yrdlg=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
58158
2571257
137411374
144311443
149322986
158711587
163311633
345713457
354213542
359113591
365413654
369313693
379113791
379213792
385113851
390113901
392513925
400614006
406114061
434914349
448014480
454214542
469714697
485414854
500215002
546615466
553515535
559615596
563815638
571815718
579315793
775617756
785117851
788417884
793817938
801718017
810418104
879118791
889818898
900819008
909119091
916919169
927419274
949519495
957119571
962619626
969419694
975319753
975519755
978819788
983219832
986719867
989219892
10029110029
10074110074
10889110889
10965110965
11080111080
11184111184
11271111271
11385111385
13478113478
13553113553
13647113647
13671113671
13686113686
13720113720
14369114369
14472114472
14487114487
14592114592
14722114722
14852114852
15078115078
15095115095
15100115100
15135115135
15144115144
15161115161
15242115242
15245115245
15277115277
15294115294
15326115326
15331115331
15370115370
15394115394
15410115410
15430115430
15458115458
15537115537
17549117549
17626117626
17682117682
17748117748
17809117809
18694118694
18761118761
18853118853
18892118892
18978118978
19072119072
19123119123
19139119139
19161119161
19176119176
19195119195
19208119208
19512119512
19524119524
19546119546
19556119556
19581119581
19582119582
19855119855
19991119991
20124120124
20259120259
20378120378
20510120510
21201121201
21218121218
21219121219
21229121229
21232121232
21249121249
21251121251
21324121324
21326121326
21380121380
21460121460
21484121484
21515121515
21574121574
21617121617
21640121640
21646121646
21685121685
21847121847
21874121874
21881121881
21901121901
21902121902
21957121957
22075122075
22084122084
22098122098
22115122115
22130122130
22146122146
22378122378
22380122380
22394122394
22407122407
22411122411
22435122435
23284123284
23421123421
23517123517
23657123657
23795123795
23927123927
25057125057
25198125198
25327125327
25463125463
25595125595
25735125735
28352128352
28497128497
28648128648
28782128782
28929128929
29069129069
29371129371
29403129403
29493129493
29622129622
29694129694
29716129716
30478130478
30614130614
30748130748
30880130880
31016131016
31153131153
31248131248
31277131277
31299131299
31318131318
31341131341
31353131353
31782131782
31861131861
31949131949
32037132037
32113132113
32185132185
33347133347
33490133490
33564133564
33682133682
33815133815
33956133956
35764135764
35800135800
35890135890
35896135896
35947135947
35990271980
36007136007
36016136016
36028136028
36043136043
36134136134
36136136136
36216136216
36229136229
36245136245
36344136344
36470136470
37365137365
37404137404
37449137449
37502137502
37635137635
37703137703
39215139215
39314139314
39390278780
39420139420
39552139552
39769139769
39879139879
39980139980
40060140060
40097140097
40112140112
40116280232
40120140120
40143140143
40152140152
40252140252
41037141037
41168141168
41303141303
41439141439
41575141575
41703141703
41977141977
42074142074
42139142139
42195142195
42205142205
42300142300
42301142301
42364142364
42379142379
42396142396
42400142400
43461143461
43541143541
43598143598
43655143655
43658143658
43726143726
43739143739
43748143748
43778143778
43780143780
43791143791
43856143856
43913143913
43917143917
43964143964
43991287982
44054144054
44087144087
44131144131
44182144182
44212144212
44279144279
44282144282
44399144399
44526144526
44641144641
44767144767
44893144893
45021145021
45395145395
45399145399
45402145402
45413145413
45417145417
45425145425
45507145507
45515145515
45524145524
45525145525
45554145554
45605145605
45722145722
45832145832
45841145841
45847145847
45919145919
45941145941
46018146018
46034146034
46094146094
46122146122
46185146185
46229146229
47283147283
47366147366
47401147401
47457147457
47522147522
47559147559
47650147650
47659147659
47714147714
47779147779
47892147892
47993147993
48857148857
48955148955
49046149046
49053149053
49117298234
49137149137
49186149186
49238298476
49254149254
49304149304
49483149483
49486149486
49526149526
49529149529
49562149562
49675149675
49864149864
49979149979
50107150107
50214150214
50232150232
50245150245
50274150274
50338150338
50354150354
50377150377
50438150438
50466150466
50480150480
50545150545
50555150555
50645150645
50754150754
50853150853
52398152398
52463152463
52493152493
52503152503
52523152523
52547152547
52559152559
52574152574
52633152633
52681152681
52683152683
52708152708
52752152752
52799152799
52801152801
52817152817
52887152887
52903152903
52943152943
53008153008
53051153051
53086153086
53169153169
53230153230
54217154217
54254154254
54258154258
54266154266
54363154363
54468154468
54877154877
54984154984
55085155085
55186155186
55287155287
55392155392
55441155441
55564155564
55685155685
55713155713
55726155726
55746155746
55805155805
55816155816
55858155858
55871155871
55938155938
56062156062
56278156278
56327156327
56425156425
56450156450
56501156501
56591156591
57403157403
57495157495
57585157585
57677157677
57808157808
57879157879
58349158349
58449158449
58534158534
58536158536
58564158564
58573158573
585792117158
585802117160
58687158687
58691158691
588132117626
58921158921
58930158930
59067159067
59199159199
59231159231
59232159232
592352118470
59241159241
59243159243
592852118570
59286159286
59288159288
59289159289
59297159297
59387159387
59392159392
593942118788
59395159395
593962118792
59399159399
59401159401
594022118804
59483159483
595172119034
59521159521
595222119044
59523159523
59587159587
59609159609
59610159610
59612159612
596142119228
59616159616
596222119244
59625159625
596262119252
596272119254
59628159628
59630159630
596313178893
596322119264
59633159633
59635159635
59639159639
59640159640
59649159649
59653159653
59654159654
596573178971
59663159663
59664159664
59669159669
59673159673
59676159676
59677159677
59679159679
59689159689
59705159705
59715159715
59717159717
59720159720
59721159721
597232119446
59727159727
59728159728
59729159729
59730159730
59752159752
59761159761
59763159763
59790159790
59792159792
59834159834
59836159836
59838159838
598462119692
59847159847
59850159850
59851159851
598532119706
59854159854
59856159856
598592119718
59860159860
59867159867
59869159869
59878159878
59879159879
59884159884
59885159885
59886159886
59887159887
598882119776
59890159890
59891159891
59894159894
59895159895
59896159896
59899159899
59901159901
59912159912
59914159914
59915159915
599162119832
59918159918
599552119910
59956159956
59960159960
59961159961
59962159962
59963159963
59968159968
59984159984
59988159988
59992159992
599962119992
59997159997
59999159999
60000160000
60002160002
60011160011
60014160014
60015160015
600182120036
600202120040
60022160022
60024160024
60069160069
60096160096
60098160098
60102160102
60103160103
60104160104
601112120222
60114160114
60116160116
60117160117
60124160124
60126160126
601273180381
60128160128
601292120258
60133160133
60135160135
601382120276
60149160149
60151160151
601522120304
60154160154
601562120312
601573180471
601603180480
60161160161
60164160164
60166160166
601672120334
60168160168
60171160171
601752120350
601763180528
601772120354
60178160178
60179160179
601812120362
60183160183
60185160185
60187160187
60188160188
601912120382
60194160194
60237160237
60241160241
60263160263
60268160268
602692120538
60271160271
60272160272
60284160284
60353160353
60356160356
60358160358
60447160447
604502120900
60452160452
60453160453
60460160460
60525160525
60526160526
60531160531
60532160532
60538160538
60541160541
60699160699
607002121400
60701160701
60702160702
60706160706
60758160758
607622121524
60764160764
60768160768
60769160769
60877160877
60909160909
60912160912
609133182739
60914160914
60915160915
60916160916
60919160919
60922160922
60927160927
60928160928
60931160931
60933160933
60936160936
60937160937
60942160942
60961160961
60962160962
60964160964
60967160967
609682121936
60982160982
60984160984
60987160987
60990160990
60996160996
60997160997
60999160999
61000161000
61003161003
61014161014
61078161078
61142161142
61150161150
61151161151
61152161152
61153161153
61154161154
61155161155
61183161183
61216161216
61219161219
61221161221
61226161226
61228161228
61229161229
61265161265
61268161268
61271161271
612732122546
612742122548
61276161276
61280161280
61292161292
61322161322
61346161346
61360161360
61381161381
613863184158
61391161391
61398161398
61417161417
61426161426
614562122912
61457161457
61460161460
614642122928
61476161476
615102123020
61512161512
61514161514
61517161517
61519161519
61520161520
61528161528
61529161529
61532161532
61539161539
615482123096
61580161580
61596161596
61599161599
616002123200
61601161601
61602161602
616042123208
61607161607
61608161608
61609161609
616342123268
61635161635
61636161636
61637161637
616393184917
61641161641
616423184926
61644161644
61660161660
616622123324
61666161666
616732123346
61674161674
61675161675
61679161679
61685161685
61689161689
61751161751
61753161753
61757161757
61760161760
61761161761
61764161764
61772161772
618042123608
61805161805
61807161807
61808161808
61813161813
61864161864
61919161919
619622123924
61967161967
61972161972
61974161974
619752123950
61976161976
61980161980
61998161998
62028162028
620292124058
62031162031
620352124070
62036162036
62040162040
62045162045
62050162050
62052162052
62067162067
62069162069
62070162070
62079162079
62148162148
62178162178
62207162207
622122124424
62213162213
62215162215
62217162217
62285162285
62286162286
62291162291
62293162293
62299162299
62302162302
62336162336
62343162343
62345162345
62348162348
62351162351
62355162355
62380162380
62389162389
62393162393
62394162394
62395162395
62400162400
62425162425
62430162430
624452124890
62449162449
62450162450
62451162451
62453162453
62456162456
62459162459
62462162462
62463162463
62479162479
62481162481
62482162482
62484162484
62487162487
62489162489
62490162490
62491162491
62493162493
62494162494
62496162496
62497162497
62526162526
625272125054
625292125058
625312125062
625324250128
62537162537
62565162565
625662125132
62567162567
625682125136
62603162603
626042125208
626072125214
62608162608
62613162613
62618162618
62619162619
62620162620
62624162624
62625162625
62627162627
62641162641
62683162683
62688162688
62689162689
62692162692
62694162694
62697162697
62698162698
62699162699
627003188100
62701162701
62702162702
62703162703
62707162707
62708162708
62729162729
627332125466
62737162737
62753162753
62833162833
62891162891
62944162944
62946162946
62947162947
629522125904
62979162979
62983162983
629862125972
62988162988
62989162989
63058163058
63067163067
630682126136
63069163069
63078163078
63654163654
63796163796
63912163912
64028164028
64157164157
64189164189
64257164257
64314164314
64430164430
64448164448
64466164466
64471164471
64475164475
64476164476
64477164477
64523164523
64640164640
64725164725
65104165104
65200165200
65318165318
65404165404
65497165497
6553676850331648
Total177099416403
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
212
3721
4936
5735
6424
7642
8432
9763
10110
11666
12336
13452
14798
15575
16580
176102
18236
19357
208160
215105
22488
235115
245120
25375
264104
27254
285140
294116
305150
31393
326192
334132
344136
357245
364144
374148
385190
394156
407280
417287
427294
434172
443132
45145
464184
473141
48296
493147
503150
514204
524208
534212
547378
555275
568448
575285
583174
5910590
605300
616366
626372
635315
644256
652130
66166
67167
695345
703210
716426
727504
73173
742148
753225
765380
773231
786468
796474
804320
816486
823246
835415
843252
858680
864344
875435
885440
896534
904360
915455
925460
935465
945470
953285
9610960
972194
984392
995495
1003300
1014404
1022204
1032206
1045520
1054420
1063318
1075535
1086648
1094436
1104440
1117777
1137791
1141114
1154460
1163348
1173351
1181118
1191119
1204480
1212242
1224488
1231123
1242248
1257875
1265630
1274508
1305650
1313393
1323396
1333399
1346804
1354540
1362272
1374548
1386828
139121668
1402280
1415705
1424568
1431143
1441144
1451145
1464584
1473441
1484592
1492298
1503450
1513453
1523456
1534612
1541154
1554620
1562312
1571157
1582316
1592318
1603480
1612322
1624648
1634652
1642328
1653495
1662332
1674668
1683504
1693507
1705850
17171197
17281376
1734692
1742348
1753525
1772354
1785890
1795895
1803540
1812362
1821182
1831183
1851185
1863558
1892378
19061140
1912382
1923576
1933579
1943582
19561170
1962392
1985990
1993597
2004800
2013603
2021202
2033609
2043612
2053615
2064824
2073621
20851040
2091209
21051050
2112422
21251060
21351065
2144856
2154860
2163648
2174868
2182436
2192438
2204880
22151105
22251110
22351115
22461344
22551125
22651130
2272454
2282456
22951145
23051150
2313693
2323696
23351165
234102340
2354940
2364944
23751185
2383714
2394956
24051200
2422484
24361458
24461464
245112695
2464984
2471247
2481248
2494996
25051250
2512502
2523756
2532506
25451270
25551275
25671792
25751285
25871806
25941036
260388277100952020
Total389279101076243
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
0388277
21000
81
Total389278
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333838266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888281e87b348200
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3831653837623334
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_5_15.json b/autobahn/client/tungstenite_case_12_5_15.json new file mode 100644 index 0000000..72db7d0 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_15.json @@ -0,0 +1,1293 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 388, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 12350, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=388&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: mulE4+HQq32dErt1XbuD9w==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: I6DNit9POc1XFMYt6fJxa5yrdlg=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.5.15", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "58": 1, + "257": 1, + "1374": 1, + "1443": 1, + "1493": 2, + "1587": 1, + "1633": 1, + "3457": 1, + "3542": 1, + "3591": 1, + "3654": 1, + "3693": 1, + "3791": 1, + "3792": 1, + "3851": 1, + "3901": 1, + "3925": 1, + "4006": 1, + "4061": 1, + "4349": 1, + "4480": 1, + "4542": 1, + "4697": 1, + "4854": 1, + "5002": 1, + "5466": 1, + "5535": 1, + "5596": 1, + "5638": 1, + "5718": 1, + "5793": 1, + "7756": 1, + "7851": 1, + "7884": 1, + "7938": 1, + "8017": 1, + "8104": 1, + "8791": 1, + "8898": 1, + "9008": 1, + "9091": 1, + "9169": 1, + "9274": 1, + "9495": 1, + "9571": 1, + "9626": 1, + "9694": 1, + "9753": 1, + "9755": 1, + "9788": 1, + "9832": 1, + "9867": 1, + "9892": 1, + "10029": 1, + "10074": 1, + "10889": 1, + "10965": 1, + "11080": 1, + "11184": 1, + "11271": 1, + "11385": 1, + "13478": 1, + "13553": 1, + "13647": 1, + "13671": 1, + "13686": 1, + "13720": 1, + "14369": 1, + "14472": 1, + "14487": 1, + "14592": 1, + "14722": 1, + "14852": 1, + "15078": 1, + "15095": 1, + "15100": 1, + "15135": 1, + "15144": 1, + "15161": 1, + "15242": 1, + "15245": 1, + "15277": 1, + "15294": 1, + "15326": 1, + "15331": 1, + "15370": 1, + "15394": 1, + "15410": 1, + "15430": 1, + "15458": 1, + "15537": 1, + "17549": 1, + "17626": 1, + "17682": 1, + "17748": 1, + "17809": 1, + "18694": 1, + "18761": 1, + "18853": 1, + "18892": 1, + "18978": 1, + "19072": 1, + "19123": 1, + "19139": 1, + "19161": 1, + "19176": 1, + "19195": 1, + "19208": 1, + "19512": 1, + "19524": 1, + "19546": 1, + "19556": 1, + "19581": 1, + "19582": 1, + "19855": 1, + "19991": 1, + "20124": 1, + "20259": 1, + "20378": 1, + "20510": 1, + "21201": 1, + "21218": 1, + "21219": 1, + "21229": 1, + "21232": 1, + "21249": 1, + "21251": 1, + "21324": 1, + "21326": 1, + "21380": 1, + "21460": 1, + "21484": 1, + "21515": 1, + "21574": 1, + "21617": 1, + "21640": 1, + "21646": 1, + "21685": 1, + "21847": 1, + "21874": 1, + "21881": 1, + "21901": 1, + "21902": 1, + "21957": 1, + "22075": 1, + "22084": 1, + "22098": 1, + "22115": 1, + "22130": 1, + "22146": 1, + "22378": 1, + "22380": 1, + "22394": 1, + "22407": 1, + "22411": 1, + "22435": 1, + "23284": 1, + "23421": 1, + "23517": 1, + "23657": 1, + "23795": 1, + "23927": 1, + "25057": 1, + "25198": 1, + "25327": 1, + "25463": 1, + "25595": 1, + "25735": 1, + "28352": 1, + "28497": 1, + "28648": 1, + "28782": 1, + "28929": 1, + "29069": 1, + "29371": 1, + "29403": 1, + "29493": 1, + "29622": 1, + "29694": 1, + "29716": 1, + "30478": 1, + "30614": 1, + "30748": 1, + "30880": 1, + "31016": 1, + "31153": 1, + "31248": 1, + "31277": 1, + "31299": 1, + "31318": 1, + "31341": 1, + "31353": 1, + "31782": 1, + "31861": 1, + "31949": 1, + "32037": 1, + "32113": 1, + "32185": 1, + "33347": 1, + "33490": 1, + "33564": 1, + "33682": 1, + "33815": 1, + "33956": 1, + "35764": 1, + "35800": 1, + "35890": 1, + "35896": 1, + "35947": 1, + "35990": 2, + "36007": 1, + "36016": 1, + "36028": 1, + "36043": 1, + "36134": 1, + "36136": 1, + "36216": 1, + "36229": 1, + "36245": 1, + "36344": 1, + "36470": 1, + "37365": 1, + "37404": 1, + "37449": 1, + "37502": 1, + "37635": 1, + "37703": 1, + "39215": 1, + "39314": 1, + "39390": 2, + "39420": 1, + "39552": 1, + "39769": 1, + "39879": 1, + "39980": 1, + "40060": 1, + "40097": 1, + "40112": 1, + "40116": 2, + "40120": 1, + "40143": 1, + "40152": 1, + "40252": 1, + "41037": 1, + "41168": 1, + "41303": 1, + "41439": 1, + "41575": 1, + "41703": 1, + "41977": 1, + "42074": 1, + "42139": 1, + "42195": 1, + "42205": 1, + "42300": 1, + "42301": 1, + "42364": 1, + "42379": 1, + "42396": 1, + "42400": 1, + "43461": 1, + "43541": 1, + "43598": 1, + "43655": 1, + "43658": 1, + "43726": 1, + "43739": 1, + "43748": 1, + "43778": 1, + "43780": 1, + "43791": 1, + "43856": 1, + "43913": 1, + "43917": 1, + "43964": 1, + "43991": 2, + "44054": 1, + "44087": 1, + "44131": 1, + "44182": 1, + "44212": 1, + "44279": 1, + "44282": 1, + "44399": 1, + "44526": 1, + "44641": 1, + "44767": 1, + "44893": 1, + "45021": 1, + "45395": 1, + "45399": 1, + "45402": 1, + "45413": 1, + "45417": 1, + "45425": 1, + "45507": 1, + "45515": 1, + "45524": 1, + "45525": 1, + "45554": 1, + "45605": 1, + "45722": 1, + "45832": 1, + "45841": 1, + "45847": 1, + "45919": 1, + "45941": 1, + "46018": 1, + "46034": 1, + "46094": 1, + "46122": 1, + "46185": 1, + "46229": 1, + "47283": 1, + "47366": 1, + "47401": 1, + "47457": 1, + "47522": 1, + "47559": 1, + "47650": 1, + "47659": 1, + "47714": 1, + "47779": 1, + "47892": 1, + "47993": 1, + "48857": 1, + "48955": 1, + "49046": 1, + "49053": 1, + "49117": 2, + "49137": 1, + "49186": 1, + "49238": 2, + "49254": 1, + "49304": 1, + "49483": 1, + "49486": 1, + "49526": 1, + "49529": 1, + "49562": 1, + "49675": 1, + "49864": 1, + "49979": 1, + "50107": 1, + "50214": 1, + "50232": 1, + "50245": 1, + "50274": 1, + "50338": 1, + "50354": 1, + "50377": 1, + "50438": 1, + "50466": 1, + "50480": 1, + "50545": 1, + "50555": 1, + "50645": 1, + "50754": 1, + "50853": 1, + "52398": 1, + "52463": 1, + "52493": 1, + "52503": 1, + "52523": 1, + "52547": 1, + "52559": 1, + "52574": 1, + "52633": 1, + "52681": 1, + "52683": 1, + "52708": 1, + "52752": 1, + "52799": 1, + "52801": 1, + "52817": 1, + "52887": 1, + "52903": 1, + "52943": 1, + "53008": 1, + "53051": 1, + "53086": 1, + "53169": 1, + "53230": 1, + "54217": 1, + "54254": 1, + "54258": 1, + "54266": 1, + "54363": 1, + "54468": 1, + "54877": 1, + "54984": 1, + "55085": 1, + "55186": 1, + "55287": 1, + "55392": 1, + "55441": 1, + "55564": 1, + "55685": 1, + "55713": 1, + "55726": 1, + "55746": 1, + "55805": 1, + "55816": 1, + "55858": 1, + "55871": 1, + "55938": 1, + "56062": 1, + "56278": 1, + "56327": 1, + "56425": 1, + "56450": 1, + "56501": 1, + "56591": 1, + "57403": 1, + "57495": 1, + "57585": 1, + "57677": 1, + "57808": 1, + "57879": 1, + "58349": 1, + "58449": 1, + "58534": 1, + "58536": 1, + "58564": 1, + "58573": 1, + "58579": 2, + "58580": 2, + "58687": 1, + "58691": 1, + "58813": 2, + "58921": 1, + "58930": 1, + "59067": 1, + "59199": 1, + "59231": 1, + "59232": 1, + "59235": 2, + "59241": 1, + "59243": 1, + "59285": 2, + "59286": 1, + "59288": 1, + "59289": 1, + "59297": 1, + "59387": 1, + "59392": 1, + "59394": 2, + "59395": 1, + "59396": 2, + "59399": 1, + "59401": 1, + "59402": 2, + "59483": 1, + "59517": 2, + "59521": 1, + "59522": 2, + "59523": 1, + "59587": 1, + "59609": 1, + "59610": 1, + "59612": 1, + "59614": 2, + "59616": 1, + "59622": 2, + "59625": 1, + "59626": 2, + "59627": 2, + "59628": 1, + "59630": 1, + "59631": 3, + "59632": 2, + "59633": 1, + "59635": 1, + "59639": 1, + "59640": 1, + "59649": 1, + "59653": 1, + "59654": 1, + "59657": 3, + "59663": 1, + "59664": 1, + "59669": 1, + "59673": 1, + "59676": 1, + "59677": 1, + "59679": 1, + "59689": 1, + "59705": 1, + "59715": 1, + "59717": 1, + "59720": 1, + "59721": 1, + "59723": 2, + "59727": 1, + "59728": 1, + "59729": 1, + "59730": 1, + "59752": 1, + "59761": 1, + "59763": 1, + "59790": 1, + "59792": 1, + "59834": 1, + "59836": 1, + "59838": 1, + "59846": 2, + "59847": 1, + "59850": 1, + "59851": 1, + "59853": 2, + "59854": 1, + "59856": 1, + "59859": 2, + "59860": 1, + "59867": 1, + "59869": 1, + "59878": 1, + "59879": 1, + "59884": 1, + "59885": 1, + "59886": 1, + "59887": 1, + "59888": 2, + "59890": 1, + "59891": 1, + "59894": 1, + "59895": 1, + "59896": 1, + "59899": 1, + "59901": 1, + "59912": 1, + "59914": 1, + "59915": 1, + "59916": 2, + "59918": 1, + "59955": 2, + "59956": 1, + "59960": 1, + "59961": 1, + "59962": 1, + "59963": 1, + "59968": 1, + "59984": 1, + "59988": 1, + "59992": 1, + "59996": 2, + "59997": 1, + "59999": 1, + "60000": 1, + "60002": 1, + "60011": 1, + "60014": 1, + "60015": 1, + "60018": 2, + "60020": 2, + "60022": 1, + "60024": 1, + "60069": 1, + "60096": 1, + "60098": 1, + "60102": 1, + "60103": 1, + "60104": 1, + "60111": 2, + "60114": 1, + "60116": 1, + "60117": 1, + "60124": 1, + "60126": 1, + "60127": 3, + "60128": 1, + "60129": 2, + "60133": 1, + "60135": 1, + "60138": 2, + "60149": 1, + "60151": 1, + "60152": 2, + "60154": 1, + "60156": 2, + "60157": 3, + "60160": 3, + "60161": 1, + "60164": 1, + "60166": 1, + "60167": 2, + "60168": 1, + "60171": 1, + "60175": 2, + "60176": 3, + "60177": 2, + "60178": 1, + "60179": 1, + "60181": 2, + "60183": 1, + "60185": 1, + "60187": 1, + "60188": 1, + "60191": 2, + "60194": 1, + "60237": 1, + "60241": 1, + "60263": 1, + "60268": 1, + "60269": 2, + "60271": 1, + "60272": 1, + "60284": 1, + "60353": 1, + "60356": 1, + "60358": 1, + "60447": 1, + "60450": 2, + "60452": 1, + "60453": 1, + "60460": 1, + "60525": 1, + "60526": 1, + "60531": 1, + "60532": 1, + "60538": 1, + "60541": 1, + "60699": 1, + "60700": 2, + "60701": 1, + "60702": 1, + "60706": 1, + "60758": 1, + "60762": 2, + "60764": 1, + "60768": 1, + "60769": 1, + "60877": 1, + "60909": 1, + "60912": 1, + "60913": 3, + "60914": 1, + "60915": 1, + "60916": 1, + "60919": 1, + "60922": 1, + "60927": 1, + "60928": 1, + "60931": 1, + "60933": 1, + "60936": 1, + "60937": 1, + "60942": 1, + "60961": 1, + "60962": 1, + "60964": 1, + "60967": 1, + "60968": 2, + "60982": 1, + "60984": 1, + "60987": 1, + "60990": 1, + "60996": 1, + "60997": 1, + "60999": 1, + "61000": 1, + "61003": 1, + "61014": 1, + "61078": 1, + "61142": 1, + "61150": 1, + "61151": 1, + "61152": 1, + "61153": 1, + "61154": 1, + "61155": 1, + "61183": 1, + "61216": 1, + "61219": 1, + "61221": 1, + "61226": 1, + "61228": 1, + "61229": 1, + "61265": 1, + "61268": 1, + "61271": 1, + "61273": 2, + "61274": 2, + "61276": 1, + "61280": 1, + "61292": 1, + "61322": 1, + "61346": 1, + "61360": 1, + "61381": 1, + "61386": 3, + "61391": 1, + "61398": 1, + "61417": 1, + "61426": 1, + "61456": 2, + "61457": 1, + "61460": 1, + "61464": 2, + "61476": 1, + "61510": 2, + "61512": 1, + "61514": 1, + "61517": 1, + "61519": 1, + "61520": 1, + "61528": 1, + "61529": 1, + "61532": 1, + "61539": 1, + "61548": 2, + "61580": 1, + "61596": 1, + "61599": 1, + "61600": 2, + "61601": 1, + "61602": 1, + "61604": 2, + "61607": 1, + "61608": 1, + "61609": 1, + "61634": 2, + "61635": 1, + "61636": 1, + "61637": 1, + "61639": 3, + "61641": 1, + "61642": 3, + "61644": 1, + "61660": 1, + "61662": 2, + "61666": 1, + "61673": 2, + "61674": 1, + "61675": 1, + "61679": 1, + "61685": 1, + "61689": 1, + "61751": 1, + "61753": 1, + "61757": 1, + "61760": 1, + "61761": 1, + "61764": 1, + "61772": 1, + "61804": 2, + "61805": 1, + "61807": 1, + "61808": 1, + "61813": 1, + "61864": 1, + "61919": 1, + "61962": 2, + "61967": 1, + "61972": 1, + "61974": 1, + "61975": 2, + "61976": 1, + "61980": 1, + "61998": 1, + "62028": 1, + "62029": 2, + "62031": 1, + "62035": 2, + "62036": 1, + "62040": 1, + "62045": 1, + "62050": 1, + "62052": 1, + "62067": 1, + "62069": 1, + "62070": 1, + "62079": 1, + "62148": 1, + "62178": 1, + "62207": 1, + "62212": 2, + "62213": 1, + "62215": 1, + "62217": 1, + "62285": 1, + "62286": 1, + "62291": 1, + "62293": 1, + "62299": 1, + "62302": 1, + "62336": 1, + "62343": 1, + "62345": 1, + "62348": 1, + "62351": 1, + "62355": 1, + "62380": 1, + "62389": 1, + "62393": 1, + "62394": 1, + "62395": 1, + "62400": 1, + "62425": 1, + "62430": 1, + "62445": 2, + "62449": 1, + "62450": 1, + "62451": 1, + "62453": 1, + "62456": 1, + "62459": 1, + "62462": 1, + "62463": 1, + "62479": 1, + "62481": 1, + "62482": 1, + "62484": 1, + "62487": 1, + "62489": 1, + "62490": 1, + "62491": 1, + "62493": 1, + "62494": 1, + "62496": 1, + "62497": 1, + "62526": 1, + "62527": 2, + "62529": 2, + "62531": 2, + "62532": 4, + "62537": 1, + "62565": 1, + "62566": 2, + "62567": 1, + "62568": 2, + "62603": 1, + "62604": 2, + "62607": 2, + "62608": 1, + "62613": 1, + "62618": 1, + "62619": 1, + "62620": 1, + "62624": 1, + "62625": 1, + "62627": 1, + "62641": 1, + "62683": 1, + "62688": 1, + "62689": 1, + "62692": 1, + "62694": 1, + "62697": 1, + "62698": 1, + "62699": 1, + "62700": 3, + "62701": 1, + "62702": 1, + "62703": 1, + "62707": 1, + "62708": 1, + "62729": 1, + "62733": 2, + "62737": 1, + "62753": 1, + "62833": 1, + "62891": 1, + "62944": 1, + "62946": 1, + "62947": 1, + "62952": 2, + "62979": 1, + "62983": 1, + "62986": 2, + "62988": 1, + "62989": 1, + "63058": 1, + "63067": 1, + "63068": 2, + "63069": 1, + "63078": 1, + "63654": 1, + "63796": 1, + "63912": 1, + "64028": 1, + "64157": 1, + "64189": 1, + "64257": 1, + "64314": 1, + "64430": 1, + "64448": 1, + "64466": 1, + "64471": 1, + "64475": 1, + "64476": 1, + "64477": 1, + "64523": 1, + "64640": 1, + "64725": 1, + "65104": 1, + "65200": 1, + "65318": 1, + "65404": 1, + "65497": 1, + "65536": 768 + }, + "started": "2020-09-07T18:51:07.893Z", + "trafficStats": { + "incomingCompressionRatio": 0.7583887481689453, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 99403530, + "incomingOctetsWireLevel": 99416138, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.00012683654192159976, + "outgoingCompressionRatio": 0.7592770767211914, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 99519965, + "outgoingOctetsWireLevel": 101075987, + "outgoingWebSocketFrames": 389277, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.01563527479134463, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 388277, + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "3": 7, + "4": 9, + "5": 7, + "6": 4, + "7": 6, + "8": 4, + "9": 7, + "10": 1, + "11": 6, + "12": 3, + "13": 4, + "14": 7, + "15": 5, + "16": 5, + "17": 6, + "18": 2, + "19": 3, + "20": 8, + "21": 5, + "22": 4, + "23": 5, + "24": 5, + "25": 3, + "26": 4, + "27": 2, + "28": 5, + "29": 4, + "30": 5, + "31": 3, + "32": 6, + "33": 4, + "34": 4, + "35": 7, + "36": 4, + "37": 4, + "38": 5, + "39": 4, + "40": 7, + "41": 7, + "42": 7, + "43": 4, + "44": 3, + "45": 1, + "46": 4, + "47": 3, + "48": 2, + "49": 3, + "50": 3, + "51": 4, + "52": 4, + "53": 4, + "54": 7, + "55": 5, + "56": 8, + "57": 5, + "58": 3, + "59": 10, + "60": 5, + "61": 6, + "62": 6, + "63": 5, + "64": 4, + "65": 2, + "66": 1, + "67": 1, + "69": 5, + "70": 3, + "71": 6, + "72": 7, + "73": 1, + "74": 2, + "75": 3, + "76": 5, + "77": 3, + "78": 6, + "79": 6, + "80": 4, + "81": 6, + "82": 3, + "83": 5, + "84": 3, + "85": 8, + "86": 4, + "87": 5, + "88": 5, + "89": 6, + "90": 4, + "91": 5, + "92": 5, + "93": 5, + "94": 5, + "95": 3, + "96": 10, + "97": 2, + "98": 4, + "99": 5, + "100": 3, + "101": 4, + "102": 2, + "103": 2, + "104": 5, + "105": 4, + "106": 3, + "107": 5, + "108": 6, + "109": 4, + "110": 4, + "111": 7, + "113": 7, + "114": 1, + "115": 4, + "116": 3, + "117": 3, + "118": 1, + "119": 1, + "120": 4, + "121": 2, + "122": 4, + "123": 1, + "124": 2, + "125": 7, + "126": 5, + "127": 4, + "130": 5, + "131": 3, + "132": 3, + "133": 3, + "134": 6, + "135": 4, + "136": 2, + "137": 4, + "138": 6, + "139": 12, + "140": 2, + "141": 5, + "142": 4, + "143": 1, + "144": 1, + "145": 1, + "146": 4, + "147": 3, + "148": 4, + "149": 2, + "150": 3, + "151": 3, + "152": 3, + "153": 4, + "154": 1, + "155": 4, + "156": 2, + "157": 1, + "158": 2, + "159": 2, + "160": 3, + "161": 2, + "162": 4, + "163": 4, + "164": 2, + "165": 3, + "166": 2, + "167": 4, + "168": 3, + "169": 3, + "170": 5, + "171": 7, + "172": 8, + "173": 4, + "174": 2, + "175": 3, + "177": 2, + "178": 5, + "179": 5, + "180": 3, + "181": 2, + "182": 1, + "183": 1, + "185": 1, + "186": 3, + "189": 2, + "190": 6, + "191": 2, + "192": 3, + "193": 3, + "194": 3, + "195": 6, + "196": 2, + "198": 5, + "199": 3, + "200": 4, + "201": 3, + "202": 1, + "203": 3, + "204": 3, + "205": 3, + "206": 4, + "207": 3, + "208": 5, + "209": 1, + "210": 5, + "211": 2, + "212": 5, + "213": 5, + "214": 4, + "215": 4, + "216": 3, + "217": 4, + "218": 2, + "219": 2, + "220": 4, + "221": 5, + "222": 5, + "223": 5, + "224": 6, + "225": 5, + "226": 5, + "227": 2, + "228": 2, + "229": 5, + "230": 5, + "231": 3, + "232": 3, + "233": 5, + "234": 10, + "235": 4, + "236": 4, + "237": 5, + "238": 3, + "239": 4, + "240": 5, + "242": 2, + "243": 6, + "244": 6, + "245": 11, + "246": 4, + "247": 1, + "248": 1, + "249": 4, + "250": 5, + "251": 2, + "252": 3, + "253": 2, + "254": 5, + "255": 5, + "256": 7, + "257": 5, + "258": 7, + "259": 4, + "260": 388277 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333838266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888281e87b348200" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "81e87b34" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_5_16.html b/autobahn/client/tungstenite_case_12_5_16.html new file mode 100644 index 0000000..286f7ef --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_16.html @@ -0,0 +1,1823 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.5.16 : Pass - 11386 ms @ 2020-09-07T18:51:20.245Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=389&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 8dDIsYfYJmiEeljGg/exrg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 4hkBaMiD0DW13tyXNlLLTo3Oqjc=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
58158
2571257
137411374
144311443
149322986
158711587
163311633
345713457
354213542
359113591
365413654
369313693
379113791
379213792
385113851
390113901
392513925
400614006
406114061
434914349
448014480
454214542
469714697
485414854
500215002
546615466
553515535
559615596
563815638
571815718
579315793
775617756
785117851
788417884
793817938
801718017
810418104
879118791
889818898
900819008
909119091
916919169
927419274
949519495
957119571
962619626
969419694
975319753
975519755
978819788
983219832
986719867
989219892
10029110029
10074110074
10889110889
10965110965
11080111080
11184111184
11271111271
11385111385
13478113478
13553113553
13647113647
13671113671
13686113686
13720113720
14369114369
14472114472
14487114487
14592114592
14722114722
14852114852
15078115078
15095115095
15100115100
15135115135
15144115144
15161115161
15242115242
15245115245
15277115277
15294115294
15326115326
15331115331
15370115370
15394115394
15410115410
15430115430
15458115458
15537115537
17549117549
17626117626
17682117682
17748117748
17809117809
18694118694
18761118761
18853118853
18892118892
18978118978
19072119072
19123119123
19139119139
19161119161
19176119176
19195119195
19208119208
19512119512
19524119524
19546119546
19556119556
19581119581
19582119582
19855119855
19991119991
20124120124
20259120259
20378120378
20510120510
21201121201
21218121218
21219121219
21229121229
21232121232
21249121249
21251121251
21324121324
21326121326
21380121380
21460121460
21484121484
21515121515
21574121574
21617121617
21640121640
21646121646
21685121685
21847121847
21874121874
21881121881
21901121901
21902121902
21957121957
22075122075
22084122084
22098122098
22115122115
22130122130
22146122146
22378122378
22380122380
22394122394
22407122407
22411122411
22435122435
23284123284
23421123421
23517123517
23657123657
23795123795
23927123927
25057125057
25198125198
25327125327
25463125463
25595125595
25735125735
28352128352
28497128497
28648128648
28782128782
28929128929
29069129069
29371129371
29403129403
29493129493
29622129622
29694129694
29716129716
30478130478
30614130614
30748130748
30880130880
31016131016
31153131153
31248131248
31277131277
31299131299
31318131318
31341131341
31353131353
31782131782
31861131861
31949131949
32037132037
32113132113
32185132185
33347133347
33490133490
33564133564
33682133682
33815133815
33956133956
35764135764
35800135800
35890135890
35896135896
35947135947
35990271980
36007136007
36016136016
36028136028
36043136043
36134136134
36136136136
36216136216
36229136229
36245136245
36344136344
36470136470
37365137365
37404137404
37449137449
37502137502
37635137635
37703137703
39215139215
39314139314
39390278780
39420139420
39552139552
39769139769
39879139879
39980139980
40060140060
40097140097
40112140112
40116280232
40120140120
40143140143
40152140152
40252140252
41037141037
41168141168
41303141303
41439141439
41575141575
41703141703
41977141977
42074142074
42139142139
42195142195
42205142205
42300142300
42301142301
42364142364
42379142379
42396142396
42400142400
43461143461
43541143541
43598143598
43655143655
43658143658
43726143726
43739143739
43748143748
43778143778
43780143780
43791143791
43856143856
43913143913
43917143917
43964143964
43991287982
44054144054
44087144087
44131144131
44182144182
44212144212
44279144279
44282144282
44399144399
44526144526
44641144641
44767144767
44893144893
45021145021
45395145395
45399145399
45402145402
45413145413
45417145417
45425145425
45507145507
45515145515
45524145524
45525145525
45554145554
45605145605
45722145722
45832145832
45841145841
45847145847
45919145919
45941145941
46018146018
46034146034
46094146094
46122146122
46185146185
46229146229
47283147283
47366147366
47401147401
47457147457
47522147522
47559147559
47650147650
47659147659
47714147714
47779147779
47892147892
47993147993
48857148857
48955148955
49046149046
49053149053
49117298234
49137149137
49186149186
49238298476
49254149254
49304149304
49483149483
49486149486
49526149526
49529149529
49562149562
49675149675
49864149864
49979149979
50107150107
50214150214
50232150232
50245150245
50274150274
50338150338
50354150354
50377150377
50438150438
50466150466
50480150480
50545150545
50555150555
50645150645
50754150754
50853150853
52398152398
52463152463
52493152493
52503152503
52523152523
52547152547
52559152559
52574152574
52633152633
52681152681
52683152683
52708152708
52752152752
52799152799
52801152801
52817152817
52887152887
52903152903
52943152943
53008153008
53051153051
53086153086
53169153169
53230153230
54217154217
54254154254
54258154258
54266154266
54363154363
54468154468
54877154877
54984154984
55085155085
55186155186
55287155287
55392155392
55441155441
55564155564
55685155685
55713155713
55726155726
55746155746
55805155805
55816155816
55858155858
55871155871
55938155938
56062156062
56278156278
56327156327
56425156425
56450156450
56501156501
56591156591
57403157403
57495157495
57585157585
57677157677
57808157808
57879157879
58349158349
58449158449
58534158534
58536158536
58564158564
58573158573
585792117158
585802117160
58687158687
58691158691
588132117626
58921158921
58930158930
59067159067
59199159199
59231159231
59232159232
592352118470
59241159241
59243159243
592852118570
59286159286
59288159288
59289159289
59297159297
59387159387
59392159392
593942118788
59395159395
593962118792
59399159399
59401159401
594022118804
59483159483
595172119034
59521159521
595222119044
59523159523
59587159587
59609159609
59610159610
59612159612
596142119228
59616159616
596222119244
59625159625
596262119252
596272119254
59628159628
59630159630
596313178893
596322119264
59633159633
59635159635
59639159639
59640159640
59649159649
59653159653
59654159654
596573178971
59663159663
59664159664
59669159669
59673159673
59676159676
59677159677
59679159679
59689159689
59705159705
59715159715
59717159717
59720159720
59721159721
597232119446
59727159727
59728159728
59729159729
59730159730
59752159752
59761159761
59763159763
59790159790
59792159792
59834159834
59836159836
59838159838
598462119692
59847159847
59850159850
59851159851
598532119706
59854159854
59856159856
598592119718
59860159860
59867159867
59869159869
59878159878
59879159879
59884159884
59885159885
59886159886
59887159887
598882119776
59890159890
59891159891
59894159894
59895159895
59896159896
59899159899
59901159901
59912159912
59914159914
59915159915
599162119832
59918159918
599552119910
59956159956
59960159960
59961159961
59962159962
59963159963
59968159968
59984159984
59988159988
59992159992
599962119992
59997159997
59999159999
60000160000
60002160002
60011160011
60014160014
60015160015
600182120036
600202120040
60022160022
60024160024
60069160069
60096160096
60098160098
60102160102
60103160103
60104160104
601112120222
60114160114
60116160116
60117160117
60124160124
60126160126
601273180381
60128160128
601292120258
60133160133
60135160135
601382120276
60149160149
60151160151
601522120304
60154160154
601562120312
601573180471
601603180480
60161160161
60164160164
60166160166
601672120334
60168160168
60171160171
601752120350
601763180528
601772120354
60178160178
60179160179
601812120362
60183160183
60185160185
60187160187
60188160188
601912120382
60194160194
60237160237
60241160241
60263160263
60268160268
602692120538
60271160271
60272160272
60284160284
60353160353
60356160356
60358160358
60447160447
604502120900
60452160452
60453160453
60460160460
60525160525
60526160526
60531160531
60532160532
60538160538
60541160541
60699160699
607002121400
60701160701
60702160702
60706160706
60758160758
607622121524
60764160764
60768160768
60769160769
60877160877
60909160909
60912160912
609133182739
60914160914
60915160915
60916160916
60919160919
60922160922
60927160927
60928160928
60931160931
60933160933
60936160936
60937160937
60942160942
60961160961
60962160962
60964160964
60967160967
609682121936
60982160982
60984160984
60987160987
60990160990
60996160996
60997160997
60999160999
61000161000
61003161003
61014161014
61078161078
61142161142
61150161150
61151161151
61152161152
61153161153
61154161154
61155161155
61183161183
61216161216
61219161219
61221161221
61226161226
61228161228
61229161229
61265161265
61268161268
61271161271
612732122546
612742122548
61276161276
61280161280
61292161292
61322161322
61346161346
61360161360
61381161381
613863184158
61391161391
61398161398
61417161417
61426161426
614562122912
61457161457
61460161460
614642122928
61476161476
615102123020
61512161512
61514161514
61517161517
61519161519
61520161520
61528161528
61529161529
61532161532
61539161539
615482123096
61580161580
61596161596
61599161599
616002123200
61601161601
61602161602
616042123208
61607161607
61608161608
61609161609
616342123268
61635161635
61636161636
61637161637
616393184917
61641161641
616423184926
61644161644
61660161660
616622123324
61666161666
616732123346
61674161674
61675161675
61679161679
61685161685
61689161689
61751161751
61753161753
61757161757
61760161760
61761161761
61764161764
61772161772
618042123608
61805161805
61807161807
61808161808
61813161813
61864161864
61919161919
619622123924
61967161967
61972161972
61974161974
619752123950
61976161976
61980161980
61998161998
62028162028
620292124058
62031162031
620352124070
62036162036
62040162040
62045162045
62050162050
62052162052
62067162067
62069162069
62070162070
62079162079
62148162148
62178162178
62207162207
622122124424
62213162213
62215162215
62217162217
62285162285
62286162286
62291162291
62293162293
62299162299
62302162302
62336162336
62343162343
62345162345
62348162348
62351162351
62355162355
62380162380
62389162389
62393162393
62394162394
62395162395
62400162400
62425162425
62430162430
624452124890
62449162449
62450162450
62451162451
62453162453
62456162456
62459162459
62462162462
62463162463
62479162479
62481162481
62482162482
62484162484
62487162487
62489162489
62490162490
62491162491
62493162493
62494162494
62496162496
62497162497
62526162526
625272125054
625292125058
625312125062
625324250128
62537162537
62565162565
625662125132
62567162567
625682125136
62603162603
626042125208
626072125214
62608162608
62613162613
62618162618
62619162619
62620162620
62624162624
62625162625
62627162627
62641162641
62683162683
62688162688
62689162689
62692162692
62694162694
62697162697
62698162698
62699162699
627003188100
62701162701
62702162702
62703162703
62707162707
62708162708
62729162729
627332125466
62737162737
62753162753
62833162833
62891162891
62944162944
62946162946
62947162947
629522125904
62979162979
62983162983
629862125972
62988162988
62989162989
63058163058
63067163067
630682126136
63069163069
63078163078
63654163654
63796163796
63912163912
64028164028
64157164157
64189164189
64257164257
64314164314
64430164430
64448164448
64466164466
64471164471
64475164475
64476164476
64477164477
64523164523
64640164640
64725164725
65104165104
65200165200
65318165318
65404165404
65497165497
6553676850331648
Total177099416403
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
4312
616
7214
818
919
11222
13113
14114
15460
16116
17234
18118
20120
22244
29129
30130
31131
32132
33133
343102
35135
36136
37274
38138
39278
403120
414164
423126
43143
46146
48148
49149
512102
52152
53153
542108
552110
564224
573171
58158
593177
60160
62162
63163
64164
67167
692138
72172
73173
75175
77177
78178
81181
82182
842168
873261
892178
912182
934372
94194
95195
962192
982196
992198
1041104
1051105
1061106
1071107
1092218
1101110
1111111
1131113
1151115
1201120
1222244
1251125
1261126
1301130
1323396
1331133
1343402
1351135
1361136
1381138
1423426
1462292
1472294
1482296
1501150
1511151
1522304
1532306
1541154
1553465
1562312
1571157
1612322
1623486
1632326
1671167
1702340
1712342
1722344
1733519
1741174
1752350
1781178
1801180
1821182
1911191
1921192
1953585
1961196
1981198
1991199
2002400
2011201
2031203
2052410
2061206
2071207
2101210
2111211
2122424
2132426
2141214
2181218
2192438
2211221
2221222
2231223
2244896
2263678
2272454
2282456
2291229
2301230
2311231
2321232
2333699
2344936
2353705
2361236
2371237
2381238
2391239
2401240
2433729
2441244
2461246
2502500
2511251
2521252
2531253
2541254
2551255
2583774
2593777
2612522
2622524
2633789
2641264
2651265
2661266
2671267
2691269
2721272
2752550
2771277
2781278
2791279
2802560
2812562
2821282
2841284
2851285
2862572
2871287
2881288
2891289
2901290
2921292
2931293
2942588
2951295
2991299
3002600
3011301
3042608
3051305
3081308
3091309
3101310
3112622
3121312
3131313
3141314
3151315
3173951
3181318
3193957
3202640
3213963
3222644
3231323
3291329
3301330
3361336
3372674
3391339
3412682
34331029
3441344
3462692
3471347
3502700
3511351
35231056
3562712
3571357
3581358
3601360
3611361
3621362
3632726
3641364
3652730
3661366
3681368
3692738
3712742
3752750
3761376
3781378
3821382
3831383
3842768
3851385
3862772
3901390
3911391
39541580
3991399
4041404
4051405
4071407
4151415
4201420
4211421
4231423
4241424
4252850
4272854
42831284
4291429
4331433
43531305
4371437
4391439
4421442
4452890
4461446
4481448
4501450
4511451
4541454
4562912
4571457
4581458
4601460
4621462
4632926
4641464
4662932
4681468
47131413
4722944
4731473
4741474
4761476
4771477
4782956
4792958
4801480
48141924
4822964
4861486
4901490
4921492
4962992
4981498
4991499
50031500
50152505
5051505
5061506
5071507
5081508
5091509
5101510
51131533
5121512
5131513
51431542
5151515
51721034
51831554
51931557
52021040
5221522
5231523
5241524
52531575
52621052
52721054
52831584
5291529
53021060
53121062
53431602
53531605
53721074
53821076
53921078
54021080
5411541
54221084
54321086
5451545
54721094
54921098
5501550
5521552
55442216
55521110
55621112
5571557
5581558
5591559
56121122
5621562
5641564
5661566
5681568
5701570
5731573
57521150
57621152
5781578
5791579
5801580
58421168
58542340
58621172
5881588
58921178
59031770
5911591
59231776
59331779
59442376
59521190
5961596
59721194
59921198
60021200
6011601
60221204
60321206
60442416
60531815
6061606
6081608
6091609
61063660
6111611
6131613
6141614
6161616
6171617
62231866
6241624
62531875
6271627
6281628
6291629
6301630
6351635
6361636
6371637
6391639
64121282
6431643
6451645
6471647
64921298
65031950
65153255
6521652
65331959
6561656
6591659
6601660
6611661
6621662
6651665
6701670
6711671
67221344
6771677
6801680
6821682
68332049
6841684
6891689
69021380
6921692
6981698
70232106
7041704
70521410
70621412
70721414
7101710
7131713
7151715
71621432
72021440
7211721
7221722
72421448
7251725
72621452
7291729
73232196
73321466
7341734
7351735
7361736
7371737
7411741
7421742
74421488
74521490
74642984
7491749
75132253
75221504
7541754
7551755
75621512
75743028
7581758
7591759
7601760
76132283
7641764
76632298
7671767
76843072
7691769
7701770
7721772
77332319
7741774
7751775
77732331
7781778
77943116
7821782
7831783
78421568
78621572
7881788
78921578
79032370
7911791
7931793
79421588
7951795
7961796
7981798
80032400
80243208
8031803
80532415
8071807
80832424
80921618
8131813
81421628
8161816
81921638
8201820
8211821
8221822
8231823
82432472
82521650
82621652
8271827
82821656
82932487
83032490
8311831
8321832
8331833
83932517
8401840
8411841
84232526
8441844
84621692
8471847
8481848
8491849
85121702
8521852
8531853
8541854
85532565
8561856
8571857
8581858
8591859
86221724
8651865
86621732
8671867
8691869
8701870
87143484
87432622
8751875
8761876
87721754
87821756
87921758
8801880
8811881
88332649
88521770
88621772
8871887
8891889
89021780
8911891
8921892
8941894
89543580
89621792
8971897
89821796
89921798
9011901
90221804
9031903
9041904
90521810
90621812
90732721
9081908
90921818
9101910
9131913
91421828
9181918
9191919
9201920
9211921
9231923
9261926
9281928
9301930
93121862
9321932
9331933
93421868
93521870
9361936
9371937
93821876
94021880
9421942
9431943
94621892
94721894
9481948
9491949
9531953
9541954
95821916
9591959
9611961
9641964
96621932
96721934
9711971
9731973
97421948
97621952
9781978
9791979
98121962
9821982
9831983
9841984
98521970
9891989
9901990
9911991
99732991
99821996
99921998
100211002
100311003
100422008
100533015
100622012
101111011
101322026
101422028
101822036
102422048
102533075
10289668499391152
Total9768699910717
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
096684
21000
81
Total97685
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333839266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888233bd0f873055
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3333626430663837
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_5_16.json b/autobahn/client/tungstenite_case_12_5_16.json new file mode 100644 index 0000000..d818ec6 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_16.json @@ -0,0 +1,1670 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 389, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 11386, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=389&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 8dDIsYfYJmiEeljGg/exrg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 4hkBaMiD0DW13tyXNlLLTo3Oqjc=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.5.16", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "58": 1, + "257": 1, + "1374": 1, + "1443": 1, + "1493": 2, + "1587": 1, + "1633": 1, + "3457": 1, + "3542": 1, + "3591": 1, + "3654": 1, + "3693": 1, + "3791": 1, + "3792": 1, + "3851": 1, + "3901": 1, + "3925": 1, + "4006": 1, + "4061": 1, + "4349": 1, + "4480": 1, + "4542": 1, + "4697": 1, + "4854": 1, + "5002": 1, + "5466": 1, + "5535": 1, + "5596": 1, + "5638": 1, + "5718": 1, + "5793": 1, + "7756": 1, + "7851": 1, + "7884": 1, + "7938": 1, + "8017": 1, + "8104": 1, + "8791": 1, + "8898": 1, + "9008": 1, + "9091": 1, + "9169": 1, + "9274": 1, + "9495": 1, + "9571": 1, + "9626": 1, + "9694": 1, + "9753": 1, + "9755": 1, + "9788": 1, + "9832": 1, + "9867": 1, + "9892": 1, + "10029": 1, + "10074": 1, + "10889": 1, + "10965": 1, + "11080": 1, + "11184": 1, + "11271": 1, + "11385": 1, + "13478": 1, + "13553": 1, + "13647": 1, + "13671": 1, + "13686": 1, + "13720": 1, + "14369": 1, + "14472": 1, + "14487": 1, + "14592": 1, + "14722": 1, + "14852": 1, + "15078": 1, + "15095": 1, + "15100": 1, + "15135": 1, + "15144": 1, + "15161": 1, + "15242": 1, + "15245": 1, + "15277": 1, + "15294": 1, + "15326": 1, + "15331": 1, + "15370": 1, + "15394": 1, + "15410": 1, + "15430": 1, + "15458": 1, + "15537": 1, + "17549": 1, + "17626": 1, + "17682": 1, + "17748": 1, + "17809": 1, + "18694": 1, + "18761": 1, + "18853": 1, + "18892": 1, + "18978": 1, + "19072": 1, + "19123": 1, + "19139": 1, + "19161": 1, + "19176": 1, + "19195": 1, + "19208": 1, + "19512": 1, + "19524": 1, + "19546": 1, + "19556": 1, + "19581": 1, + "19582": 1, + "19855": 1, + "19991": 1, + "20124": 1, + "20259": 1, + "20378": 1, + "20510": 1, + "21201": 1, + "21218": 1, + "21219": 1, + "21229": 1, + "21232": 1, + "21249": 1, + "21251": 1, + "21324": 1, + "21326": 1, + "21380": 1, + "21460": 1, + "21484": 1, + "21515": 1, + "21574": 1, + "21617": 1, + "21640": 1, + "21646": 1, + "21685": 1, + "21847": 1, + "21874": 1, + "21881": 1, + "21901": 1, + "21902": 1, + "21957": 1, + "22075": 1, + "22084": 1, + "22098": 1, + "22115": 1, + "22130": 1, + "22146": 1, + "22378": 1, + "22380": 1, + "22394": 1, + "22407": 1, + "22411": 1, + "22435": 1, + "23284": 1, + "23421": 1, + "23517": 1, + "23657": 1, + "23795": 1, + "23927": 1, + "25057": 1, + "25198": 1, + "25327": 1, + "25463": 1, + "25595": 1, + "25735": 1, + "28352": 1, + "28497": 1, + "28648": 1, + "28782": 1, + "28929": 1, + "29069": 1, + "29371": 1, + "29403": 1, + "29493": 1, + "29622": 1, + "29694": 1, + "29716": 1, + "30478": 1, + "30614": 1, + "30748": 1, + "30880": 1, + "31016": 1, + "31153": 1, + "31248": 1, + "31277": 1, + "31299": 1, + "31318": 1, + "31341": 1, + "31353": 1, + "31782": 1, + "31861": 1, + "31949": 1, + "32037": 1, + "32113": 1, + "32185": 1, + "33347": 1, + "33490": 1, + "33564": 1, + "33682": 1, + "33815": 1, + "33956": 1, + "35764": 1, + "35800": 1, + "35890": 1, + "35896": 1, + "35947": 1, + "35990": 2, + "36007": 1, + "36016": 1, + "36028": 1, + "36043": 1, + "36134": 1, + "36136": 1, + "36216": 1, + "36229": 1, + "36245": 1, + "36344": 1, + "36470": 1, + "37365": 1, + "37404": 1, + "37449": 1, + "37502": 1, + "37635": 1, + "37703": 1, + "39215": 1, + "39314": 1, + "39390": 2, + "39420": 1, + "39552": 1, + "39769": 1, + "39879": 1, + "39980": 1, + "40060": 1, + "40097": 1, + "40112": 1, + "40116": 2, + "40120": 1, + "40143": 1, + "40152": 1, + "40252": 1, + "41037": 1, + "41168": 1, + "41303": 1, + "41439": 1, + "41575": 1, + "41703": 1, + "41977": 1, + "42074": 1, + "42139": 1, + "42195": 1, + "42205": 1, + "42300": 1, + "42301": 1, + "42364": 1, + "42379": 1, + "42396": 1, + "42400": 1, + "43461": 1, + "43541": 1, + "43598": 1, + "43655": 1, + "43658": 1, + "43726": 1, + "43739": 1, + "43748": 1, + "43778": 1, + "43780": 1, + "43791": 1, + "43856": 1, + "43913": 1, + "43917": 1, + "43964": 1, + "43991": 2, + "44054": 1, + "44087": 1, + "44131": 1, + "44182": 1, + "44212": 1, + "44279": 1, + "44282": 1, + "44399": 1, + "44526": 1, + "44641": 1, + "44767": 1, + "44893": 1, + "45021": 1, + "45395": 1, + "45399": 1, + "45402": 1, + "45413": 1, + "45417": 1, + "45425": 1, + "45507": 1, + "45515": 1, + "45524": 1, + "45525": 1, + "45554": 1, + "45605": 1, + "45722": 1, + "45832": 1, + "45841": 1, + "45847": 1, + "45919": 1, + "45941": 1, + "46018": 1, + "46034": 1, + "46094": 1, + "46122": 1, + "46185": 1, + "46229": 1, + "47283": 1, + "47366": 1, + "47401": 1, + "47457": 1, + "47522": 1, + "47559": 1, + "47650": 1, + "47659": 1, + "47714": 1, + "47779": 1, + "47892": 1, + "47993": 1, + "48857": 1, + "48955": 1, + "49046": 1, + "49053": 1, + "49117": 2, + "49137": 1, + "49186": 1, + "49238": 2, + "49254": 1, + "49304": 1, + "49483": 1, + "49486": 1, + "49526": 1, + "49529": 1, + "49562": 1, + "49675": 1, + "49864": 1, + "49979": 1, + "50107": 1, + "50214": 1, + "50232": 1, + "50245": 1, + "50274": 1, + "50338": 1, + "50354": 1, + "50377": 1, + "50438": 1, + "50466": 1, + "50480": 1, + "50545": 1, + "50555": 1, + "50645": 1, + "50754": 1, + "50853": 1, + "52398": 1, + "52463": 1, + "52493": 1, + "52503": 1, + "52523": 1, + "52547": 1, + "52559": 1, + "52574": 1, + "52633": 1, + "52681": 1, + "52683": 1, + "52708": 1, + "52752": 1, + "52799": 1, + "52801": 1, + "52817": 1, + "52887": 1, + "52903": 1, + "52943": 1, + "53008": 1, + "53051": 1, + "53086": 1, + "53169": 1, + "53230": 1, + "54217": 1, + "54254": 1, + "54258": 1, + "54266": 1, + "54363": 1, + "54468": 1, + "54877": 1, + "54984": 1, + "55085": 1, + "55186": 1, + "55287": 1, + "55392": 1, + "55441": 1, + "55564": 1, + "55685": 1, + "55713": 1, + "55726": 1, + "55746": 1, + "55805": 1, + "55816": 1, + "55858": 1, + "55871": 1, + "55938": 1, + "56062": 1, + "56278": 1, + "56327": 1, + "56425": 1, + "56450": 1, + "56501": 1, + "56591": 1, + "57403": 1, + "57495": 1, + "57585": 1, + "57677": 1, + "57808": 1, + "57879": 1, + "58349": 1, + "58449": 1, + "58534": 1, + "58536": 1, + "58564": 1, + "58573": 1, + "58579": 2, + "58580": 2, + "58687": 1, + "58691": 1, + "58813": 2, + "58921": 1, + "58930": 1, + "59067": 1, + "59199": 1, + "59231": 1, + "59232": 1, + "59235": 2, + "59241": 1, + "59243": 1, + "59285": 2, + "59286": 1, + "59288": 1, + "59289": 1, + "59297": 1, + "59387": 1, + "59392": 1, + "59394": 2, + "59395": 1, + "59396": 2, + "59399": 1, + "59401": 1, + "59402": 2, + "59483": 1, + "59517": 2, + "59521": 1, + "59522": 2, + "59523": 1, + "59587": 1, + "59609": 1, + "59610": 1, + "59612": 1, + "59614": 2, + "59616": 1, + "59622": 2, + "59625": 1, + "59626": 2, + "59627": 2, + "59628": 1, + "59630": 1, + "59631": 3, + "59632": 2, + "59633": 1, + "59635": 1, + "59639": 1, + "59640": 1, + "59649": 1, + "59653": 1, + "59654": 1, + "59657": 3, + "59663": 1, + "59664": 1, + "59669": 1, + "59673": 1, + "59676": 1, + "59677": 1, + "59679": 1, + "59689": 1, + "59705": 1, + "59715": 1, + "59717": 1, + "59720": 1, + "59721": 1, + "59723": 2, + "59727": 1, + "59728": 1, + "59729": 1, + "59730": 1, + "59752": 1, + "59761": 1, + "59763": 1, + "59790": 1, + "59792": 1, + "59834": 1, + "59836": 1, + "59838": 1, + "59846": 2, + "59847": 1, + "59850": 1, + "59851": 1, + "59853": 2, + "59854": 1, + "59856": 1, + "59859": 2, + "59860": 1, + "59867": 1, + "59869": 1, + "59878": 1, + "59879": 1, + "59884": 1, + "59885": 1, + "59886": 1, + "59887": 1, + "59888": 2, + "59890": 1, + "59891": 1, + "59894": 1, + "59895": 1, + "59896": 1, + "59899": 1, + "59901": 1, + "59912": 1, + "59914": 1, + "59915": 1, + "59916": 2, + "59918": 1, + "59955": 2, + "59956": 1, + "59960": 1, + "59961": 1, + "59962": 1, + "59963": 1, + "59968": 1, + "59984": 1, + "59988": 1, + "59992": 1, + "59996": 2, + "59997": 1, + "59999": 1, + "60000": 1, + "60002": 1, + "60011": 1, + "60014": 1, + "60015": 1, + "60018": 2, + "60020": 2, + "60022": 1, + "60024": 1, + "60069": 1, + "60096": 1, + "60098": 1, + "60102": 1, + "60103": 1, + "60104": 1, + "60111": 2, + "60114": 1, + "60116": 1, + "60117": 1, + "60124": 1, + "60126": 1, + "60127": 3, + "60128": 1, + "60129": 2, + "60133": 1, + "60135": 1, + "60138": 2, + "60149": 1, + "60151": 1, + "60152": 2, + "60154": 1, + "60156": 2, + "60157": 3, + "60160": 3, + "60161": 1, + "60164": 1, + "60166": 1, + "60167": 2, + "60168": 1, + "60171": 1, + "60175": 2, + "60176": 3, + "60177": 2, + "60178": 1, + "60179": 1, + "60181": 2, + "60183": 1, + "60185": 1, + "60187": 1, + "60188": 1, + "60191": 2, + "60194": 1, + "60237": 1, + "60241": 1, + "60263": 1, + "60268": 1, + "60269": 2, + "60271": 1, + "60272": 1, + "60284": 1, + "60353": 1, + "60356": 1, + "60358": 1, + "60447": 1, + "60450": 2, + "60452": 1, + "60453": 1, + "60460": 1, + "60525": 1, + "60526": 1, + "60531": 1, + "60532": 1, + "60538": 1, + "60541": 1, + "60699": 1, + "60700": 2, + "60701": 1, + "60702": 1, + "60706": 1, + "60758": 1, + "60762": 2, + "60764": 1, + "60768": 1, + "60769": 1, + "60877": 1, + "60909": 1, + "60912": 1, + "60913": 3, + "60914": 1, + "60915": 1, + "60916": 1, + "60919": 1, + "60922": 1, + "60927": 1, + "60928": 1, + "60931": 1, + "60933": 1, + "60936": 1, + "60937": 1, + "60942": 1, + "60961": 1, + "60962": 1, + "60964": 1, + "60967": 1, + "60968": 2, + "60982": 1, + "60984": 1, + "60987": 1, + "60990": 1, + "60996": 1, + "60997": 1, + "60999": 1, + "61000": 1, + "61003": 1, + "61014": 1, + "61078": 1, + "61142": 1, + "61150": 1, + "61151": 1, + "61152": 1, + "61153": 1, + "61154": 1, + "61155": 1, + "61183": 1, + "61216": 1, + "61219": 1, + "61221": 1, + "61226": 1, + "61228": 1, + "61229": 1, + "61265": 1, + "61268": 1, + "61271": 1, + "61273": 2, + "61274": 2, + "61276": 1, + "61280": 1, + "61292": 1, + "61322": 1, + "61346": 1, + "61360": 1, + "61381": 1, + "61386": 3, + "61391": 1, + "61398": 1, + "61417": 1, + "61426": 1, + "61456": 2, + "61457": 1, + "61460": 1, + "61464": 2, + "61476": 1, + "61510": 2, + "61512": 1, + "61514": 1, + "61517": 1, + "61519": 1, + "61520": 1, + "61528": 1, + "61529": 1, + "61532": 1, + "61539": 1, + "61548": 2, + "61580": 1, + "61596": 1, + "61599": 1, + "61600": 2, + "61601": 1, + "61602": 1, + "61604": 2, + "61607": 1, + "61608": 1, + "61609": 1, + "61634": 2, + "61635": 1, + "61636": 1, + "61637": 1, + "61639": 3, + "61641": 1, + "61642": 3, + "61644": 1, + "61660": 1, + "61662": 2, + "61666": 1, + "61673": 2, + "61674": 1, + "61675": 1, + "61679": 1, + "61685": 1, + "61689": 1, + "61751": 1, + "61753": 1, + "61757": 1, + "61760": 1, + "61761": 1, + "61764": 1, + "61772": 1, + "61804": 2, + "61805": 1, + "61807": 1, + "61808": 1, + "61813": 1, + "61864": 1, + "61919": 1, + "61962": 2, + "61967": 1, + "61972": 1, + "61974": 1, + "61975": 2, + "61976": 1, + "61980": 1, + "61998": 1, + "62028": 1, + "62029": 2, + "62031": 1, + "62035": 2, + "62036": 1, + "62040": 1, + "62045": 1, + "62050": 1, + "62052": 1, + "62067": 1, + "62069": 1, + "62070": 1, + "62079": 1, + "62148": 1, + "62178": 1, + "62207": 1, + "62212": 2, + "62213": 1, + "62215": 1, + "62217": 1, + "62285": 1, + "62286": 1, + "62291": 1, + "62293": 1, + "62299": 1, + "62302": 1, + "62336": 1, + "62343": 1, + "62345": 1, + "62348": 1, + "62351": 1, + "62355": 1, + "62380": 1, + "62389": 1, + "62393": 1, + "62394": 1, + "62395": 1, + "62400": 1, + "62425": 1, + "62430": 1, + "62445": 2, + "62449": 1, + "62450": 1, + "62451": 1, + "62453": 1, + "62456": 1, + "62459": 1, + "62462": 1, + "62463": 1, + "62479": 1, + "62481": 1, + "62482": 1, + "62484": 1, + "62487": 1, + "62489": 1, + "62490": 1, + "62491": 1, + "62493": 1, + "62494": 1, + "62496": 1, + "62497": 1, + "62526": 1, + "62527": 2, + "62529": 2, + "62531": 2, + "62532": 4, + "62537": 1, + "62565": 1, + "62566": 2, + "62567": 1, + "62568": 2, + "62603": 1, + "62604": 2, + "62607": 2, + "62608": 1, + "62613": 1, + "62618": 1, + "62619": 1, + "62620": 1, + "62624": 1, + "62625": 1, + "62627": 1, + "62641": 1, + "62683": 1, + "62688": 1, + "62689": 1, + "62692": 1, + "62694": 1, + "62697": 1, + "62698": 1, + "62699": 1, + "62700": 3, + "62701": 1, + "62702": 1, + "62703": 1, + "62707": 1, + "62708": 1, + "62729": 1, + "62733": 2, + "62737": 1, + "62753": 1, + "62833": 1, + "62891": 1, + "62944": 1, + "62946": 1, + "62947": 1, + "62952": 2, + "62979": 1, + "62983": 1, + "62986": 2, + "62988": 1, + "62989": 1, + "63058": 1, + "63067": 1, + "63068": 2, + "63069": 1, + "63078": 1, + "63654": 1, + "63796": 1, + "63912": 1, + "64028": 1, + "64157": 1, + "64189": 1, + "64257": 1, + "64314": 1, + "64430": 1, + "64448": 1, + "64466": 1, + "64471": 1, + "64475": 1, + "64476": 1, + "64477": 1, + "64523": 1, + "64640": 1, + "64725": 1, + "65104": 1, + "65200": 1, + "65318": 1, + "65404": 1, + "65497": 1, + "65536": 768 + }, + "started": "2020-09-07T18:51:20.245Z", + "trafficStats": { + "incomingCompressionRatio": 0.7583887481689453, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 99403530, + "incomingOctetsWireLevel": 99416138, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.00012683654192159976, + "outgoingCompressionRatio": 0.7592770767211914, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 99519965, + "outgoingOctetsWireLevel": 99910461, + "outgoingWebSocketFrames": 97684, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.003923795592170877, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 96684, + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 3, + "6": 1, + "7": 2, + "8": 1, + "9": 1, + "11": 2, + "13": 1, + "14": 1, + "15": 4, + "16": 1, + "17": 2, + "18": 1, + "20": 1, + "22": 2, + "29": 1, + "30": 1, + "31": 1, + "32": 1, + "33": 1, + "34": 3, + "35": 1, + "36": 1, + "37": 2, + "38": 1, + "39": 2, + "40": 3, + "41": 4, + "42": 3, + "43": 1, + "46": 1, + "48": 1, + "49": 1, + "51": 2, + "52": 1, + "53": 1, + "54": 2, + "55": 2, + "56": 4, + "57": 3, + "58": 1, + "59": 3, + "60": 1, + "62": 1, + "63": 1, + "64": 1, + "67": 1, + "69": 2, + "72": 1, + "73": 1, + "75": 1, + "77": 1, + "78": 1, + "81": 1, + "82": 1, + "84": 2, + "87": 3, + "89": 2, + "91": 2, + "93": 4, + "94": 1, + "95": 1, + "96": 2, + "98": 2, + "99": 2, + "104": 1, + "105": 1, + "106": 1, + "107": 1, + "109": 2, + "110": 1, + "111": 1, + "113": 1, + "115": 1, + "120": 1, + "122": 2, + "125": 1, + "126": 1, + "130": 1, + "132": 3, + "133": 1, + "134": 3, + "135": 1, + "136": 1, + "138": 1, + "142": 3, + "146": 2, + "147": 2, + "148": 2, + "150": 1, + "151": 1, + "152": 2, + "153": 2, + "154": 1, + "155": 3, + "156": 2, + "157": 1, + "161": 2, + "162": 3, + "163": 2, + "167": 1, + "170": 2, + "171": 2, + "172": 2, + "173": 3, + "174": 1, + "175": 2, + "178": 1, + "180": 1, + "182": 1, + "191": 1, + "192": 1, + "195": 3, + "196": 1, + "198": 1, + "199": 1, + "200": 2, + "201": 1, + "203": 1, + "205": 2, + "206": 1, + "207": 1, + "210": 1, + "211": 1, + "212": 2, + "213": 2, + "214": 1, + "218": 1, + "219": 2, + "221": 1, + "222": 1, + "223": 1, + "224": 4, + "226": 3, + "227": 2, + "228": 2, + "229": 1, + "230": 1, + "231": 1, + "232": 1, + "233": 3, + "234": 4, + "235": 3, + "236": 1, + "237": 1, + "238": 1, + "239": 1, + "240": 1, + "243": 3, + "244": 1, + "246": 1, + "250": 2, + "251": 1, + "252": 1, + "253": 1, + "254": 1, + "255": 1, + "258": 3, + "259": 3, + "261": 2, + "262": 2, + "263": 3, + "264": 1, + "265": 1, + "266": 1, + "267": 1, + "269": 1, + "272": 1, + "275": 2, + "277": 1, + "278": 1, + "279": 1, + "280": 2, + "281": 2, + "282": 1, + "284": 1, + "285": 1, + "286": 2, + "287": 1, + "288": 1, + "289": 1, + "290": 1, + "292": 1, + "293": 1, + "294": 2, + "295": 1, + "299": 1, + "300": 2, + "301": 1, + "304": 2, + "305": 1, + "308": 1, + "309": 1, + "310": 1, + "311": 2, + "312": 1, + "313": 1, + "314": 1, + "315": 1, + "317": 3, + "318": 1, + "319": 3, + "320": 2, + "321": 3, + "322": 2, + "323": 1, + "329": 1, + "330": 1, + "336": 1, + "337": 2, + "339": 1, + "341": 2, + "343": 3, + "344": 1, + "346": 2, + "347": 1, + "350": 2, + "351": 1, + "352": 3, + "356": 2, + "357": 1, + "358": 1, + "360": 1, + "361": 1, + "362": 1, + "363": 2, + "364": 1, + "365": 2, + "366": 1, + "368": 1, + "369": 2, + "371": 2, + "375": 2, + "376": 1, + "378": 1, + "382": 1, + "383": 1, + "384": 2, + "385": 1, + "386": 2, + "390": 1, + "391": 1, + "395": 4, + "399": 1, + "404": 1, + "405": 1, + "407": 1, + "415": 1, + "420": 1, + "421": 1, + "423": 1, + "424": 1, + "425": 2, + "427": 2, + "428": 3, + "429": 1, + "433": 1, + "435": 3, + "437": 1, + "439": 1, + "442": 1, + "445": 2, + "446": 1, + "448": 1, + "450": 1, + "451": 1, + "454": 1, + "456": 2, + "457": 1, + "458": 1, + "460": 1, + "462": 1, + "463": 2, + "464": 1, + "466": 2, + "468": 1, + "471": 3, + "472": 2, + "473": 1, + "474": 1, + "476": 1, + "477": 1, + "478": 2, + "479": 2, + "480": 1, + "481": 4, + "482": 2, + "486": 1, + "490": 1, + "492": 1, + "496": 2, + "498": 1, + "499": 1, + "500": 3, + "501": 5, + "505": 1, + "506": 1, + "507": 1, + "508": 1, + "509": 1, + "510": 1, + "511": 3, + "512": 1, + "513": 1, + "514": 3, + "515": 1, + "517": 2, + "518": 3, + "519": 3, + "520": 2, + "522": 1, + "523": 1, + "524": 1, + "525": 3, + "526": 2, + "527": 2, + "528": 3, + "529": 1, + "530": 2, + "531": 2, + "534": 3, + "535": 3, + "537": 2, + "538": 2, + "539": 2, + "540": 2, + "541": 1, + "542": 2, + "543": 2, + "545": 1, + "547": 2, + "549": 2, + "550": 1, + "552": 1, + "554": 4, + "555": 2, + "556": 2, + "557": 1, + "558": 1, + "559": 1, + "561": 2, + "562": 1, + "564": 1, + "566": 1, + "568": 1, + "570": 1, + "573": 1, + "575": 2, + "576": 2, + "578": 1, + "579": 1, + "580": 1, + "584": 2, + "585": 4, + "586": 2, + "588": 1, + "589": 2, + "590": 3, + "591": 1, + "592": 3, + "593": 3, + "594": 4, + "595": 2, + "596": 1, + "597": 2, + "599": 2, + "600": 2, + "601": 1, + "602": 2, + "603": 2, + "604": 4, + "605": 3, + "606": 1, + "608": 1, + "609": 1, + "610": 6, + "611": 1, + "613": 1, + "614": 1, + "616": 1, + "617": 1, + "622": 3, + "624": 1, + "625": 3, + "627": 1, + "628": 1, + "629": 1, + "630": 1, + "635": 1, + "636": 1, + "637": 1, + "639": 1, + "641": 2, + "643": 1, + "645": 1, + "647": 1, + "649": 2, + "650": 3, + "651": 5, + "652": 1, + "653": 3, + "656": 1, + "659": 1, + "660": 1, + "661": 1, + "662": 1, + "665": 1, + "670": 1, + "671": 1, + "672": 2, + "677": 1, + "680": 1, + "682": 1, + "683": 3, + "684": 1, + "689": 1, + "690": 2, + "692": 1, + "698": 1, + "702": 3, + "704": 1, + "705": 2, + "706": 2, + "707": 2, + "710": 1, + "713": 1, + "715": 1, + "716": 2, + "720": 2, + "721": 1, + "722": 1, + "724": 2, + "725": 1, + "726": 2, + "729": 1, + "732": 3, + "733": 2, + "734": 1, + "735": 1, + "736": 1, + "737": 1, + "741": 1, + "742": 1, + "744": 2, + "745": 2, + "746": 4, + "749": 1, + "751": 3, + "752": 2, + "754": 1, + "755": 1, + "756": 2, + "757": 4, + "758": 1, + "759": 1, + "760": 1, + "761": 3, + "764": 1, + "766": 3, + "767": 1, + "768": 4, + "769": 1, + "770": 1, + "772": 1, + "773": 3, + "774": 1, + "775": 1, + "777": 3, + "778": 1, + "779": 4, + "782": 1, + "783": 1, + "784": 2, + "786": 2, + "788": 1, + "789": 2, + "790": 3, + "791": 1, + "793": 1, + "794": 2, + "795": 1, + "796": 1, + "798": 1, + "800": 3, + "802": 4, + "803": 1, + "805": 3, + "807": 1, + "808": 3, + "809": 2, + "813": 1, + "814": 2, + "816": 1, + "819": 2, + "820": 1, + "821": 1, + "822": 1, + "823": 1, + "824": 3, + "825": 2, + "826": 2, + "827": 1, + "828": 2, + "829": 3, + "830": 3, + "831": 1, + "832": 1, + "833": 1, + "839": 3, + "840": 1, + "841": 1, + "842": 3, + "844": 1, + "846": 2, + "847": 1, + "848": 1, + "849": 1, + "851": 2, + "852": 1, + "853": 1, + "854": 1, + "855": 3, + "856": 1, + "857": 1, + "858": 1, + "859": 1, + "862": 2, + "865": 1, + "866": 2, + "867": 1, + "869": 1, + "870": 1, + "871": 4, + "874": 3, + "875": 1, + "876": 1, + "877": 2, + "878": 2, + "879": 2, + "880": 1, + "881": 1, + "883": 3, + "885": 2, + "886": 2, + "887": 1, + "889": 1, + "890": 2, + "891": 1, + "892": 1, + "894": 1, + "895": 4, + "896": 2, + "897": 1, + "898": 2, + "899": 2, + "901": 1, + "902": 2, + "903": 1, + "904": 1, + "905": 2, + "906": 2, + "907": 3, + "908": 1, + "909": 2, + "910": 1, + "913": 1, + "914": 2, + "918": 1, + "919": 1, + "920": 1, + "921": 1, + "923": 1, + "926": 1, + "928": 1, + "930": 1, + "931": 2, + "932": 1, + "933": 1, + "934": 2, + "935": 2, + "936": 1, + "937": 1, + "938": 2, + "940": 2, + "942": 1, + "943": 1, + "946": 2, + "947": 2, + "948": 1, + "949": 1, + "953": 1, + "954": 1, + "958": 2, + "959": 1, + "961": 1, + "964": 1, + "966": 2, + "967": 2, + "971": 1, + "973": 1, + "974": 2, + "976": 2, + "978": 1, + "979": 1, + "981": 2, + "982": 1, + "983": 1, + "984": 1, + "985": 2, + "989": 1, + "990": 1, + "991": 1, + "997": 3, + "998": 2, + "999": 2, + "1002": 1, + "1003": 1, + "1004": 2, + "1005": 3, + "1006": 2, + "1011": 1, + "1013": 2, + "1014": 2, + "1018": 2, + "1024": 2, + "1025": 3, + "1028": 96684 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333839266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888233bd0f873055" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "33bd0f87" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_5_17.html b/autobahn/client/tungstenite_case_12_5_17.html new file mode 100644 index 0000000..a5559cd --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_17.html @@ -0,0 +1,2018 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.5.17 : Pass - 9960 ms @ 2020-09-07T18:51:31.633Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=390&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: +BU0k8WoDhPax0aWqrw/qw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: /n+FJhBtQBFPCZ3YrG9xbc0+sTU=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
58158
2571257
137411374
144311443
149322986
158711587
163311633
345713457
354213542
359113591
365413654
369313693
379113791
379213792
385113851
390113901
392513925
400614006
406114061
434914349
448014480
454214542
469714697
485414854
500215002
546615466
553515535
559615596
563815638
571815718
579315793
775617756
785117851
788417884
793817938
801718017
810418104
879118791
889818898
900819008
909119091
916919169
927419274
949519495
957119571
962619626
969419694
975319753
975519755
978819788
983219832
986719867
989219892
10029110029
10074110074
10889110889
10965110965
11080111080
11184111184
11271111271
11385111385
13478113478
13553113553
13647113647
13671113671
13686113686
13720113720
14369114369
14472114472
14487114487
14592114592
14722114722
14852114852
15078115078
15095115095
15100115100
15135115135
15144115144
15161115161
15242115242
15245115245
15277115277
15294115294
15326115326
15331115331
15370115370
15394115394
15410115410
15430115430
15458115458
15537115537
17549117549
17626117626
17682117682
17748117748
17809117809
18694118694
18761118761
18853118853
18892118892
18978118978
19072119072
19123119123
19139119139
19161119161
19176119176
19195119195
19208119208
19512119512
19524119524
19546119546
19556119556
19581119581
19582119582
19855119855
19991119991
20124120124
20259120259
20378120378
20510120510
21201121201
21218121218
21219121219
21229121229
21232121232
21249121249
21251121251
21324121324
21326121326
21380121380
21460121460
21484121484
21515121515
21574121574
21617121617
21640121640
21646121646
21685121685
21847121847
21874121874
21881121881
21901121901
21902121902
21957121957
22075122075
22084122084
22098122098
22115122115
22130122130
22146122146
22378122378
22380122380
22394122394
22407122407
22411122411
22435122435
23284123284
23421123421
23517123517
23657123657
23795123795
23927123927
25057125057
25198125198
25327125327
25463125463
25595125595
25735125735
28352128352
28497128497
28648128648
28782128782
28929128929
29069129069
29371129371
29403129403
29493129493
29622129622
29694129694
29716129716
30478130478
30614130614
30748130748
30880130880
31016131016
31153131153
31248131248
31277131277
31299131299
31318131318
31341131341
31353131353
31782131782
31861131861
31949131949
32037132037
32113132113
32185132185
33347133347
33490133490
33564133564
33682133682
33815133815
33956133956
35764135764
35800135800
35890135890
35896135896
35947135947
35990271980
36007136007
36016136016
36028136028
36043136043
36134136134
36136136136
36216136216
36229136229
36245136245
36344136344
36470136470
37365137365
37404137404
37449137449
37502137502
37635137635
37703137703
39215139215
39314139314
39390278780
39420139420
39552139552
39769139769
39879139879
39980139980
40060140060
40097140097
40112140112
40116280232
40120140120
40143140143
40152140152
40252140252
41037141037
41168141168
41303141303
41439141439
41575141575
41703141703
41977141977
42074142074
42139142139
42195142195
42205142205
42300142300
42301142301
42364142364
42379142379
42396142396
42400142400
43461143461
43541143541
43598143598
43655143655
43658143658
43726143726
43739143739
43748143748
43778143778
43780143780
43791143791
43856143856
43913143913
43917143917
43964143964
43991287982
44054144054
44087144087
44131144131
44182144182
44212144212
44279144279
44282144282
44399144399
44526144526
44641144641
44767144767
44893144893
45021145021
45395145395
45399145399
45402145402
45413145413
45417145417
45425145425
45507145507
45515145515
45524145524
45525145525
45554145554
45605145605
45722145722
45832145832
45841145841
45847145847
45919145919
45941145941
46018146018
46034146034
46094146094
46122146122
46185146185
46229146229
47283147283
47366147366
47401147401
47457147457
47522147522
47559147559
47650147650
47659147659
47714147714
47779147779
47892147892
47993147993
48857148857
48955148955
49046149046
49053149053
49117298234
49137149137
49186149186
49238298476
49254149254
49304149304
49483149483
49486149486
49526149526
49529149529
49562149562
49675149675
49864149864
49979149979
50107150107
50214150214
50232150232
50245150245
50274150274
50338150338
50354150354
50377150377
50438150438
50466150466
50480150480
50545150545
50555150555
50645150645
50754150754
50853150853
52398152398
52463152463
52493152493
52503152503
52523152523
52547152547
52559152559
52574152574
52633152633
52681152681
52683152683
52708152708
52752152752
52799152799
52801152801
52817152817
52887152887
52903152903
52943152943
53008153008
53051153051
53086153086
53169153169
53230153230
54217154217
54254154254
54258154258
54266154266
54363154363
54468154468
54877154877
54984154984
55085155085
55186155186
55287155287
55392155392
55441155441
55564155564
55685155685
55713155713
55726155726
55746155746
55805155805
55816155816
55858155858
55871155871
55938155938
56062156062
56278156278
56327156327
56425156425
56450156450
56501156501
56591156591
57403157403
57495157495
57585157585
57677157677
57808157808
57879157879
58349158349
58449158449
58534158534
58536158536
58564158564
58573158573
585792117158
585802117160
58687158687
58691158691
588132117626
58921158921
58930158930
59067159067
59199159199
59231159231
59232159232
592352118470
59241159241
59243159243
592852118570
59286159286
59288159288
59289159289
59297159297
59387159387
59392159392
593942118788
59395159395
593962118792
59399159399
59401159401
594022118804
59483159483
595172119034
59521159521
595222119044
59523159523
59587159587
59609159609
59610159610
59612159612
596142119228
59616159616
596222119244
59625159625
596262119252
596272119254
59628159628
59630159630
596313178893
596322119264
59633159633
59635159635
59639159639
59640159640
59649159649
59653159653
59654159654
596573178971
59663159663
59664159664
59669159669
59673159673
59676159676
59677159677
59679159679
59689159689
59705159705
59715159715
59717159717
59720159720
59721159721
597232119446
59727159727
59728159728
59729159729
59730159730
59752159752
59761159761
59763159763
59790159790
59792159792
59834159834
59836159836
59838159838
598462119692
59847159847
59850159850
59851159851
598532119706
59854159854
59856159856
598592119718
59860159860
59867159867
59869159869
59878159878
59879159879
59884159884
59885159885
59886159886
59887159887
598882119776
59890159890
59891159891
59894159894
59895159895
59896159896
59899159899
59901159901
59912159912
59914159914
59915159915
599162119832
59918159918
599552119910
59956159956
59960159960
59961159961
59962159962
59963159963
59968159968
59984159984
59988159988
59992159992
599962119992
59997159997
59999159999
60000160000
60002160002
60011160011
60014160014
60015160015
600182120036
600202120040
60022160022
60024160024
60069160069
60096160096
60098160098
60102160102
60103160103
60104160104
601112120222
60114160114
60116160116
60117160117
60124160124
60126160126
601273180381
60128160128
601292120258
60133160133
60135160135
601382120276
60149160149
60151160151
601522120304
60154160154
601562120312
601573180471
601603180480
60161160161
60164160164
60166160166
601672120334
60168160168
60171160171
601752120350
601763180528
601772120354
60178160178
60179160179
601812120362
60183160183
60185160185
60187160187
60188160188
601912120382
60194160194
60237160237
60241160241
60263160263
60268160268
602692120538
60271160271
60272160272
60284160284
60353160353
60356160356
60358160358
60447160447
604502120900
60452160452
60453160453
60460160460
60525160525
60526160526
60531160531
60532160532
60538160538
60541160541
60699160699
607002121400
60701160701
60702160702
60706160706
60758160758
607622121524
60764160764
60768160768
60769160769
60877160877
60909160909
60912160912
609133182739
60914160914
60915160915
60916160916
60919160919
60922160922
60927160927
60928160928
60931160931
60933160933
60936160936
60937160937
60942160942
60961160961
60962160962
60964160964
60967160967
609682121936
60982160982
60984160984
60987160987
60990160990
60996160996
60997160997
60999160999
61000161000
61003161003
61014161014
61078161078
61142161142
61150161150
61151161151
61152161152
61153161153
61154161154
61155161155
61183161183
61216161216
61219161219
61221161221
61226161226
61228161228
61229161229
61265161265
61268161268
61271161271
612732122546
612742122548
61276161276
61280161280
61292161292
61322161322
61346161346
61360161360
61381161381
613863184158
61391161391
61398161398
61417161417
61426161426
614562122912
61457161457
61460161460
614642122928
61476161476
615102123020
61512161512
61514161514
61517161517
61519161519
61520161520
61528161528
61529161529
61532161532
61539161539
615482123096
61580161580
61596161596
61599161599
616002123200
61601161601
61602161602
616042123208
61607161607
61608161608
61609161609
616342123268
61635161635
61636161636
61637161637
616393184917
61641161641
616423184926
61644161644
61660161660
616622123324
61666161666
616732123346
61674161674
61675161675
61679161679
61685161685
61689161689
61751161751
61753161753
61757161757
61760161760
61761161761
61764161764
61772161772
618042123608
61805161805
61807161807
61808161808
61813161813
61864161864
61919161919
619622123924
61967161967
61972161972
61974161974
619752123950
61976161976
61980161980
61998161998
62028162028
620292124058
62031162031
620352124070
62036162036
62040162040
62045162045
62050162050
62052162052
62067162067
62069162069
62070162070
62079162079
62148162148
62178162178
62207162207
622122124424
62213162213
62215162215
62217162217
62285162285
62286162286
62291162291
62293162293
62299162299
62302162302
62336162336
62343162343
62345162345
62348162348
62351162351
62355162355
62380162380
62389162389
62393162393
62394162394
62395162395
62400162400
62425162425
62430162430
624452124890
62449162449
62450162450
62451162451
62453162453
62456162456
62459162459
62462162462
62463162463
62479162479
62481162481
62482162482
62484162484
62487162487
62489162489
62490162490
62491162491
62493162493
62494162494
62496162496
62497162497
62526162526
625272125054
625292125058
625312125062
625324250128
62537162537
62565162565
625662125132
62567162567
625682125136
62603162603
626042125208
626072125214
62608162608
62613162613
62618162618
62619162619
62620162620
62624162624
62625162625
62627162627
62641162641
62683162683
62688162688
62689162689
62692162692
62694162694
62697162697
62698162698
62699162699
627003188100
62701162701
62702162702
62703162703
62707162707
62708162708
62729162729
627332125466
62737162737
62753162753
62833162833
62891162891
62944162944
62946162946
62947162947
629522125904
62979162979
62983162983
629862125972
62988162988
62989162989
63058163058
63067163067
630682126136
63069163069
63078163078
63654163654
63796163796
63912163912
64028164028
64157164157
64189164189
64257164257
64314164314
64430164430
64448164448
64466164466
64471164471
64475164475
64476164476
64477164477
64523164523
64640164640
64725164725
65104165104
65200165200
65318165318
65404165404
65497165497
6553676850331648
Total177099416403
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
428
15115
17117
22122
29129
33133
343102
37137
39139
403120
56156
67167
78178
81181
84184
892178
912182
96196
98198
99199
1061106
1091109
1131113
1151115
1331133
1422284
1461146
1521152
1622324
1671167
1702340
1722344
1733519
1741174
1751175
1781178
1911191
1921192
1952390
1981198
2001200
2011201
2031203
2101210
2111211
2121212
2131213
2141214
2191219
2221222
2242448
2282456
2341234
2351235
2371237
2401240
2432486
2461246
2502500
2511251
2521252
2811281
2871287
3011301
3091309
3101310
3131313
3171317
3181318
3201320
3231323
3291329
3601360
3611361
3631363
3641364
3651365
3712742
3831383
3861386
3991399
4051405
4211421
4351435
4561456
4581458
4641464
4681468
52521050
5301530
5341534
5351535
5371537
53921078
5401540
5411541
5431543
5491549
5611561
58621172
5901590
59221184
5941594
5961596
59721194
6001600
6021602
60321206
6081608
61021220
6131613
62521250
6291629
65121302
6591659
6601660
6651665
69021380
7061706
7071707
7131713
7161716
7201720
7251725
7261726
7291729
7321732
7371737
7411741
7451745
7581758
7591759
7611761
7641764
7661766
7671767
76843072
7691769
7701770
8161816
8281828
8331833
83932517
8421842
8461846
8471847
8481848
85121702
8541854
85521710
8581858
8591859
8661866
8671867
8701870
87132613
8851885
8901890
8941894
8961896
8971897
8981898
8991899
9021902
9051905
9101910
9131913
9321932
9351935
9381938
9421942
9461946
94721894
9491949
9531953
9541954
9661966
9741974
9761976
9791979
9811981
9851985
9901990
99732991
9981998
100211002
100411004
100511005
100622012
101111011
101311013
101411014
101822036
102511025
103011030
103311033
103411034
103511035
103722074
103911039
104011040
104133123
104211042
104311043
104411044
105611056
105711057
106311063
107711077
108022160
108111081
108233246
108322166
108411084
108522170
108611086
108811088
109911099
111944476
112011120
112111121
113011130
113311133
113511135
113711137
115211152
115622312
115833474
115911159
116011160
116211162
116611166
117011170
117111171
117211172
117711177
118011180
118111181
118511185
118711187
119522390
119911199
122011220
122411224
123611236
124211242
124311243
124511245
124711247
124822496
125033750
125122502
125311253
125511255
125611256
125722514
125822516
125911259
128311283
128722574
128811288
128911289
129111291
129611296
130811308
131011310
131711317
132411324
132811328
132911329
135411354
136111361
136511365
136711367
138011380
138611386
138711387
139311393
139922798
140011400
140611406
140811408
141411414
141922838
143911439
144411444
144911449
145122902
145211452
145911459
147011470
147211472
147411474
147511475
147811478
148011480
148611486
149011490
149511495
149611496
149711497
150011500
150223004
150523010
151611516
152211522
152311523
152411524
153111531
153311533
153411534
153534605
153711537
154123082
154323086
154411544
155911559
156611566
158511585
159011590
159923198
160011600
160211602
160311603
160411604
160823216
160923218
161311613
161411614
161711617
161823236
161911619
162823256
162923258
163011630
163311633
163411634
164623292
164911649
165911659
166011660
167711677
169411694
169611696
170811708
172211722
172623452
172811728
172911729
173111731
173911739
174011740
174823496
177311773
177511775
180111801
181011810
181211812
182411824
184311843
186511865
189823796
190111901
190311903
190411904
190735721
191011910
191311913
191411914
191511915
192511925
193011930
195511955
195711957
195823916
196011960
196111961
196411964
197011970
200512005
200612006
203812038
205612056
207012070
208512085
209124182
209236276
209312093
209812098
209912099
210112101
210312103
210712107
211912119
218012180
219812198
219912199
220212202
220324406
221012210
221112211
223012230
225412254
227812278
228112281
228212282
228412284
228612286
228712287
229112291
229212292
230112301
230624612
230724614
230924618
231012310
231112311
231712317
232324646
232512325
232612326
232824656
232912329
233012330
233712337
233812338
234012340
234224684
234312343
234812348
235212352
235924718
236212362
236312363
236724734
236812368
238412384
238912389
239124782
239212392
239424788
240012400
240512405
241312413
241412414
241612416
241712417
243412434
244324886
247112471
247212472
247612476
248312483
249312493
251925038
252012520
252212522
252725054
252812528
252925058
253025060
253412534
253812538
254425088
254825096
2549410196
255312553
255412554
255612556
256012560
256212562
256312563
256625132
256812568
257612576
257925158
258312583
258612586
259112591
259312593
259512595
260012600
260212602
260312603
260412604
260512605
260612606
260712607
261012610
261212612
262112621
263912639
264012640
264112641
264312643
264725294
264812648
264912649
265012650
265825316
265912659
266412664
266512665
267012670
267212672
267512675
268712687
268912689
269112691
269312693
269512695
269725394
269838094
269925398
270012700
270112701
270412704
270912709
271012710
271912719
272512725
274012740
275312753
275412754
275812758
276812768
277012770
278112781
279012790
279212792
279312793
2794411176
279925598
280012800
280212802
280312803
280425608
280525610
280912809
282138463
282212822
282312823
282525650
282612826
282738481
283012830
283112831
283212832
283412834
283725674
283838514
283912839
284112841
284225684
284312843
284412844
284612846
284812848
285038550
285312853
285512855
285625712
285712857
286212862
286712867
286812868
286912869
287012870
287112871
287225744
287325746
287425748
287512875
287612876
287738631
287838634
287912879
288012880
289025780
290012900
290512905
291312913
291712917
292212922
292312923
292412924
292512925
293512935
294012940
294338829
294412944
295112951
295312953
295412954
295538865
295612956
295725914
296225924
296612966
296712967
296812968
296912969
297112971
297412974
298812988
300613006
300713007
301513015
302213022
303113031
303213032
303913039
304726094
305113051
305213052
305313053
306113061
307226144
307313073
308113081
309613096
310613106
311013110
311213112
311313113
311526230
312013120
312613126
312913129
313313133
313713137
313813138
314313143
314613146
314913149
315113151
315613156
315813158
316139483
317013170
317213172
317313173
317913179
318413184
319413194
319626392
319913199
320213202
321913219
322013220
322413224
322513225
322713227
322813228
323313233
325213252
326713267
327113271
327726554
327913279
328513285
330713307
332613326
332713327
333013330
333413334
333813338
335113351
335713357
335813358
336013360
337113371
338013380
338413384
338926778
339113391
3393310179
339426788
340913409
341113411
341913419
342226844
342313423
342426848
342813428
343013430
345013450
345613456
345713457
346313463
347613476
347913479
349713497
350013500
350113501
350513505
350913509
351113511
351413514
351713517
352913529
353213532
353527070
353813538
354913549
357313573
358627172
359013590
359113591
359413594
359513595
359613596
359713597
359827196
359927198
360027200
360113601
360213602
360627212
360913609
361013610
361213612
361413614
361913619
362113621
362213622
3626310878
362713627
362813628
364013640
364213642
364813648
365727314
366013660
366113661
366213662
366513665
366613666
367627352
367713677
368213682
368613686
370013700
370213702
370913709
371313713
372313723
372513725
374413744
375213752
375413754
3755311265
376113761
377413774
379313793
379813798
380427608
380513805
380613806
380713807
380813808
381613816
382413824
382927658
383213832
383313833
383827676
384413844
385113851
385613856
387213872
387413874
387513875
387727754
388013880
388113881
388513885
388613886
389613896
391213912
391613916
391813918
392113921
392513925
392713927
392813928
393427868
393813938
394313943
395027900
395113951
395313953
395713957
395813958
396713967
397013970
397113971
397413974
397613976
400014000
400214002
400314003
400714007
401014010
401514015
402014020
403014030
403314033
403614036
403814038
403914039
404314043
404514045
404814048
405014050
405714057
406114061
407014070
407714077
409714097
41002378997534900
Total2479199619317
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
023789
21000
81
Total24790
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333930266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882ddf10c88de19
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6464663130633838
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_5_17.json b/autobahn/client/tungstenite_case_12_5_17.json new file mode 100644 index 0000000..38de4b8 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_17.json @@ -0,0 +1,1865 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 390, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 9960, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=390&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: +BU0k8WoDhPax0aWqrw/qw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: /n+FJhBtQBFPCZ3YrG9xbc0+sTU=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.5.17", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "58": 1, + "257": 1, + "1374": 1, + "1443": 1, + "1493": 2, + "1587": 1, + "1633": 1, + "3457": 1, + "3542": 1, + "3591": 1, + "3654": 1, + "3693": 1, + "3791": 1, + "3792": 1, + "3851": 1, + "3901": 1, + "3925": 1, + "4006": 1, + "4061": 1, + "4349": 1, + "4480": 1, + "4542": 1, + "4697": 1, + "4854": 1, + "5002": 1, + "5466": 1, + "5535": 1, + "5596": 1, + "5638": 1, + "5718": 1, + "5793": 1, + "7756": 1, + "7851": 1, + "7884": 1, + "7938": 1, + "8017": 1, + "8104": 1, + "8791": 1, + "8898": 1, + "9008": 1, + "9091": 1, + "9169": 1, + "9274": 1, + "9495": 1, + "9571": 1, + "9626": 1, + "9694": 1, + "9753": 1, + "9755": 1, + "9788": 1, + "9832": 1, + "9867": 1, + "9892": 1, + "10029": 1, + "10074": 1, + "10889": 1, + "10965": 1, + "11080": 1, + "11184": 1, + "11271": 1, + "11385": 1, + "13478": 1, + "13553": 1, + "13647": 1, + "13671": 1, + "13686": 1, + "13720": 1, + "14369": 1, + "14472": 1, + "14487": 1, + "14592": 1, + "14722": 1, + "14852": 1, + "15078": 1, + "15095": 1, + "15100": 1, + "15135": 1, + "15144": 1, + "15161": 1, + "15242": 1, + "15245": 1, + "15277": 1, + "15294": 1, + "15326": 1, + "15331": 1, + "15370": 1, + "15394": 1, + "15410": 1, + "15430": 1, + "15458": 1, + "15537": 1, + "17549": 1, + "17626": 1, + "17682": 1, + "17748": 1, + "17809": 1, + "18694": 1, + "18761": 1, + "18853": 1, + "18892": 1, + "18978": 1, + "19072": 1, + "19123": 1, + "19139": 1, + "19161": 1, + "19176": 1, + "19195": 1, + "19208": 1, + "19512": 1, + "19524": 1, + "19546": 1, + "19556": 1, + "19581": 1, + "19582": 1, + "19855": 1, + "19991": 1, + "20124": 1, + "20259": 1, + "20378": 1, + "20510": 1, + "21201": 1, + "21218": 1, + "21219": 1, + "21229": 1, + "21232": 1, + "21249": 1, + "21251": 1, + "21324": 1, + "21326": 1, + "21380": 1, + "21460": 1, + "21484": 1, + "21515": 1, + "21574": 1, + "21617": 1, + "21640": 1, + "21646": 1, + "21685": 1, + "21847": 1, + "21874": 1, + "21881": 1, + "21901": 1, + "21902": 1, + "21957": 1, + "22075": 1, + "22084": 1, + "22098": 1, + "22115": 1, + "22130": 1, + "22146": 1, + "22378": 1, + "22380": 1, + "22394": 1, + "22407": 1, + "22411": 1, + "22435": 1, + "23284": 1, + "23421": 1, + "23517": 1, + "23657": 1, + "23795": 1, + "23927": 1, + "25057": 1, + "25198": 1, + "25327": 1, + "25463": 1, + "25595": 1, + "25735": 1, + "28352": 1, + "28497": 1, + "28648": 1, + "28782": 1, + "28929": 1, + "29069": 1, + "29371": 1, + "29403": 1, + "29493": 1, + "29622": 1, + "29694": 1, + "29716": 1, + "30478": 1, + "30614": 1, + "30748": 1, + "30880": 1, + "31016": 1, + "31153": 1, + "31248": 1, + "31277": 1, + "31299": 1, + "31318": 1, + "31341": 1, + "31353": 1, + "31782": 1, + "31861": 1, + "31949": 1, + "32037": 1, + "32113": 1, + "32185": 1, + "33347": 1, + "33490": 1, + "33564": 1, + "33682": 1, + "33815": 1, + "33956": 1, + "35764": 1, + "35800": 1, + "35890": 1, + "35896": 1, + "35947": 1, + "35990": 2, + "36007": 1, + "36016": 1, + "36028": 1, + "36043": 1, + "36134": 1, + "36136": 1, + "36216": 1, + "36229": 1, + "36245": 1, + "36344": 1, + "36470": 1, + "37365": 1, + "37404": 1, + "37449": 1, + "37502": 1, + "37635": 1, + "37703": 1, + "39215": 1, + "39314": 1, + "39390": 2, + "39420": 1, + "39552": 1, + "39769": 1, + "39879": 1, + "39980": 1, + "40060": 1, + "40097": 1, + "40112": 1, + "40116": 2, + "40120": 1, + "40143": 1, + "40152": 1, + "40252": 1, + "41037": 1, + "41168": 1, + "41303": 1, + "41439": 1, + "41575": 1, + "41703": 1, + "41977": 1, + "42074": 1, + "42139": 1, + "42195": 1, + "42205": 1, + "42300": 1, + "42301": 1, + "42364": 1, + "42379": 1, + "42396": 1, + "42400": 1, + "43461": 1, + "43541": 1, + "43598": 1, + "43655": 1, + "43658": 1, + "43726": 1, + "43739": 1, + "43748": 1, + "43778": 1, + "43780": 1, + "43791": 1, + "43856": 1, + "43913": 1, + "43917": 1, + "43964": 1, + "43991": 2, + "44054": 1, + "44087": 1, + "44131": 1, + "44182": 1, + "44212": 1, + "44279": 1, + "44282": 1, + "44399": 1, + "44526": 1, + "44641": 1, + "44767": 1, + "44893": 1, + "45021": 1, + "45395": 1, + "45399": 1, + "45402": 1, + "45413": 1, + "45417": 1, + "45425": 1, + "45507": 1, + "45515": 1, + "45524": 1, + "45525": 1, + "45554": 1, + "45605": 1, + "45722": 1, + "45832": 1, + "45841": 1, + "45847": 1, + "45919": 1, + "45941": 1, + "46018": 1, + "46034": 1, + "46094": 1, + "46122": 1, + "46185": 1, + "46229": 1, + "47283": 1, + "47366": 1, + "47401": 1, + "47457": 1, + "47522": 1, + "47559": 1, + "47650": 1, + "47659": 1, + "47714": 1, + "47779": 1, + "47892": 1, + "47993": 1, + "48857": 1, + "48955": 1, + "49046": 1, + "49053": 1, + "49117": 2, + "49137": 1, + "49186": 1, + "49238": 2, + "49254": 1, + "49304": 1, + "49483": 1, + "49486": 1, + "49526": 1, + "49529": 1, + "49562": 1, + "49675": 1, + "49864": 1, + "49979": 1, + "50107": 1, + "50214": 1, + "50232": 1, + "50245": 1, + "50274": 1, + "50338": 1, + "50354": 1, + "50377": 1, + "50438": 1, + "50466": 1, + "50480": 1, + "50545": 1, + "50555": 1, + "50645": 1, + "50754": 1, + "50853": 1, + "52398": 1, + "52463": 1, + "52493": 1, + "52503": 1, + "52523": 1, + "52547": 1, + "52559": 1, + "52574": 1, + "52633": 1, + "52681": 1, + "52683": 1, + "52708": 1, + "52752": 1, + "52799": 1, + "52801": 1, + "52817": 1, + "52887": 1, + "52903": 1, + "52943": 1, + "53008": 1, + "53051": 1, + "53086": 1, + "53169": 1, + "53230": 1, + "54217": 1, + "54254": 1, + "54258": 1, + "54266": 1, + "54363": 1, + "54468": 1, + "54877": 1, + "54984": 1, + "55085": 1, + "55186": 1, + "55287": 1, + "55392": 1, + "55441": 1, + "55564": 1, + "55685": 1, + "55713": 1, + "55726": 1, + "55746": 1, + "55805": 1, + "55816": 1, + "55858": 1, + "55871": 1, + "55938": 1, + "56062": 1, + "56278": 1, + "56327": 1, + "56425": 1, + "56450": 1, + "56501": 1, + "56591": 1, + "57403": 1, + "57495": 1, + "57585": 1, + "57677": 1, + "57808": 1, + "57879": 1, + "58349": 1, + "58449": 1, + "58534": 1, + "58536": 1, + "58564": 1, + "58573": 1, + "58579": 2, + "58580": 2, + "58687": 1, + "58691": 1, + "58813": 2, + "58921": 1, + "58930": 1, + "59067": 1, + "59199": 1, + "59231": 1, + "59232": 1, + "59235": 2, + "59241": 1, + "59243": 1, + "59285": 2, + "59286": 1, + "59288": 1, + "59289": 1, + "59297": 1, + "59387": 1, + "59392": 1, + "59394": 2, + "59395": 1, + "59396": 2, + "59399": 1, + "59401": 1, + "59402": 2, + "59483": 1, + "59517": 2, + "59521": 1, + "59522": 2, + "59523": 1, + "59587": 1, + "59609": 1, + "59610": 1, + "59612": 1, + "59614": 2, + "59616": 1, + "59622": 2, + "59625": 1, + "59626": 2, + "59627": 2, + "59628": 1, + "59630": 1, + "59631": 3, + "59632": 2, + "59633": 1, + "59635": 1, + "59639": 1, + "59640": 1, + "59649": 1, + "59653": 1, + "59654": 1, + "59657": 3, + "59663": 1, + "59664": 1, + "59669": 1, + "59673": 1, + "59676": 1, + "59677": 1, + "59679": 1, + "59689": 1, + "59705": 1, + "59715": 1, + "59717": 1, + "59720": 1, + "59721": 1, + "59723": 2, + "59727": 1, + "59728": 1, + "59729": 1, + "59730": 1, + "59752": 1, + "59761": 1, + "59763": 1, + "59790": 1, + "59792": 1, + "59834": 1, + "59836": 1, + "59838": 1, + "59846": 2, + "59847": 1, + "59850": 1, + "59851": 1, + "59853": 2, + "59854": 1, + "59856": 1, + "59859": 2, + "59860": 1, + "59867": 1, + "59869": 1, + "59878": 1, + "59879": 1, + "59884": 1, + "59885": 1, + "59886": 1, + "59887": 1, + "59888": 2, + "59890": 1, + "59891": 1, + "59894": 1, + "59895": 1, + "59896": 1, + "59899": 1, + "59901": 1, + "59912": 1, + "59914": 1, + "59915": 1, + "59916": 2, + "59918": 1, + "59955": 2, + "59956": 1, + "59960": 1, + "59961": 1, + "59962": 1, + "59963": 1, + "59968": 1, + "59984": 1, + "59988": 1, + "59992": 1, + "59996": 2, + "59997": 1, + "59999": 1, + "60000": 1, + "60002": 1, + "60011": 1, + "60014": 1, + "60015": 1, + "60018": 2, + "60020": 2, + "60022": 1, + "60024": 1, + "60069": 1, + "60096": 1, + "60098": 1, + "60102": 1, + "60103": 1, + "60104": 1, + "60111": 2, + "60114": 1, + "60116": 1, + "60117": 1, + "60124": 1, + "60126": 1, + "60127": 3, + "60128": 1, + "60129": 2, + "60133": 1, + "60135": 1, + "60138": 2, + "60149": 1, + "60151": 1, + "60152": 2, + "60154": 1, + "60156": 2, + "60157": 3, + "60160": 3, + "60161": 1, + "60164": 1, + "60166": 1, + "60167": 2, + "60168": 1, + "60171": 1, + "60175": 2, + "60176": 3, + "60177": 2, + "60178": 1, + "60179": 1, + "60181": 2, + "60183": 1, + "60185": 1, + "60187": 1, + "60188": 1, + "60191": 2, + "60194": 1, + "60237": 1, + "60241": 1, + "60263": 1, + "60268": 1, + "60269": 2, + "60271": 1, + "60272": 1, + "60284": 1, + "60353": 1, + "60356": 1, + "60358": 1, + "60447": 1, + "60450": 2, + "60452": 1, + "60453": 1, + "60460": 1, + "60525": 1, + "60526": 1, + "60531": 1, + "60532": 1, + "60538": 1, + "60541": 1, + "60699": 1, + "60700": 2, + "60701": 1, + "60702": 1, + "60706": 1, + "60758": 1, + "60762": 2, + "60764": 1, + "60768": 1, + "60769": 1, + "60877": 1, + "60909": 1, + "60912": 1, + "60913": 3, + "60914": 1, + "60915": 1, + "60916": 1, + "60919": 1, + "60922": 1, + "60927": 1, + "60928": 1, + "60931": 1, + "60933": 1, + "60936": 1, + "60937": 1, + "60942": 1, + "60961": 1, + "60962": 1, + "60964": 1, + "60967": 1, + "60968": 2, + "60982": 1, + "60984": 1, + "60987": 1, + "60990": 1, + "60996": 1, + "60997": 1, + "60999": 1, + "61000": 1, + "61003": 1, + "61014": 1, + "61078": 1, + "61142": 1, + "61150": 1, + "61151": 1, + "61152": 1, + "61153": 1, + "61154": 1, + "61155": 1, + "61183": 1, + "61216": 1, + "61219": 1, + "61221": 1, + "61226": 1, + "61228": 1, + "61229": 1, + "61265": 1, + "61268": 1, + "61271": 1, + "61273": 2, + "61274": 2, + "61276": 1, + "61280": 1, + "61292": 1, + "61322": 1, + "61346": 1, + "61360": 1, + "61381": 1, + "61386": 3, + "61391": 1, + "61398": 1, + "61417": 1, + "61426": 1, + "61456": 2, + "61457": 1, + "61460": 1, + "61464": 2, + "61476": 1, + "61510": 2, + "61512": 1, + "61514": 1, + "61517": 1, + "61519": 1, + "61520": 1, + "61528": 1, + "61529": 1, + "61532": 1, + "61539": 1, + "61548": 2, + "61580": 1, + "61596": 1, + "61599": 1, + "61600": 2, + "61601": 1, + "61602": 1, + "61604": 2, + "61607": 1, + "61608": 1, + "61609": 1, + "61634": 2, + "61635": 1, + "61636": 1, + "61637": 1, + "61639": 3, + "61641": 1, + "61642": 3, + "61644": 1, + "61660": 1, + "61662": 2, + "61666": 1, + "61673": 2, + "61674": 1, + "61675": 1, + "61679": 1, + "61685": 1, + "61689": 1, + "61751": 1, + "61753": 1, + "61757": 1, + "61760": 1, + "61761": 1, + "61764": 1, + "61772": 1, + "61804": 2, + "61805": 1, + "61807": 1, + "61808": 1, + "61813": 1, + "61864": 1, + "61919": 1, + "61962": 2, + "61967": 1, + "61972": 1, + "61974": 1, + "61975": 2, + "61976": 1, + "61980": 1, + "61998": 1, + "62028": 1, + "62029": 2, + "62031": 1, + "62035": 2, + "62036": 1, + "62040": 1, + "62045": 1, + "62050": 1, + "62052": 1, + "62067": 1, + "62069": 1, + "62070": 1, + "62079": 1, + "62148": 1, + "62178": 1, + "62207": 1, + "62212": 2, + "62213": 1, + "62215": 1, + "62217": 1, + "62285": 1, + "62286": 1, + "62291": 1, + "62293": 1, + "62299": 1, + "62302": 1, + "62336": 1, + "62343": 1, + "62345": 1, + "62348": 1, + "62351": 1, + "62355": 1, + "62380": 1, + "62389": 1, + "62393": 1, + "62394": 1, + "62395": 1, + "62400": 1, + "62425": 1, + "62430": 1, + "62445": 2, + "62449": 1, + "62450": 1, + "62451": 1, + "62453": 1, + "62456": 1, + "62459": 1, + "62462": 1, + "62463": 1, + "62479": 1, + "62481": 1, + "62482": 1, + "62484": 1, + "62487": 1, + "62489": 1, + "62490": 1, + "62491": 1, + "62493": 1, + "62494": 1, + "62496": 1, + "62497": 1, + "62526": 1, + "62527": 2, + "62529": 2, + "62531": 2, + "62532": 4, + "62537": 1, + "62565": 1, + "62566": 2, + "62567": 1, + "62568": 2, + "62603": 1, + "62604": 2, + "62607": 2, + "62608": 1, + "62613": 1, + "62618": 1, + "62619": 1, + "62620": 1, + "62624": 1, + "62625": 1, + "62627": 1, + "62641": 1, + "62683": 1, + "62688": 1, + "62689": 1, + "62692": 1, + "62694": 1, + "62697": 1, + "62698": 1, + "62699": 1, + "62700": 3, + "62701": 1, + "62702": 1, + "62703": 1, + "62707": 1, + "62708": 1, + "62729": 1, + "62733": 2, + "62737": 1, + "62753": 1, + "62833": 1, + "62891": 1, + "62944": 1, + "62946": 1, + "62947": 1, + "62952": 2, + "62979": 1, + "62983": 1, + "62986": 2, + "62988": 1, + "62989": 1, + "63058": 1, + "63067": 1, + "63068": 2, + "63069": 1, + "63078": 1, + "63654": 1, + "63796": 1, + "63912": 1, + "64028": 1, + "64157": 1, + "64189": 1, + "64257": 1, + "64314": 1, + "64430": 1, + "64448": 1, + "64466": 1, + "64471": 1, + "64475": 1, + "64476": 1, + "64477": 1, + "64523": 1, + "64640": 1, + "64725": 1, + "65104": 1, + "65200": 1, + "65318": 1, + "65404": 1, + "65497": 1, + "65536": 768 + }, + "started": "2020-09-07T18:51:31.633Z", + "trafficStats": { + "incomingCompressionRatio": 0.7583887481689453, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 99403530, + "incomingOctetsWireLevel": 99416138, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.00012683654192159976, + "outgoingCompressionRatio": 0.7592770767211914, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 99519965, + "outgoingOctetsWireLevel": 99619061, + "outgoingWebSocketFrames": 24789, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0009957399000291047, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 23789, + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 2, + "15": 1, + "17": 1, + "22": 1, + "29": 1, + "33": 1, + "34": 3, + "37": 1, + "39": 1, + "40": 3, + "56": 1, + "67": 1, + "78": 1, + "81": 1, + "84": 1, + "89": 2, + "91": 2, + "96": 1, + "98": 1, + "99": 1, + "106": 1, + "109": 1, + "113": 1, + "115": 1, + "133": 1, + "142": 2, + "146": 1, + "152": 1, + "162": 2, + "167": 1, + "170": 2, + "172": 2, + "173": 3, + "174": 1, + "175": 1, + "178": 1, + "191": 1, + "192": 1, + "195": 2, + "198": 1, + "200": 1, + "201": 1, + "203": 1, + "210": 1, + "211": 1, + "212": 1, + "213": 1, + "214": 1, + "219": 1, + "222": 1, + "224": 2, + "228": 2, + "234": 1, + "235": 1, + "237": 1, + "240": 1, + "243": 2, + "246": 1, + "250": 2, + "251": 1, + "252": 1, + "281": 1, + "287": 1, + "301": 1, + "309": 1, + "310": 1, + "313": 1, + "317": 1, + "318": 1, + "320": 1, + "323": 1, + "329": 1, + "360": 1, + "361": 1, + "363": 1, + "364": 1, + "365": 1, + "371": 2, + "383": 1, + "386": 1, + "399": 1, + "405": 1, + "421": 1, + "435": 1, + "456": 1, + "458": 1, + "464": 1, + "468": 1, + "525": 2, + "530": 1, + "534": 1, + "535": 1, + "537": 1, + "539": 2, + "540": 1, + "541": 1, + "543": 1, + "549": 1, + "561": 1, + "586": 2, + "590": 1, + "592": 2, + "594": 1, + "596": 1, + "597": 2, + "600": 1, + "602": 1, + "603": 2, + "608": 1, + "610": 2, + "613": 1, + "625": 2, + "629": 1, + "651": 2, + "659": 1, + "660": 1, + "665": 1, + "690": 2, + "706": 1, + "707": 1, + "713": 1, + "716": 1, + "720": 1, + "725": 1, + "726": 1, + "729": 1, + "732": 1, + "737": 1, + "741": 1, + "745": 1, + "758": 1, + "759": 1, + "761": 1, + "764": 1, + "766": 1, + "767": 1, + "768": 4, + "769": 1, + "770": 1, + "816": 1, + "828": 1, + "833": 1, + "839": 3, + "842": 1, + "846": 1, + "847": 1, + "848": 1, + "851": 2, + "854": 1, + "855": 2, + "858": 1, + "859": 1, + "866": 1, + "867": 1, + "870": 1, + "871": 3, + "885": 1, + "890": 1, + "894": 1, + "896": 1, + "897": 1, + "898": 1, + "899": 1, + "902": 1, + "905": 1, + "910": 1, + "913": 1, + "932": 1, + "935": 1, + "938": 1, + "942": 1, + "946": 1, + "947": 2, + "949": 1, + "953": 1, + "954": 1, + "966": 1, + "974": 1, + "976": 1, + "979": 1, + "981": 1, + "985": 1, + "990": 1, + "997": 3, + "998": 1, + "1002": 1, + "1004": 1, + "1005": 1, + "1006": 2, + "1011": 1, + "1013": 1, + "1014": 1, + "1018": 2, + "1025": 1, + "1030": 1, + "1033": 1, + "1034": 1, + "1035": 1, + "1037": 2, + "1039": 1, + "1040": 1, + "1041": 3, + "1042": 1, + "1043": 1, + "1044": 1, + "1056": 1, + "1057": 1, + "1063": 1, + "1077": 1, + "1080": 2, + "1081": 1, + "1082": 3, + "1083": 2, + "1084": 1, + "1085": 2, + "1086": 1, + "1088": 1, + "1099": 1, + "1119": 4, + "1120": 1, + "1121": 1, + "1130": 1, + "1133": 1, + "1135": 1, + "1137": 1, + "1152": 1, + "1156": 2, + "1158": 3, + "1159": 1, + "1160": 1, + "1162": 1, + "1166": 1, + "1170": 1, + "1171": 1, + "1172": 1, + "1177": 1, + "1180": 1, + "1181": 1, + "1185": 1, + "1187": 1, + "1195": 2, + "1199": 1, + "1220": 1, + "1224": 1, + "1236": 1, + "1242": 1, + "1243": 1, + "1245": 1, + "1247": 1, + "1248": 2, + "1250": 3, + "1251": 2, + "1253": 1, + "1255": 1, + "1256": 1, + "1257": 2, + "1258": 2, + "1259": 1, + "1283": 1, + "1287": 2, + "1288": 1, + "1289": 1, + "1291": 1, + "1296": 1, + "1308": 1, + "1310": 1, + "1317": 1, + "1324": 1, + "1328": 1, + "1329": 1, + "1354": 1, + "1361": 1, + "1365": 1, + "1367": 1, + "1380": 1, + "1386": 1, + "1387": 1, + "1393": 1, + "1399": 2, + "1400": 1, + "1406": 1, + "1408": 1, + "1414": 1, + "1419": 2, + "1439": 1, + "1444": 1, + "1449": 1, + "1451": 2, + "1452": 1, + "1459": 1, + "1470": 1, + "1472": 1, + "1474": 1, + "1475": 1, + "1478": 1, + "1480": 1, + "1486": 1, + "1490": 1, + "1495": 1, + "1496": 1, + "1497": 1, + "1500": 1, + "1502": 2, + "1505": 2, + "1516": 1, + "1522": 1, + "1523": 1, + "1524": 1, + "1531": 1, + "1533": 1, + "1534": 1, + "1535": 3, + "1537": 1, + "1541": 2, + "1543": 2, + "1544": 1, + "1559": 1, + "1566": 1, + "1585": 1, + "1590": 1, + "1599": 2, + "1600": 1, + "1602": 1, + "1603": 1, + "1604": 1, + "1608": 2, + "1609": 2, + "1613": 1, + "1614": 1, + "1617": 1, + "1618": 2, + "1619": 1, + "1628": 2, + "1629": 2, + "1630": 1, + "1633": 1, + "1634": 1, + "1646": 2, + "1649": 1, + "1659": 1, + "1660": 1, + "1677": 1, + "1694": 1, + "1696": 1, + "1708": 1, + "1722": 1, + "1726": 2, + "1728": 1, + "1729": 1, + "1731": 1, + "1739": 1, + "1740": 1, + "1748": 2, + "1773": 1, + "1775": 1, + "1801": 1, + "1810": 1, + "1812": 1, + "1824": 1, + "1843": 1, + "1865": 1, + "1898": 2, + "1901": 1, + "1903": 1, + "1904": 1, + "1907": 3, + "1910": 1, + "1913": 1, + "1914": 1, + "1915": 1, + "1925": 1, + "1930": 1, + "1955": 1, + "1957": 1, + "1958": 2, + "1960": 1, + "1961": 1, + "1964": 1, + "1970": 1, + "2005": 1, + "2006": 1, + "2038": 1, + "2056": 1, + "2070": 1, + "2085": 1, + "2091": 2, + "2092": 3, + "2093": 1, + "2098": 1, + "2099": 1, + "2101": 1, + "2103": 1, + "2107": 1, + "2119": 1, + "2180": 1, + "2198": 1, + "2199": 1, + "2202": 1, + "2203": 2, + "2210": 1, + "2211": 1, + "2230": 1, + "2254": 1, + "2278": 1, + "2281": 1, + "2282": 1, + "2284": 1, + "2286": 1, + "2287": 1, + "2291": 1, + "2292": 1, + "2301": 1, + "2306": 2, + "2307": 2, + "2309": 2, + "2310": 1, + "2311": 1, + "2317": 1, + "2323": 2, + "2325": 1, + "2326": 1, + "2328": 2, + "2329": 1, + "2330": 1, + "2337": 1, + "2338": 1, + "2340": 1, + "2342": 2, + "2343": 1, + "2348": 1, + "2352": 1, + "2359": 2, + "2362": 1, + "2363": 1, + "2367": 2, + "2368": 1, + "2384": 1, + "2389": 1, + "2391": 2, + "2392": 1, + "2394": 2, + "2400": 1, + "2405": 1, + "2413": 1, + "2414": 1, + "2416": 1, + "2417": 1, + "2434": 1, + "2443": 2, + "2471": 1, + "2472": 1, + "2476": 1, + "2483": 1, + "2493": 1, + "2519": 2, + "2520": 1, + "2522": 1, + "2527": 2, + "2528": 1, + "2529": 2, + "2530": 2, + "2534": 1, + "2538": 1, + "2544": 2, + "2548": 2, + "2549": 4, + "2553": 1, + "2554": 1, + "2556": 1, + "2560": 1, + "2562": 1, + "2563": 1, + "2566": 2, + "2568": 1, + "2576": 1, + "2579": 2, + "2583": 1, + "2586": 1, + "2591": 1, + "2593": 1, + "2595": 1, + "2600": 1, + "2602": 1, + "2603": 1, + "2604": 1, + "2605": 1, + "2606": 1, + "2607": 1, + "2610": 1, + "2612": 1, + "2621": 1, + "2639": 1, + "2640": 1, + "2641": 1, + "2643": 1, + "2647": 2, + "2648": 1, + "2649": 1, + "2650": 1, + "2658": 2, + "2659": 1, + "2664": 1, + "2665": 1, + "2670": 1, + "2672": 1, + "2675": 1, + "2687": 1, + "2689": 1, + "2691": 1, + "2693": 1, + "2695": 1, + "2697": 2, + "2698": 3, + "2699": 2, + "2700": 1, + "2701": 1, + "2704": 1, + "2709": 1, + "2710": 1, + "2719": 1, + "2725": 1, + "2740": 1, + "2753": 1, + "2754": 1, + "2758": 1, + "2768": 1, + "2770": 1, + "2781": 1, + "2790": 1, + "2792": 1, + "2793": 1, + "2794": 4, + "2799": 2, + "2800": 1, + "2802": 1, + "2803": 1, + "2804": 2, + "2805": 2, + "2809": 1, + "2821": 3, + "2822": 1, + "2823": 1, + "2825": 2, + "2826": 1, + "2827": 3, + "2830": 1, + "2831": 1, + "2832": 1, + "2834": 1, + "2837": 2, + "2838": 3, + "2839": 1, + "2841": 1, + "2842": 2, + "2843": 1, + "2844": 1, + "2846": 1, + "2848": 1, + "2850": 3, + "2853": 1, + "2855": 1, + "2856": 2, + "2857": 1, + "2862": 1, + "2867": 1, + "2868": 1, + "2869": 1, + "2870": 1, + "2871": 1, + "2872": 2, + "2873": 2, + "2874": 2, + "2875": 1, + "2876": 1, + "2877": 3, + "2878": 3, + "2879": 1, + "2880": 1, + "2890": 2, + "2900": 1, + "2905": 1, + "2913": 1, + "2917": 1, + "2922": 1, + "2923": 1, + "2924": 1, + "2925": 1, + "2935": 1, + "2940": 1, + "2943": 3, + "2944": 1, + "2951": 1, + "2953": 1, + "2954": 1, + "2955": 3, + "2956": 1, + "2957": 2, + "2962": 2, + "2966": 1, + "2967": 1, + "2968": 1, + "2969": 1, + "2971": 1, + "2974": 1, + "2988": 1, + "3006": 1, + "3007": 1, + "3015": 1, + "3022": 1, + "3031": 1, + "3032": 1, + "3039": 1, + "3047": 2, + "3051": 1, + "3052": 1, + "3053": 1, + "3061": 1, + "3072": 2, + "3073": 1, + "3081": 1, + "3096": 1, + "3106": 1, + "3110": 1, + "3112": 1, + "3113": 1, + "3115": 2, + "3120": 1, + "3126": 1, + "3129": 1, + "3133": 1, + "3137": 1, + "3138": 1, + "3143": 1, + "3146": 1, + "3149": 1, + "3151": 1, + "3156": 1, + "3158": 1, + "3161": 3, + "3170": 1, + "3172": 1, + "3173": 1, + "3179": 1, + "3184": 1, + "3194": 1, + "3196": 2, + "3199": 1, + "3202": 1, + "3219": 1, + "3220": 1, + "3224": 1, + "3225": 1, + "3227": 1, + "3228": 1, + "3233": 1, + "3252": 1, + "3267": 1, + "3271": 1, + "3277": 2, + "3279": 1, + "3285": 1, + "3307": 1, + "3326": 1, + "3327": 1, + "3330": 1, + "3334": 1, + "3338": 1, + "3351": 1, + "3357": 1, + "3358": 1, + "3360": 1, + "3371": 1, + "3380": 1, + "3384": 1, + "3389": 2, + "3391": 1, + "3393": 3, + "3394": 2, + "3409": 1, + "3411": 1, + "3419": 1, + "3422": 2, + "3423": 1, + "3424": 2, + "3428": 1, + "3430": 1, + "3450": 1, + "3456": 1, + "3457": 1, + "3463": 1, + "3476": 1, + "3479": 1, + "3497": 1, + "3500": 1, + "3501": 1, + "3505": 1, + "3509": 1, + "3511": 1, + "3514": 1, + "3517": 1, + "3529": 1, + "3532": 1, + "3535": 2, + "3538": 1, + "3549": 1, + "3573": 1, + "3586": 2, + "3590": 1, + "3591": 1, + "3594": 1, + "3595": 1, + "3596": 1, + "3597": 1, + "3598": 2, + "3599": 2, + "3600": 2, + "3601": 1, + "3602": 1, + "3606": 2, + "3609": 1, + "3610": 1, + "3612": 1, + "3614": 1, + "3619": 1, + "3621": 1, + "3622": 1, + "3626": 3, + "3627": 1, + "3628": 1, + "3640": 1, + "3642": 1, + "3648": 1, + "3657": 2, + "3660": 1, + "3661": 1, + "3662": 1, + "3665": 1, + "3666": 1, + "3676": 2, + "3677": 1, + "3682": 1, + "3686": 1, + "3700": 1, + "3702": 1, + "3709": 1, + "3713": 1, + "3723": 1, + "3725": 1, + "3744": 1, + "3752": 1, + "3754": 1, + "3755": 3, + "3761": 1, + "3774": 1, + "3793": 1, + "3798": 1, + "3804": 2, + "3805": 1, + "3806": 1, + "3807": 1, + "3808": 1, + "3816": 1, + "3824": 1, + "3829": 2, + "3832": 1, + "3833": 1, + "3838": 2, + "3844": 1, + "3851": 1, + "3856": 1, + "3872": 1, + "3874": 1, + "3875": 1, + "3877": 2, + "3880": 1, + "3881": 1, + "3885": 1, + "3886": 1, + "3896": 1, + "3912": 1, + "3916": 1, + "3918": 1, + "3921": 1, + "3925": 1, + "3927": 1, + "3928": 1, + "3934": 2, + "3938": 1, + "3943": 1, + "3950": 2, + "3951": 1, + "3953": 1, + "3957": 1, + "3958": 1, + "3967": 1, + "3970": 1, + "3971": 1, + "3974": 1, + "3976": 1, + "4000": 1, + "4002": 1, + "4003": 1, + "4007": 1, + "4010": 1, + "4015": 1, + "4020": 1, + "4030": 1, + "4033": 1, + "4036": 1, + "4038": 1, + "4039": 1, + "4043": 1, + "4045": 1, + "4048": 1, + "4050": 1, + "4057": 1, + "4061": 1, + "4070": 1, + "4077": 1, + "4097": 1, + "4100": 23789 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333930266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882ddf10c88de19" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "ddf10c88" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_5_18.html b/autobahn/client/tungstenite_case_12_5_18.html new file mode 100644 index 0000000..6f677b9 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_18.html @@ -0,0 +1,2081 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.5.18 : Pass - 10876 ms @ 2020-09-07T18:51:41.594Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=391&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: vfLrxy9VgVbMjnbQDwBenQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: b9QT5wwlteWlttFSsrXtZUwewBY=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
58158
2571257
137411374
144311443
149322986
158711587
163311633
345713457
354213542
359113591
365413654
369313693
379113791
379213792
385113851
390113901
392513925
400614006
406114061
434914349
448014480
454214542
469714697
485414854
500215002
546615466
553515535
559615596
563815638
571815718
579315793
775617756
785117851
788417884
793817938
801718017
810418104
879118791
889818898
900819008
909119091
916919169
927419274
949519495
957119571
962619626
969419694
975319753
975519755
978819788
983219832
986719867
989219892
10029110029
10074110074
10889110889
10965110965
11080111080
11184111184
11271111271
11385111385
13478113478
13553113553
13647113647
13671113671
13686113686
13720113720
14369114369
14472114472
14487114487
14592114592
14722114722
14852114852
15078115078
15095115095
15100115100
15135115135
15144115144
15161115161
15242115242
15245115245
15277115277
15294115294
15326115326
15331115331
15370115370
15394115394
15410115410
15430115430
15458115458
15537115537
17549117549
17626117626
17682117682
17748117748
17809117809
18694118694
18761118761
18853118853
18892118892
18978118978
19072119072
19123119123
19139119139
19161119161
19176119176
19195119195
19208119208
19512119512
19524119524
19546119546
19556119556
19581119581
19582119582
19855119855
19991119991
20124120124
20259120259
20378120378
20510120510
21201121201
21218121218
21219121219
21229121229
21232121232
21249121249
21251121251
21324121324
21326121326
21380121380
21460121460
21484121484
21515121515
21574121574
21617121617
21640121640
21646121646
21685121685
21847121847
21874121874
21881121881
21901121901
21902121902
21957121957
22075122075
22084122084
22098122098
22115122115
22130122130
22146122146
22378122378
22380122380
22394122394
22407122407
22411122411
22435122435
23284123284
23421123421
23517123517
23657123657
23795123795
23927123927
25057125057
25198125198
25327125327
25463125463
25595125595
25735125735
28352128352
28497128497
28648128648
28782128782
28929128929
29069129069
29371129371
29403129403
29493129493
29622129622
29694129694
29716129716
30478130478
30614130614
30748130748
30880130880
31016131016
31153131153
31248131248
31277131277
31299131299
31318131318
31341131341
31353131353
31782131782
31861131861
31949131949
32037132037
32113132113
32185132185
33347133347
33490133490
33564133564
33682133682
33815133815
33956133956
35764135764
35800135800
35890135890
35896135896
35947135947
35990271980
36007136007
36016136016
36028136028
36043136043
36134136134
36136136136
36216136216
36229136229
36245136245
36344136344
36470136470
37365137365
37404137404
37449137449
37502137502
37635137635
37703137703
39215139215
39314139314
39390278780
39420139420
39552139552
39769139769
39879139879
39980139980
40060140060
40097140097
40112140112
40116280232
40120140120
40143140143
40152140152
40252140252
41037141037
41168141168
41303141303
41439141439
41575141575
41703141703
41977141977
42074142074
42139142139
42195142195
42205142205
42300142300
42301142301
42364142364
42379142379
42396142396
42400142400
43461143461
43541143541
43598143598
43655143655
43658143658
43726143726
43739143739
43748143748
43778143778
43780143780
43791143791
43856143856
43913143913
43917143917
43964143964
43991287982
44054144054
44087144087
44131144131
44182144182
44212144212
44279144279
44282144282
44399144399
44526144526
44641144641
44767144767
44893144893
45021145021
45395145395
45399145399
45402145402
45413145413
45417145417
45425145425
45507145507
45515145515
45524145524
45525145525
45554145554
45605145605
45722145722
45832145832
45841145841
45847145847
45919145919
45941145941
46018146018
46034146034
46094146094
46122146122
46185146185
46229146229
47283147283
47366147366
47401147401
47457147457
47522147522
47559147559
47650147650
47659147659
47714147714
47779147779
47892147892
47993147993
48857148857
48955148955
49046149046
49053149053
49117298234
49137149137
49186149186
49238298476
49254149254
49304149304
49483149483
49486149486
49526149526
49529149529
49562149562
49675149675
49864149864
49979149979
50107150107
50214150214
50232150232
50245150245
50274150274
50338150338
50354150354
50377150377
50438150438
50466150466
50480150480
50545150545
50555150555
50645150645
50754150754
50853150853
52398152398
52463152463
52493152493
52503152503
52523152523
52547152547
52559152559
52574152574
52633152633
52681152681
52683152683
52708152708
52752152752
52799152799
52801152801
52817152817
52887152887
52903152903
52943152943
53008153008
53051153051
53086153086
53169153169
53230153230
54217154217
54254154254
54258154258
54266154266
54363154363
54468154468
54877154877
54984154984
55085155085
55186155186
55287155287
55392155392
55441155441
55564155564
55685155685
55713155713
55726155726
55746155746
55805155805
55816155816
55858155858
55871155871
55938155938
56062156062
56278156278
56327156327
56425156425
56450156450
56501156501
56591156591
57403157403
57495157495
57585157585
57677157677
57808157808
57879157879
58349158349
58449158449
58534158534
58536158536
58564158564
58573158573
585792117158
585802117160
58687158687
58691158691
588132117626
58921158921
58930158930
59067159067
59199159199
59231159231
59232159232
592352118470
59241159241
59243159243
592852118570
59286159286
59288159288
59289159289
59297159297
59387159387
59392159392
593942118788
59395159395
593962118792
59399159399
59401159401
594022118804
59483159483
595172119034
59521159521
595222119044
59523159523
59587159587
59609159609
59610159610
59612159612
596142119228
59616159616
596222119244
59625159625
596262119252
596272119254
59628159628
59630159630
596313178893
596322119264
59633159633
59635159635
59639159639
59640159640
59649159649
59653159653
59654159654
596573178971
59663159663
59664159664
59669159669
59673159673
59676159676
59677159677
59679159679
59689159689
59705159705
59715159715
59717159717
59720159720
59721159721
597232119446
59727159727
59728159728
59729159729
59730159730
59752159752
59761159761
59763159763
59790159790
59792159792
59834159834
59836159836
59838159838
598462119692
59847159847
59850159850
59851159851
598532119706
59854159854
59856159856
598592119718
59860159860
59867159867
59869159869
59878159878
59879159879
59884159884
59885159885
59886159886
59887159887
598882119776
59890159890
59891159891
59894159894
59895159895
59896159896
59899159899
59901159901
59912159912
59914159914
59915159915
599162119832
59918159918
599552119910
59956159956
59960159960
59961159961
59962159962
59963159963
59968159968
59984159984
59988159988
59992159992
599962119992
59997159997
59999159999
60000160000
60002160002
60011160011
60014160014
60015160015
600182120036
600202120040
60022160022
60024160024
60069160069
60096160096
60098160098
60102160102
60103160103
60104160104
601112120222
60114160114
60116160116
60117160117
60124160124
60126160126
601273180381
60128160128
601292120258
60133160133
60135160135
601382120276
60149160149
60151160151
601522120304
60154160154
601562120312
601573180471
601603180480
60161160161
60164160164
60166160166
601672120334
60168160168
60171160171
601752120350
601763180528
601772120354
60178160178
60179160179
601812120362
60183160183
60185160185
60187160187
60188160188
601912120382
60194160194
60237160237
60241160241
60263160263
60268160268
602692120538
60271160271
60272160272
60284160284
60353160353
60356160356
60358160358
60447160447
604502120900
60452160452
60453160453
60460160460
60525160525
60526160526
60531160531
60532160532
60538160538
60541160541
60699160699
607002121400
60701160701
60702160702
60706160706
60758160758
607622121524
60764160764
60768160768
60769160769
60877160877
60909160909
60912160912
609133182739
60914160914
60915160915
60916160916
60919160919
60922160922
60927160927
60928160928
60931160931
60933160933
60936160936
60937160937
60942160942
60961160961
60962160962
60964160964
60967160967
609682121936
60982160982
60984160984
60987160987
60990160990
60996160996
60997160997
60999160999
61000161000
61003161003
61014161014
61078161078
61142161142
61150161150
61151161151
61152161152
61153161153
61154161154
61155161155
61183161183
61216161216
61219161219
61221161221
61226161226
61228161228
61229161229
61265161265
61268161268
61271161271
612732122546
612742122548
61276161276
61280161280
61292161292
61322161322
61346161346
61360161360
61381161381
613863184158
61391161391
61398161398
61417161417
61426161426
614562122912
61457161457
61460161460
614642122928
61476161476
615102123020
61512161512
61514161514
61517161517
61519161519
61520161520
61528161528
61529161529
61532161532
61539161539
615482123096
61580161580
61596161596
61599161599
616002123200
61601161601
61602161602
616042123208
61607161607
61608161608
61609161609
616342123268
61635161635
61636161636
61637161637
616393184917
61641161641
616423184926
61644161644
61660161660
616622123324
61666161666
616732123346
61674161674
61675161675
61679161679
61685161685
61689161689
61751161751
61753161753
61757161757
61760161760
61761161761
61764161764
61772161772
618042123608
61805161805
61807161807
61808161808
61813161813
61864161864
61919161919
619622123924
61967161967
61972161972
61974161974
619752123950
61976161976
61980161980
61998161998
62028162028
620292124058
62031162031
620352124070
62036162036
62040162040
62045162045
62050162050
62052162052
62067162067
62069162069
62070162070
62079162079
62148162148
62178162178
62207162207
622122124424
62213162213
62215162215
62217162217
62285162285
62286162286
62291162291
62293162293
62299162299
62302162302
62336162336
62343162343
62345162345
62348162348
62351162351
62355162355
62380162380
62389162389
62393162393
62394162394
62395162395
62400162400
62425162425
62430162430
624452124890
62449162449
62450162450
62451162451
62453162453
62456162456
62459162459
62462162462
62463162463
62479162479
62481162481
62482162482
62484162484
62487162487
62489162489
62490162490
62491162491
62493162493
62494162494
62496162496
62497162497
62526162526
625272125054
625292125058
625312125062
625324250128
62537162537
62565162565
625662125132
62567162567
625682125136
62603162603
626042125208
626072125214
62608162608
62613162613
62618162618
62619162619
62620162620
62624162624
62625162625
62627162627
62641162641
62683162683
62688162688
62689162689
62692162692
62694162694
62697162697
62698162698
62699162699
627003188100
62701162701
62702162702
62703162703
62707162707
62708162708
62729162729
627332125466
62737162737
62753162753
62833162833
62891162891
62944162944
62946162946
62947162947
629522125904
62979162979
62983162983
629862125972
62988162988
62989162989
63058163058
63067163067
630682126136
63069163069
63078163078
63654163654
63796163796
63912163912
64028164028
64157164157
64189164189
64257164257
64314164314
64430164430
64448164448
64466164466
64471164471
64475164475
64476164476
64477164477
64523164523
64640164640
64725164725
65104165104
65200165200
65318165318
65404165404
65497165497
6553676850331648
Total177099416403
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
39139
1331133
2281228
2521252
7161716
8551855
9381938
105611056
118711187
132811328
149011490
155911559
160311603
160911609
169611696
174811748
327113271
327713277
337113371
341113411
341913419
350113501
350913509
351413514
351713517
353513535
354913549
360613606
364013640
370013700
371313713
372513725
375413754
381613816
385113851
391213912
391813918
397013970
397413974
400314003
402014020
411314113
412014120
424814248
438314383
450114501
451714517
463614636
469214692
470914709
475614756
480214802
485514855
486414864
499414994
500915009
506215062
515915159
557015570
563915639
570015700
574215742
582215822
589715897
670816708
680516805
6890213780
692316923
704017040
722517225
732417324
742617426
743417434
744717447
745317453
745417454
745617456
748017480
750517505
759617596
769717697
784817848
794017940
797617976
803018030
811118111
819318193
851518515
865018650
879218792
892418924
905919059
918919189
922519225
932719327
943919439
952119521
960019600
966219662
967019670
969719697
970819708
9727219454
979119791
979219792
979419794
980519805
980619806
982219822
982619826
985119851
986919869
988619886
991419914
991819918
993219932
994019940
996719967
10057110057
10198110198
10248110248
10917110917
10950110950
10995110995
11019111019
11030111030
11082111082
11109111109
11143111143
11145111145
11159111159
11198111198
11199111199
11224111224
11243111243
11245111245
11273111273
11335111335
11444111444
11586111586
11648111648
11655111655
11697111697
11703111703
11721111721
11724111724
11798111798
11820111820
11834111834
11878111878
11915111915
11947111947
11953111953
12016112016
12078112078
12202112202
12323112323
13116113116
13135113135
13139226278
13142113142
13147113147
13154113154
13158113158
13159339477
13182113182
13220113220
13235113235
13273113273
13278113278
13331113331
13345113345
13421113421
13447113447
13487113487
13547113547
13576113576
13577113577
13649113649
13653113653
13747113747
13768113768
13788113788
13822113822
14760114760
14826114826
14864114864
14881114881
14953114953
14983114983
15028115028
15082115082
15109115109
15111115111
15114115114
15164115164
15165115165
15201115201
15211115211
15212115212
15243115243
15257115257
15276115276
15303115303
15310115310
15319115319
15327115327
15360230720
15403115403
15425115425
15434115434
15437115437
15460115460
15461115461
15472115472
15487115487
15555115555
15573115573
15614115614
16246116246
16345116345
16442116442
16526116526
16627116627
16693116693
16770116770
16840116840
16848116848
16918116918
16970116970
16994116994
17035234070
17074234148
17109117109
17154117154
17217117217
17269117269
17397117397
17521117521
17569117569
17641117641
17642117642
17694117694
17701117701
17764117764
17771117771
17798117798
17823117823
17906117906
17950117950
17969117969
18012118012
18013118013
18113118113
18115118115
18196118196
18208118208
18285118285
18722118722
18789118789
18877118877
18912118912
18994118994
19085119085
19274119274
19289119289
19309119309
19327119327
19346119346
19358119358
19510119510
19522119522
19545119545
19554119554
19580239160
19957119957
20061120061
20066120066
20093120093
20128120128
20139120139
20177120177
20192120192
20213240426
20216120216
20222120222
20240120240
20259120259
20261120261
20280120280
20309120309
20322120322
20351120351
20355120355
20386120386
20391120391
20429120429
20486120486
20499120499
20549120549
20622120622
20642120642
20731120731
20863120863
21193121193
21206121206
21209121209
21221121221
21225121225
21238121238
21248121248
21319121319
21322121322
21376121376
21454121454
21477121477
21505121505
21563121563
21610121610
21632121632
21638121638
21675121675
21847121847
21873121873
21879121879
21899243798
21952121952
21955121955
22004122004
22011122011
22015122015
22070122070
22079122079
22089122089
22109122109
22113122113
22126122126
22140122140
22188122188
22219122219
22290122290
22378244756
22383122383
22393122393
22405122405
22410122410
22435122435
22485122485
22587122587
22691122691
22710122710
22832122832
22951122951
23075123075
23085123085
23101123101
23119123119
23177123177
23199123199
23233123233
23248123248
23324123324
23435123435
23576123576
23674123674
23759123759
23807123807
23814123814
23904123904
23930123930
23956123956
23977123977
24066124066
24092124092
24768124768
24857124857
24947124947
25044125044
25170125170
25241125241
25392125392
25529125529
25662125662
25796125796
25930125930
25975125975
25976125976
25982125982
26025126025
26027252054
26028126028
26062126062
26081126081
26099126099
26184126184
26225126225
26304126304
26349126349
26419126419
26480126480
26483379449
26486126486
26490126490
26491126491
26533126533
26534253068
26536126536
26537126537
26540126540
26546126546
26614126614
26646126646
26661126661
26667253334
26668380004
26669126669
26674126674
26675126675
26677126677
26679126679
26756126756
26774126774
26775126775
26778126778
26779253558
26786126786
26854126854
26857126857
26858126858
26860126860
26862126862
26863126863
26867126867
26868126868
26877126877
26882253764
26883253766
26885253770
26886126886
26887126887
26893126893
26899253798
26901126901
26902126902
26904253808
26905126905
26906126906
26913126913
26916126916
26918253836
26919126919
26924126924
26935253870
26938126938
26939126939
26943253886
26944126944
26960126960
26967253934
26968126968
26970253940
26976126976
26989126989
26990126990
26992126992
26993126993
27010127010
27019254038
27052127052
27059127059
27095254190
27098127098
27103254206
27105254210
27106254212
27110127110
27120254240
27124254248
271254108500
27129127129
27130127130
27132127132
27136127136
27138127138
27139127139
27142254284
27144127144
27155254310
27159127159
27162127162
27167127167
27176127176
27178127178
27179127179
27180127180
27182127182
27183127183
27216127216
27217127217
27219127219
27223254446
27224127224
27225127225
27226127226
27234127234
27235127235
27240127240
27246127246
27248127248
27251127251
27263127263
27265127265
27267127267
27269127269
27273127273
27274381822
27275254550
27280127280
27286127286
27330127330
27346127346
27357127357
27366127366
27368127368
27369127369
27375254750
27376127376
27378127378
27380254760
27381254762
27385127385
27397254794
27398127398
27401254802
27403127403
27406127406
27407127407
27408127408
27410127410
27413254826
27414254828
27415127415
27417127417
27418127418
27419127419
27422127422
27424127424
27426254852
27429127429
27431127431
27432254864
27433127433
27438127438
27443127443
27444127444
27445127445
27446127446
27447127447
27448254896
27449254898
27450254900
27453254906
27454382362
27455127455
27456127456
27511127511
27516127516
27530127530
27531127531
27533127533
27538127538
27542127542
27544127544
27547127547
27623255246
27628127628
27682127682
27686127686
27688127688
27689127689
27691127691
27696127696
27795127795
27796127796
27800127800
27801127801
27803127803
27809127809
27965255930
27969383907
27970127970
27998255996
27999127999
28000128000
28004128004
28006128006
28111128111
28162128162
28166128166
28167128167
28170128170
28171128171
28172128172
28173128173
28174256348
28175256350
28176256352
28178128178
28185128185
28186128186
28190128190
28195128195
28197128197
28198128198
28202256404
28203128203
28224128224
28233256466
28236128236
28237128237
28238128238
28241128241
28242128242
28252256504
28331128331
28374128374
28380256760
28381128381
28382128382
28383128383
28409128409
28448128448
28450128450
28453128453
28457128457
28461128461
28492128492
28497128497
28503128503
28504128504
28519128519
28526257052
28527128527
28529128529
28533128533
28552128552
28576128576
28606128606
28609128609
28612128612
28614128614
28615128615
28619128619
28626128626
28637128637
28646128646
28653128653
28703128703
28708386124
28711128711
28714386142
28752128752
28755128755
28758128758
28763257526
28765257530
28770128770
28772128772
28773128773
28780128780
28783128783
28787128787
28789128789
28818128818
28834128834
28839128839
28842257684
28844257688
28845386535
28846128846
28847128847
28850128850
28863128863
28867257734
28870128870
28872128872
28873128873
28875128875
28882128882
28883128883
28884128884
28885128885
28886128886
28891128891
28894128894
28896257792
28900128900
28906128906
28907128907
28909128909
28912128912
28915128915
28918128918
28922257844
28973128973
28982128982
28985128985
28989128989
28990128990
28992128992
29001129001
29032129032
29033129033
29035129035
29036129036
29037129037
29043129043
29071129071
29107129107
29197258394
29202129202
29207129207
29209129209
29211258422
29213129213
29215129215
29221129221
29233129233
29258129258
29262129262
29264258528
29269258538
29274129274
29275258550
29280129280
29282129282
29297258594
29301129301
29331129331
29379129379
29392129392
29409129409
29433129433
29436129436
29438129438
29439129439
29440258880
29441129441
29511259022
29518129518
29520129520
29527129527
29530129530
29562129562
29569129569
29571129571
29574129574
29577129577
29582129582
29607129607
29614129614
29618129618
29619129619
29621129621
29626129626
29648129648
29651129651
29653129653
29669129669
29670129670
29674129674
29676129676
29677129677
29678259356
29683129683
29686129686
29690259380
29702129702
29706129706
29707129707
29709259418
29711129711
29712129712
29713389139
29714129714
29716129716
29749129749
29752259504
29753129753
29754389262
29755129755
29756129756
29757259514
29760129760
29771129771
297914119164
29792129792
29793129793
29828259656
29830259660
29832129832
29834129834
29838129838
29842129842
29843129843
29844129844
29849129849
29852129852
29853129853
29867129867
29896129896
29908129908
29914129914
29915129915
29917129917
29920259840
29922389766
29923259846
29925129925
29927129927
29928129928
29929129929
29930129930
29955129955
29959259918
29963129963
29968129968
29980129980
29996129996
30058130058
30116130116
30167130167
30168130168
30169130169
30174260348
30205130205
30209130209
30213260426
30215130215
30216130216
30280130280
30289130289
30290260580
30291130291
30300130300
30791130791
30926130926
31061131061
31192131192
31330131330
31372131372
31466131466
31514131514
31522131522
31547131547
31572131572
31594131594
31615263230
31628131628
31629131629
31733131733
31745131745
31805131805
31823131823
31828131828
31830131830
31833263666
31851131851
31874131874
31949131949
31979131979
32052132052
32063132063
32129132129
32151132151
32210132210
32298132298
32374132374
32446132446
32510132510
32606132606
32720132720
32772234076686480
Total334299533579
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
02340
21000
81
Total3341
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333931266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88825a9668b0597e
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3561393636386230
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_5_18.json b/autobahn/client/tungstenite_case_12_5_18.json new file mode 100644 index 0000000..d79b65c --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_18.json @@ -0,0 +1,1928 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 391, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 10876, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=391&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: vfLrxy9VgVbMjnbQDwBenQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: b9QT5wwlteWlttFSsrXtZUwewBY=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.5.18", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "58": 1, + "257": 1, + "1374": 1, + "1443": 1, + "1493": 2, + "1587": 1, + "1633": 1, + "3457": 1, + "3542": 1, + "3591": 1, + "3654": 1, + "3693": 1, + "3791": 1, + "3792": 1, + "3851": 1, + "3901": 1, + "3925": 1, + "4006": 1, + "4061": 1, + "4349": 1, + "4480": 1, + "4542": 1, + "4697": 1, + "4854": 1, + "5002": 1, + "5466": 1, + "5535": 1, + "5596": 1, + "5638": 1, + "5718": 1, + "5793": 1, + "7756": 1, + "7851": 1, + "7884": 1, + "7938": 1, + "8017": 1, + "8104": 1, + "8791": 1, + "8898": 1, + "9008": 1, + "9091": 1, + "9169": 1, + "9274": 1, + "9495": 1, + "9571": 1, + "9626": 1, + "9694": 1, + "9753": 1, + "9755": 1, + "9788": 1, + "9832": 1, + "9867": 1, + "9892": 1, + "10029": 1, + "10074": 1, + "10889": 1, + "10965": 1, + "11080": 1, + "11184": 1, + "11271": 1, + "11385": 1, + "13478": 1, + "13553": 1, + "13647": 1, + "13671": 1, + "13686": 1, + "13720": 1, + "14369": 1, + "14472": 1, + "14487": 1, + "14592": 1, + "14722": 1, + "14852": 1, + "15078": 1, + "15095": 1, + "15100": 1, + "15135": 1, + "15144": 1, + "15161": 1, + "15242": 1, + "15245": 1, + "15277": 1, + "15294": 1, + "15326": 1, + "15331": 1, + "15370": 1, + "15394": 1, + "15410": 1, + "15430": 1, + "15458": 1, + "15537": 1, + "17549": 1, + "17626": 1, + "17682": 1, + "17748": 1, + "17809": 1, + "18694": 1, + "18761": 1, + "18853": 1, + "18892": 1, + "18978": 1, + "19072": 1, + "19123": 1, + "19139": 1, + "19161": 1, + "19176": 1, + "19195": 1, + "19208": 1, + "19512": 1, + "19524": 1, + "19546": 1, + "19556": 1, + "19581": 1, + "19582": 1, + "19855": 1, + "19991": 1, + "20124": 1, + "20259": 1, + "20378": 1, + "20510": 1, + "21201": 1, + "21218": 1, + "21219": 1, + "21229": 1, + "21232": 1, + "21249": 1, + "21251": 1, + "21324": 1, + "21326": 1, + "21380": 1, + "21460": 1, + "21484": 1, + "21515": 1, + "21574": 1, + "21617": 1, + "21640": 1, + "21646": 1, + "21685": 1, + "21847": 1, + "21874": 1, + "21881": 1, + "21901": 1, + "21902": 1, + "21957": 1, + "22075": 1, + "22084": 1, + "22098": 1, + "22115": 1, + "22130": 1, + "22146": 1, + "22378": 1, + "22380": 1, + "22394": 1, + "22407": 1, + "22411": 1, + "22435": 1, + "23284": 1, + "23421": 1, + "23517": 1, + "23657": 1, + "23795": 1, + "23927": 1, + "25057": 1, + "25198": 1, + "25327": 1, + "25463": 1, + "25595": 1, + "25735": 1, + "28352": 1, + "28497": 1, + "28648": 1, + "28782": 1, + "28929": 1, + "29069": 1, + "29371": 1, + "29403": 1, + "29493": 1, + "29622": 1, + "29694": 1, + "29716": 1, + "30478": 1, + "30614": 1, + "30748": 1, + "30880": 1, + "31016": 1, + "31153": 1, + "31248": 1, + "31277": 1, + "31299": 1, + "31318": 1, + "31341": 1, + "31353": 1, + "31782": 1, + "31861": 1, + "31949": 1, + "32037": 1, + "32113": 1, + "32185": 1, + "33347": 1, + "33490": 1, + "33564": 1, + "33682": 1, + "33815": 1, + "33956": 1, + "35764": 1, + "35800": 1, + "35890": 1, + "35896": 1, + "35947": 1, + "35990": 2, + "36007": 1, + "36016": 1, + "36028": 1, + "36043": 1, + "36134": 1, + "36136": 1, + "36216": 1, + "36229": 1, + "36245": 1, + "36344": 1, + "36470": 1, + "37365": 1, + "37404": 1, + "37449": 1, + "37502": 1, + "37635": 1, + "37703": 1, + "39215": 1, + "39314": 1, + "39390": 2, + "39420": 1, + "39552": 1, + "39769": 1, + "39879": 1, + "39980": 1, + "40060": 1, + "40097": 1, + "40112": 1, + "40116": 2, + "40120": 1, + "40143": 1, + "40152": 1, + "40252": 1, + "41037": 1, + "41168": 1, + "41303": 1, + "41439": 1, + "41575": 1, + "41703": 1, + "41977": 1, + "42074": 1, + "42139": 1, + "42195": 1, + "42205": 1, + "42300": 1, + "42301": 1, + "42364": 1, + "42379": 1, + "42396": 1, + "42400": 1, + "43461": 1, + "43541": 1, + "43598": 1, + "43655": 1, + "43658": 1, + "43726": 1, + "43739": 1, + "43748": 1, + "43778": 1, + "43780": 1, + "43791": 1, + "43856": 1, + "43913": 1, + "43917": 1, + "43964": 1, + "43991": 2, + "44054": 1, + "44087": 1, + "44131": 1, + "44182": 1, + "44212": 1, + "44279": 1, + "44282": 1, + "44399": 1, + "44526": 1, + "44641": 1, + "44767": 1, + "44893": 1, + "45021": 1, + "45395": 1, + "45399": 1, + "45402": 1, + "45413": 1, + "45417": 1, + "45425": 1, + "45507": 1, + "45515": 1, + "45524": 1, + "45525": 1, + "45554": 1, + "45605": 1, + "45722": 1, + "45832": 1, + "45841": 1, + "45847": 1, + "45919": 1, + "45941": 1, + "46018": 1, + "46034": 1, + "46094": 1, + "46122": 1, + "46185": 1, + "46229": 1, + "47283": 1, + "47366": 1, + "47401": 1, + "47457": 1, + "47522": 1, + "47559": 1, + "47650": 1, + "47659": 1, + "47714": 1, + "47779": 1, + "47892": 1, + "47993": 1, + "48857": 1, + "48955": 1, + "49046": 1, + "49053": 1, + "49117": 2, + "49137": 1, + "49186": 1, + "49238": 2, + "49254": 1, + "49304": 1, + "49483": 1, + "49486": 1, + "49526": 1, + "49529": 1, + "49562": 1, + "49675": 1, + "49864": 1, + "49979": 1, + "50107": 1, + "50214": 1, + "50232": 1, + "50245": 1, + "50274": 1, + "50338": 1, + "50354": 1, + "50377": 1, + "50438": 1, + "50466": 1, + "50480": 1, + "50545": 1, + "50555": 1, + "50645": 1, + "50754": 1, + "50853": 1, + "52398": 1, + "52463": 1, + "52493": 1, + "52503": 1, + "52523": 1, + "52547": 1, + "52559": 1, + "52574": 1, + "52633": 1, + "52681": 1, + "52683": 1, + "52708": 1, + "52752": 1, + "52799": 1, + "52801": 1, + "52817": 1, + "52887": 1, + "52903": 1, + "52943": 1, + "53008": 1, + "53051": 1, + "53086": 1, + "53169": 1, + "53230": 1, + "54217": 1, + "54254": 1, + "54258": 1, + "54266": 1, + "54363": 1, + "54468": 1, + "54877": 1, + "54984": 1, + "55085": 1, + "55186": 1, + "55287": 1, + "55392": 1, + "55441": 1, + "55564": 1, + "55685": 1, + "55713": 1, + "55726": 1, + "55746": 1, + "55805": 1, + "55816": 1, + "55858": 1, + "55871": 1, + "55938": 1, + "56062": 1, + "56278": 1, + "56327": 1, + "56425": 1, + "56450": 1, + "56501": 1, + "56591": 1, + "57403": 1, + "57495": 1, + "57585": 1, + "57677": 1, + "57808": 1, + "57879": 1, + "58349": 1, + "58449": 1, + "58534": 1, + "58536": 1, + "58564": 1, + "58573": 1, + "58579": 2, + "58580": 2, + "58687": 1, + "58691": 1, + "58813": 2, + "58921": 1, + "58930": 1, + "59067": 1, + "59199": 1, + "59231": 1, + "59232": 1, + "59235": 2, + "59241": 1, + "59243": 1, + "59285": 2, + "59286": 1, + "59288": 1, + "59289": 1, + "59297": 1, + "59387": 1, + "59392": 1, + "59394": 2, + "59395": 1, + "59396": 2, + "59399": 1, + "59401": 1, + "59402": 2, + "59483": 1, + "59517": 2, + "59521": 1, + "59522": 2, + "59523": 1, + "59587": 1, + "59609": 1, + "59610": 1, + "59612": 1, + "59614": 2, + "59616": 1, + "59622": 2, + "59625": 1, + "59626": 2, + "59627": 2, + "59628": 1, + "59630": 1, + "59631": 3, + "59632": 2, + "59633": 1, + "59635": 1, + "59639": 1, + "59640": 1, + "59649": 1, + "59653": 1, + "59654": 1, + "59657": 3, + "59663": 1, + "59664": 1, + "59669": 1, + "59673": 1, + "59676": 1, + "59677": 1, + "59679": 1, + "59689": 1, + "59705": 1, + "59715": 1, + "59717": 1, + "59720": 1, + "59721": 1, + "59723": 2, + "59727": 1, + "59728": 1, + "59729": 1, + "59730": 1, + "59752": 1, + "59761": 1, + "59763": 1, + "59790": 1, + "59792": 1, + "59834": 1, + "59836": 1, + "59838": 1, + "59846": 2, + "59847": 1, + "59850": 1, + "59851": 1, + "59853": 2, + "59854": 1, + "59856": 1, + "59859": 2, + "59860": 1, + "59867": 1, + "59869": 1, + "59878": 1, + "59879": 1, + "59884": 1, + "59885": 1, + "59886": 1, + "59887": 1, + "59888": 2, + "59890": 1, + "59891": 1, + "59894": 1, + "59895": 1, + "59896": 1, + "59899": 1, + "59901": 1, + "59912": 1, + "59914": 1, + "59915": 1, + "59916": 2, + "59918": 1, + "59955": 2, + "59956": 1, + "59960": 1, + "59961": 1, + "59962": 1, + "59963": 1, + "59968": 1, + "59984": 1, + "59988": 1, + "59992": 1, + "59996": 2, + "59997": 1, + "59999": 1, + "60000": 1, + "60002": 1, + "60011": 1, + "60014": 1, + "60015": 1, + "60018": 2, + "60020": 2, + "60022": 1, + "60024": 1, + "60069": 1, + "60096": 1, + "60098": 1, + "60102": 1, + "60103": 1, + "60104": 1, + "60111": 2, + "60114": 1, + "60116": 1, + "60117": 1, + "60124": 1, + "60126": 1, + "60127": 3, + "60128": 1, + "60129": 2, + "60133": 1, + "60135": 1, + "60138": 2, + "60149": 1, + "60151": 1, + "60152": 2, + "60154": 1, + "60156": 2, + "60157": 3, + "60160": 3, + "60161": 1, + "60164": 1, + "60166": 1, + "60167": 2, + "60168": 1, + "60171": 1, + "60175": 2, + "60176": 3, + "60177": 2, + "60178": 1, + "60179": 1, + "60181": 2, + "60183": 1, + "60185": 1, + "60187": 1, + "60188": 1, + "60191": 2, + "60194": 1, + "60237": 1, + "60241": 1, + "60263": 1, + "60268": 1, + "60269": 2, + "60271": 1, + "60272": 1, + "60284": 1, + "60353": 1, + "60356": 1, + "60358": 1, + "60447": 1, + "60450": 2, + "60452": 1, + "60453": 1, + "60460": 1, + "60525": 1, + "60526": 1, + "60531": 1, + "60532": 1, + "60538": 1, + "60541": 1, + "60699": 1, + "60700": 2, + "60701": 1, + "60702": 1, + "60706": 1, + "60758": 1, + "60762": 2, + "60764": 1, + "60768": 1, + "60769": 1, + "60877": 1, + "60909": 1, + "60912": 1, + "60913": 3, + "60914": 1, + "60915": 1, + "60916": 1, + "60919": 1, + "60922": 1, + "60927": 1, + "60928": 1, + "60931": 1, + "60933": 1, + "60936": 1, + "60937": 1, + "60942": 1, + "60961": 1, + "60962": 1, + "60964": 1, + "60967": 1, + "60968": 2, + "60982": 1, + "60984": 1, + "60987": 1, + "60990": 1, + "60996": 1, + "60997": 1, + "60999": 1, + "61000": 1, + "61003": 1, + "61014": 1, + "61078": 1, + "61142": 1, + "61150": 1, + "61151": 1, + "61152": 1, + "61153": 1, + "61154": 1, + "61155": 1, + "61183": 1, + "61216": 1, + "61219": 1, + "61221": 1, + "61226": 1, + "61228": 1, + "61229": 1, + "61265": 1, + "61268": 1, + "61271": 1, + "61273": 2, + "61274": 2, + "61276": 1, + "61280": 1, + "61292": 1, + "61322": 1, + "61346": 1, + "61360": 1, + "61381": 1, + "61386": 3, + "61391": 1, + "61398": 1, + "61417": 1, + "61426": 1, + "61456": 2, + "61457": 1, + "61460": 1, + "61464": 2, + "61476": 1, + "61510": 2, + "61512": 1, + "61514": 1, + "61517": 1, + "61519": 1, + "61520": 1, + "61528": 1, + "61529": 1, + "61532": 1, + "61539": 1, + "61548": 2, + "61580": 1, + "61596": 1, + "61599": 1, + "61600": 2, + "61601": 1, + "61602": 1, + "61604": 2, + "61607": 1, + "61608": 1, + "61609": 1, + "61634": 2, + "61635": 1, + "61636": 1, + "61637": 1, + "61639": 3, + "61641": 1, + "61642": 3, + "61644": 1, + "61660": 1, + "61662": 2, + "61666": 1, + "61673": 2, + "61674": 1, + "61675": 1, + "61679": 1, + "61685": 1, + "61689": 1, + "61751": 1, + "61753": 1, + "61757": 1, + "61760": 1, + "61761": 1, + "61764": 1, + "61772": 1, + "61804": 2, + "61805": 1, + "61807": 1, + "61808": 1, + "61813": 1, + "61864": 1, + "61919": 1, + "61962": 2, + "61967": 1, + "61972": 1, + "61974": 1, + "61975": 2, + "61976": 1, + "61980": 1, + "61998": 1, + "62028": 1, + "62029": 2, + "62031": 1, + "62035": 2, + "62036": 1, + "62040": 1, + "62045": 1, + "62050": 1, + "62052": 1, + "62067": 1, + "62069": 1, + "62070": 1, + "62079": 1, + "62148": 1, + "62178": 1, + "62207": 1, + "62212": 2, + "62213": 1, + "62215": 1, + "62217": 1, + "62285": 1, + "62286": 1, + "62291": 1, + "62293": 1, + "62299": 1, + "62302": 1, + "62336": 1, + "62343": 1, + "62345": 1, + "62348": 1, + "62351": 1, + "62355": 1, + "62380": 1, + "62389": 1, + "62393": 1, + "62394": 1, + "62395": 1, + "62400": 1, + "62425": 1, + "62430": 1, + "62445": 2, + "62449": 1, + "62450": 1, + "62451": 1, + "62453": 1, + "62456": 1, + "62459": 1, + "62462": 1, + "62463": 1, + "62479": 1, + "62481": 1, + "62482": 1, + "62484": 1, + "62487": 1, + "62489": 1, + "62490": 1, + "62491": 1, + "62493": 1, + "62494": 1, + "62496": 1, + "62497": 1, + "62526": 1, + "62527": 2, + "62529": 2, + "62531": 2, + "62532": 4, + "62537": 1, + "62565": 1, + "62566": 2, + "62567": 1, + "62568": 2, + "62603": 1, + "62604": 2, + "62607": 2, + "62608": 1, + "62613": 1, + "62618": 1, + "62619": 1, + "62620": 1, + "62624": 1, + "62625": 1, + "62627": 1, + "62641": 1, + "62683": 1, + "62688": 1, + "62689": 1, + "62692": 1, + "62694": 1, + "62697": 1, + "62698": 1, + "62699": 1, + "62700": 3, + "62701": 1, + "62702": 1, + "62703": 1, + "62707": 1, + "62708": 1, + "62729": 1, + "62733": 2, + "62737": 1, + "62753": 1, + "62833": 1, + "62891": 1, + "62944": 1, + "62946": 1, + "62947": 1, + "62952": 2, + "62979": 1, + "62983": 1, + "62986": 2, + "62988": 1, + "62989": 1, + "63058": 1, + "63067": 1, + "63068": 2, + "63069": 1, + "63078": 1, + "63654": 1, + "63796": 1, + "63912": 1, + "64028": 1, + "64157": 1, + "64189": 1, + "64257": 1, + "64314": 1, + "64430": 1, + "64448": 1, + "64466": 1, + "64471": 1, + "64475": 1, + "64476": 1, + "64477": 1, + "64523": 1, + "64640": 1, + "64725": 1, + "65104": 1, + "65200": 1, + "65318": 1, + "65404": 1, + "65497": 1, + "65536": 768 + }, + "started": "2020-09-07T18:51:41.594Z", + "trafficStats": { + "incomingCompressionRatio": 0.7583887481689453, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 99403530, + "incomingOctetsWireLevel": 99416138, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.00012683654192159976, + "outgoingCompressionRatio": 0.7592770767211914, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 99519965, + "outgoingOctetsWireLevel": 99533323, + "outgoingWebSocketFrames": 3340, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.00013422432373242897, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 2340, + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "39": 1, + "133": 1, + "228": 1, + "252": 1, + "716": 1, + "855": 1, + "938": 1, + "1056": 1, + "1187": 1, + "1328": 1, + "1490": 1, + "1559": 1, + "1603": 1, + "1609": 1, + "1696": 1, + "1748": 1, + "3271": 1, + "3277": 1, + "3371": 1, + "3411": 1, + "3419": 1, + "3501": 1, + "3509": 1, + "3514": 1, + "3517": 1, + "3535": 1, + "3549": 1, + "3606": 1, + "3640": 1, + "3700": 1, + "3713": 1, + "3725": 1, + "3754": 1, + "3816": 1, + "3851": 1, + "3912": 1, + "3918": 1, + "3970": 1, + "3974": 1, + "4003": 1, + "4020": 1, + "4113": 1, + "4120": 1, + "4248": 1, + "4383": 1, + "4501": 1, + "4517": 1, + "4636": 1, + "4692": 1, + "4709": 1, + "4756": 1, + "4802": 1, + "4855": 1, + "4864": 1, + "4994": 1, + "5009": 1, + "5062": 1, + "5159": 1, + "5570": 1, + "5639": 1, + "5700": 1, + "5742": 1, + "5822": 1, + "5897": 1, + "6708": 1, + "6805": 1, + "6890": 2, + "6923": 1, + "7040": 1, + "7225": 1, + "7324": 1, + "7426": 1, + "7434": 1, + "7447": 1, + "7453": 1, + "7454": 1, + "7456": 1, + "7480": 1, + "7505": 1, + "7596": 1, + "7697": 1, + "7848": 1, + "7940": 1, + "7976": 1, + "8030": 1, + "8111": 1, + "8193": 1, + "8515": 1, + "8650": 1, + "8792": 1, + "8924": 1, + "9059": 1, + "9189": 1, + "9225": 1, + "9327": 1, + "9439": 1, + "9521": 1, + "9600": 1, + "9662": 1, + "9670": 1, + "9697": 1, + "9708": 1, + "9727": 2, + "9791": 1, + "9792": 1, + "9794": 1, + "9805": 1, + "9806": 1, + "9822": 1, + "9826": 1, + "9851": 1, + "9869": 1, + "9886": 1, + "9914": 1, + "9918": 1, + "9932": 1, + "9940": 1, + "9967": 1, + "10057": 1, + "10198": 1, + "10248": 1, + "10917": 1, + "10950": 1, + "10995": 1, + "11019": 1, + "11030": 1, + "11082": 1, + "11109": 1, + "11143": 1, + "11145": 1, + "11159": 1, + "11198": 1, + "11199": 1, + "11224": 1, + "11243": 1, + "11245": 1, + "11273": 1, + "11335": 1, + "11444": 1, + "11586": 1, + "11648": 1, + "11655": 1, + "11697": 1, + "11703": 1, + "11721": 1, + "11724": 1, + "11798": 1, + "11820": 1, + "11834": 1, + "11878": 1, + "11915": 1, + "11947": 1, + "11953": 1, + "12016": 1, + "12078": 1, + "12202": 1, + "12323": 1, + "13116": 1, + "13135": 1, + "13139": 2, + "13142": 1, + "13147": 1, + "13154": 1, + "13158": 1, + "13159": 3, + "13182": 1, + "13220": 1, + "13235": 1, + "13273": 1, + "13278": 1, + "13331": 1, + "13345": 1, + "13421": 1, + "13447": 1, + "13487": 1, + "13547": 1, + "13576": 1, + "13577": 1, + "13649": 1, + "13653": 1, + "13747": 1, + "13768": 1, + "13788": 1, + "13822": 1, + "14760": 1, + "14826": 1, + "14864": 1, + "14881": 1, + "14953": 1, + "14983": 1, + "15028": 1, + "15082": 1, + "15109": 1, + "15111": 1, + "15114": 1, + "15164": 1, + "15165": 1, + "15201": 1, + "15211": 1, + "15212": 1, + "15243": 1, + "15257": 1, + "15276": 1, + "15303": 1, + "15310": 1, + "15319": 1, + "15327": 1, + "15360": 2, + "15403": 1, + "15425": 1, + "15434": 1, + "15437": 1, + "15460": 1, + "15461": 1, + "15472": 1, + "15487": 1, + "15555": 1, + "15573": 1, + "15614": 1, + "16246": 1, + "16345": 1, + "16442": 1, + "16526": 1, + "16627": 1, + "16693": 1, + "16770": 1, + "16840": 1, + "16848": 1, + "16918": 1, + "16970": 1, + "16994": 1, + "17035": 2, + "17074": 2, + "17109": 1, + "17154": 1, + "17217": 1, + "17269": 1, + "17397": 1, + "17521": 1, + "17569": 1, + "17641": 1, + "17642": 1, + "17694": 1, + "17701": 1, + "17764": 1, + "17771": 1, + "17798": 1, + "17823": 1, + "17906": 1, + "17950": 1, + "17969": 1, + "18012": 1, + "18013": 1, + "18113": 1, + "18115": 1, + "18196": 1, + "18208": 1, + "18285": 1, + "18722": 1, + "18789": 1, + "18877": 1, + "18912": 1, + "18994": 1, + "19085": 1, + "19274": 1, + "19289": 1, + "19309": 1, + "19327": 1, + "19346": 1, + "19358": 1, + "19510": 1, + "19522": 1, + "19545": 1, + "19554": 1, + "19580": 2, + "19957": 1, + "20061": 1, + "20066": 1, + "20093": 1, + "20128": 1, + "20139": 1, + "20177": 1, + "20192": 1, + "20213": 2, + "20216": 1, + "20222": 1, + "20240": 1, + "20259": 1, + "20261": 1, + "20280": 1, + "20309": 1, + "20322": 1, + "20351": 1, + "20355": 1, + "20386": 1, + "20391": 1, + "20429": 1, + "20486": 1, + "20499": 1, + "20549": 1, + "20622": 1, + "20642": 1, + "20731": 1, + "20863": 1, + "21193": 1, + "21206": 1, + "21209": 1, + "21221": 1, + "21225": 1, + "21238": 1, + "21248": 1, + "21319": 1, + "21322": 1, + "21376": 1, + "21454": 1, + "21477": 1, + "21505": 1, + "21563": 1, + "21610": 1, + "21632": 1, + "21638": 1, + "21675": 1, + "21847": 1, + "21873": 1, + "21879": 1, + "21899": 2, + "21952": 1, + "21955": 1, + "22004": 1, + "22011": 1, + "22015": 1, + "22070": 1, + "22079": 1, + "22089": 1, + "22109": 1, + "22113": 1, + "22126": 1, + "22140": 1, + "22188": 1, + "22219": 1, + "22290": 1, + "22378": 2, + "22383": 1, + "22393": 1, + "22405": 1, + "22410": 1, + "22435": 1, + "22485": 1, + "22587": 1, + "22691": 1, + "22710": 1, + "22832": 1, + "22951": 1, + "23075": 1, + "23085": 1, + "23101": 1, + "23119": 1, + "23177": 1, + "23199": 1, + "23233": 1, + "23248": 1, + "23324": 1, + "23435": 1, + "23576": 1, + "23674": 1, + "23759": 1, + "23807": 1, + "23814": 1, + "23904": 1, + "23930": 1, + "23956": 1, + "23977": 1, + "24066": 1, + "24092": 1, + "24768": 1, + "24857": 1, + "24947": 1, + "25044": 1, + "25170": 1, + "25241": 1, + "25392": 1, + "25529": 1, + "25662": 1, + "25796": 1, + "25930": 1, + "25975": 1, + "25976": 1, + "25982": 1, + "26025": 1, + "26027": 2, + "26028": 1, + "26062": 1, + "26081": 1, + "26099": 1, + "26184": 1, + "26225": 1, + "26304": 1, + "26349": 1, + "26419": 1, + "26480": 1, + "26483": 3, + "26486": 1, + "26490": 1, + "26491": 1, + "26533": 1, + "26534": 2, + "26536": 1, + "26537": 1, + "26540": 1, + "26546": 1, + "26614": 1, + "26646": 1, + "26661": 1, + "26667": 2, + "26668": 3, + "26669": 1, + "26674": 1, + "26675": 1, + "26677": 1, + "26679": 1, + "26756": 1, + "26774": 1, + "26775": 1, + "26778": 1, + "26779": 2, + "26786": 1, + "26854": 1, + "26857": 1, + "26858": 1, + "26860": 1, + "26862": 1, + "26863": 1, + "26867": 1, + "26868": 1, + "26877": 1, + "26882": 2, + "26883": 2, + "26885": 2, + "26886": 1, + "26887": 1, + "26893": 1, + "26899": 2, + "26901": 1, + "26902": 1, + "26904": 2, + "26905": 1, + "26906": 1, + "26913": 1, + "26916": 1, + "26918": 2, + "26919": 1, + "26924": 1, + "26935": 2, + "26938": 1, + "26939": 1, + "26943": 2, + "26944": 1, + "26960": 1, + "26967": 2, + "26968": 1, + "26970": 2, + "26976": 1, + "26989": 1, + "26990": 1, + "26992": 1, + "26993": 1, + "27010": 1, + "27019": 2, + "27052": 1, + "27059": 1, + "27095": 2, + "27098": 1, + "27103": 2, + "27105": 2, + "27106": 2, + "27110": 1, + "27120": 2, + "27124": 2, + "27125": 4, + "27129": 1, + "27130": 1, + "27132": 1, + "27136": 1, + "27138": 1, + "27139": 1, + "27142": 2, + "27144": 1, + "27155": 2, + "27159": 1, + "27162": 1, + "27167": 1, + "27176": 1, + "27178": 1, + "27179": 1, + "27180": 1, + "27182": 1, + "27183": 1, + "27216": 1, + "27217": 1, + "27219": 1, + "27223": 2, + "27224": 1, + "27225": 1, + "27226": 1, + "27234": 1, + "27235": 1, + "27240": 1, + "27246": 1, + "27248": 1, + "27251": 1, + "27263": 1, + "27265": 1, + "27267": 1, + "27269": 1, + "27273": 1, + "27274": 3, + "27275": 2, + "27280": 1, + "27286": 1, + "27330": 1, + "27346": 1, + "27357": 1, + "27366": 1, + "27368": 1, + "27369": 1, + "27375": 2, + "27376": 1, + "27378": 1, + "27380": 2, + "27381": 2, + "27385": 1, + "27397": 2, + "27398": 1, + "27401": 2, + "27403": 1, + "27406": 1, + "27407": 1, + "27408": 1, + "27410": 1, + "27413": 2, + "27414": 2, + "27415": 1, + "27417": 1, + "27418": 1, + "27419": 1, + "27422": 1, + "27424": 1, + "27426": 2, + "27429": 1, + "27431": 1, + "27432": 2, + "27433": 1, + "27438": 1, + "27443": 1, + "27444": 1, + "27445": 1, + "27446": 1, + "27447": 1, + "27448": 2, + "27449": 2, + "27450": 2, + "27453": 2, + "27454": 3, + "27455": 1, + "27456": 1, + "27511": 1, + "27516": 1, + "27530": 1, + "27531": 1, + "27533": 1, + "27538": 1, + "27542": 1, + "27544": 1, + "27547": 1, + "27623": 2, + "27628": 1, + "27682": 1, + "27686": 1, + "27688": 1, + "27689": 1, + "27691": 1, + "27696": 1, + "27795": 1, + "27796": 1, + "27800": 1, + "27801": 1, + "27803": 1, + "27809": 1, + "27965": 2, + "27969": 3, + "27970": 1, + "27998": 2, + "27999": 1, + "28000": 1, + "28004": 1, + "28006": 1, + "28111": 1, + "28162": 1, + "28166": 1, + "28167": 1, + "28170": 1, + "28171": 1, + "28172": 1, + "28173": 1, + "28174": 2, + "28175": 2, + "28176": 2, + "28178": 1, + "28185": 1, + "28186": 1, + "28190": 1, + "28195": 1, + "28197": 1, + "28198": 1, + "28202": 2, + "28203": 1, + "28224": 1, + "28233": 2, + "28236": 1, + "28237": 1, + "28238": 1, + "28241": 1, + "28242": 1, + "28252": 2, + "28331": 1, + "28374": 1, + "28380": 2, + "28381": 1, + "28382": 1, + "28383": 1, + "28409": 1, + "28448": 1, + "28450": 1, + "28453": 1, + "28457": 1, + "28461": 1, + "28492": 1, + "28497": 1, + "28503": 1, + "28504": 1, + "28519": 1, + "28526": 2, + "28527": 1, + "28529": 1, + "28533": 1, + "28552": 1, + "28576": 1, + "28606": 1, + "28609": 1, + "28612": 1, + "28614": 1, + "28615": 1, + "28619": 1, + "28626": 1, + "28637": 1, + "28646": 1, + "28653": 1, + "28703": 1, + "28708": 3, + "28711": 1, + "28714": 3, + "28752": 1, + "28755": 1, + "28758": 1, + "28763": 2, + "28765": 2, + "28770": 1, + "28772": 1, + "28773": 1, + "28780": 1, + "28783": 1, + "28787": 1, + "28789": 1, + "28818": 1, + "28834": 1, + "28839": 1, + "28842": 2, + "28844": 2, + "28845": 3, + "28846": 1, + "28847": 1, + "28850": 1, + "28863": 1, + "28867": 2, + "28870": 1, + "28872": 1, + "28873": 1, + "28875": 1, + "28882": 1, + "28883": 1, + "28884": 1, + "28885": 1, + "28886": 1, + "28891": 1, + "28894": 1, + "28896": 2, + "28900": 1, + "28906": 1, + "28907": 1, + "28909": 1, + "28912": 1, + "28915": 1, + "28918": 1, + "28922": 2, + "28973": 1, + "28982": 1, + "28985": 1, + "28989": 1, + "28990": 1, + "28992": 1, + "29001": 1, + "29032": 1, + "29033": 1, + "29035": 1, + "29036": 1, + "29037": 1, + "29043": 1, + "29071": 1, + "29107": 1, + "29197": 2, + "29202": 1, + "29207": 1, + "29209": 1, + "29211": 2, + "29213": 1, + "29215": 1, + "29221": 1, + "29233": 1, + "29258": 1, + "29262": 1, + "29264": 2, + "29269": 2, + "29274": 1, + "29275": 2, + "29280": 1, + "29282": 1, + "29297": 2, + "29301": 1, + "29331": 1, + "29379": 1, + "29392": 1, + "29409": 1, + "29433": 1, + "29436": 1, + "29438": 1, + "29439": 1, + "29440": 2, + "29441": 1, + "29511": 2, + "29518": 1, + "29520": 1, + "29527": 1, + "29530": 1, + "29562": 1, + "29569": 1, + "29571": 1, + "29574": 1, + "29577": 1, + "29582": 1, + "29607": 1, + "29614": 1, + "29618": 1, + "29619": 1, + "29621": 1, + "29626": 1, + "29648": 1, + "29651": 1, + "29653": 1, + "29669": 1, + "29670": 1, + "29674": 1, + "29676": 1, + "29677": 1, + "29678": 2, + "29683": 1, + "29686": 1, + "29690": 2, + "29702": 1, + "29706": 1, + "29707": 1, + "29709": 2, + "29711": 1, + "29712": 1, + "29713": 3, + "29714": 1, + "29716": 1, + "29749": 1, + "29752": 2, + "29753": 1, + "29754": 3, + "29755": 1, + "29756": 1, + "29757": 2, + "29760": 1, + "29771": 1, + "29791": 4, + "29792": 1, + "29793": 1, + "29828": 2, + "29830": 2, + "29832": 1, + "29834": 1, + "29838": 1, + "29842": 1, + "29843": 1, + "29844": 1, + "29849": 1, + "29852": 1, + "29853": 1, + "29867": 1, + "29896": 1, + "29908": 1, + "29914": 1, + "29915": 1, + "29917": 1, + "29920": 2, + "29922": 3, + "29923": 2, + "29925": 1, + "29927": 1, + "29928": 1, + "29929": 1, + "29930": 1, + "29955": 1, + "29959": 2, + "29963": 1, + "29968": 1, + "29980": 1, + "29996": 1, + "30058": 1, + "30116": 1, + "30167": 1, + "30168": 1, + "30169": 1, + "30174": 2, + "30205": 1, + "30209": 1, + "30213": 2, + "30215": 1, + "30216": 1, + "30280": 1, + "30289": 1, + "30290": 2, + "30291": 1, + "30300": 1, + "30791": 1, + "30926": 1, + "31061": 1, + "31192": 1, + "31330": 1, + "31372": 1, + "31466": 1, + "31514": 1, + "31522": 1, + "31547": 1, + "31572": 1, + "31594": 1, + "31615": 2, + "31628": 1, + "31629": 1, + "31733": 1, + "31745": 1, + "31805": 1, + "31823": 1, + "31828": 1, + "31830": 1, + "31833": 2, + "31851": 1, + "31874": 1, + "31949": 1, + "31979": 1, + "32052": 1, + "32063": 1, + "32129": 1, + "32151": 1, + "32210": 1, + "32298": 1, + "32374": 1, + "32446": 1, + "32510": 1, + "32606": 1, + "32720": 1, + "32772": 2340 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333931266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88825a9668b0597e" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "5a9668b0" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_5_2.html b/autobahn/client/tungstenite_case_12_5_2.html new file mode 100644 index 0000000..9053178 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_2.html @@ -0,0 +1,391 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.5.2 : Pass - 135 ms @ 2020-09-07T18:50:35.956Z

+

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=375&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: gRwUPVIyCiuFWA6xtyK1/w==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Y/80roG6UR+Ii/mkyVUCb/lCRwg=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
11333
12112
14228
15345
16232
177119
18236
19595
205100
216126
22244
235115
24124
25375
26126
27254
28128
29387
30130
31393
32396
33399
363108
37137
38138
39278
41141
43143
44288
46146
47147
50150
51151
542108
553165
56156
59159
60160
62162
643192
65165
662132
67167
70170
71171
723216
7690068400
2571257
Total100272012
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
7321
10220
11444
12224
13678
14228
15690
16464
176102
18354
19595
20120
21363
22122
23246
24124
25250
26252
27381
28384
29387
32396
33133
34134
35270
37137
39139
40280
42142
43143
46146
47147
502100
513153
52152
55155
56156
58158
603180
61161
622124
63163
66166
67167
683204
7290064800
2521252
Total100268011
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333735266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88829f0d566b9ce5
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3966306435363662
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_5_2.json b/autobahn/client/tungstenite_case_12_5_2.json new file mode 100644 index 0000000..6638aa4 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_2.json @@ -0,0 +1,238 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 375, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 135, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=375&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: gRwUPVIyCiuFWA6xtyK1/w==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Y/80roG6UR+Ii/mkyVUCb/lCRwg=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.5.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "11": 3, + "12": 1, + "14": 2, + "15": 3, + "16": 2, + "17": 7, + "18": 2, + "19": 5, + "20": 5, + "21": 6, + "22": 2, + "23": 5, + "24": 1, + "25": 3, + "26": 1, + "27": 2, + "28": 1, + "29": 3, + "30": 1, + "31": 3, + "32": 3, + "33": 3, + "36": 3, + "37": 1, + "38": 1, + "39": 2, + "41": 1, + "43": 1, + "44": 2, + "46": 1, + "47": 1, + "50": 1, + "51": 1, + "54": 2, + "55": 3, + "56": 1, + "59": 1, + "60": 1, + "62": 1, + "64": 3, + "65": 1, + "66": 2, + "67": 1, + "70": 1, + "71": 1, + "72": 3, + "76": 900, + "257": 1 + }, + "started": "2020-09-07T18:50:35.956Z", + "trafficStats": { + "incomingCompressionRatio": 1.027296875, + "incomingOctetsAppLevel": 64000, + "incomingOctetsWebSocketLevel": 65747, + "incomingOctetsWireLevel": 71747, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.09125891675665809, + "outgoingCompressionRatio": 1.027421875, + "outgoingOctetsAppLevel": 64000, + "outgoingOctetsWebSocketLevel": 65755, + "outgoingOctetsWireLevel": 67755, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.030415937951486578, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "7": 3, + "10": 2, + "11": 4, + "12": 2, + "13": 6, + "14": 2, + "15": 6, + "16": 4, + "17": 6, + "18": 3, + "19": 5, + "20": 1, + "21": 3, + "22": 1, + "23": 2, + "24": 1, + "25": 2, + "26": 2, + "27": 3, + "28": 3, + "29": 3, + "32": 3, + "33": 1, + "34": 1, + "35": 2, + "37": 1, + "39": 1, + "40": 2, + "42": 1, + "43": 1, + "46": 1, + "47": 1, + "50": 2, + "51": 3, + "52": 1, + "55": 1, + "56": 1, + "58": 1, + "60": 3, + "61": 1, + "62": 2, + "63": 1, + "66": 1, + "67": 1, + "68": 3, + "72": 900, + "252": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333735266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88829f0d566b9ce5" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "9f0d566b" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_5_3.html b/autobahn/client/tungstenite_case_12_5_3.html new file mode 100644 index 0000000..7f0c7d4 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_3.html @@ -0,0 +1,300 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.5.3 : Fail - 1 ms @ 2020-09-07T18:50:36.092Z

+

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+ +

+ Case Outcome

Echo'ed message length differs from what I sent (got length 247, expected length 256).

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=376&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 7QxQ5/s3VnzLxGNs3fHqqQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 75GVQTFta3uTQqa9JBtMRxsjw44=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
2571257
2601260
Total3525
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2521252
2661266
Total3522
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333736266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 120.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882799ded457a75
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3739396465643435
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_5_3.json b/autobahn/client/tungstenite_case_12_5_3.json new file mode 100644 index 0000000..ccd1cfa --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_3.json @@ -0,0 +1,130 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "OK", + "case": 376, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=376&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 7QxQ5/s3VnzLxGNs3fHqqQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 75GVQTFta3uTQqa9JBtMRxsjw44=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.5.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Echo'ed message length differs from what I sent (got length 247, expected length 256).", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "260": 1 + }, + "started": "2020-09-07T18:50:36.092Z", + "trafficStats": null, + "txFrameStats": { + "2": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "266": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333736266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 120 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882799ded457a75" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "799ded45" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_5_4.html b/autobahn/client/tungstenite_case_12_5_4.html new file mode 100644 index 0000000..69f65d1 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_4.html @@ -0,0 +1,989 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.5.4 : Pass - 349 ms @ 2020-09-08T12:32:15.404Z

+

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=377&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: dvJscbDpRITtcesPzrmECA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 3zRxLXZSDL5ajvaXf8uWC0WeGdc=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
205100
217147
33133
35135
39139
40280
41282
42142
43286
443132
453135
46146
47294
49298
51151
523156
53153
553165
562112
582116
59159
60160
622124
63163
643192
652130
66166
682136
692138
70170
712142
72172
73173
75175
78178
81181
82182
832166
842168
85185
862172
88188
90190
912182
923276
93193
952190
97197
1001100
1021102
1042208
1051105
1072214
1092218
1102220
1161116
1201120
1212242
1261126
1341134
1371137
1431143
1461146
1511151
1552310
1561156
1582316
1601160
1651165
1681168
1851185
1903570
1911191
1961196
2041204
2051205
2101210
2121212
2131213
2141214
2172434
2223666
2251225
2301230
2431243
2451245
2541254
2571257
2661266
2691269
2731273
2751275
2781278
2831283
2861286
2882576
2921292
2951295
2961296
2971297
2992598
3081308
3111311
3141314
3182636
3251325
3281328
3292658
3451345
3481348
3501350
3521352
3562712
3571357
3601360
3621362
3631363
3651365
3661366
3671367
3801380
3831383
3911391
3921392
4132826
4151415
4181418
4231423
4261426
4341434
4351435
4451445
4641464
4671467
4751475
4811481
4871487
4941494
5081508
5111511
5371537
5431543
54621092
54721094
5611561
5631563
5651565
5701570
58031740
5821582
5861586
5921592
5961596
5971597
6001600
6071607
6111611
6171617
6241624
6331633
6401640
64131923
6491649
6501650
6521652
6571657
6581658
65921318
6611661
6721672
6961696
6981698
7021702
7071707
7151715
7181718
7201720
7211721
7271727
7331733
7351735
7371737
7381738
7391739
7401740
7431743
7441744
7461746
74721494
7511751
7531753
7541754
7601760
7671767
7701770
7711771
7751775
77621552
7781778
77921558
78621572
7921792
7941794
79521590
7971797
8031803
80821616
8101810
81421628
8171817
8181818
81921638
8201820
8241824
82521650
8271827
8281828
83121662
83221664
8341834
8351835
8361836
83832514
8391839
84221684
84332529
8451845
8461846
84821696
8491849
85054250
8511851
85221704
85321706
85421708
8571857
85921718
8601860
86121722
8621862
86321726
8651865
8661866
8671867
86821736
86921738
8701870
8711871
8741874
8761876
8771877
87832634
87965274
88021760
88143524
8821882
8831883
8841884
8851885
88621772
8871887
8901890
89121782
8921892
89321786
89532685
89721794
89943596
90221804
90354515
9041904
90532715
90721814
9121912
9131913
91432742
9151915
91732751
9191919
92054600
9211921
9221922
9231923
9241924
92521850
92721854
9281928
93021860
9311931
93321866
9341934
9351935
93621872
93732811
9381938
9391939
9401940
9411941
94243768
94321886
94432832
94521890
94743788
94921898
95021900
9511951
9521952
95421908
95621912
9581958
96021920
9631963
9641964
96521930
96621932
96721934
97421948
9751975
9771977
9781978
9801980
98321966
98421968
9871987
9901990
9941994
99821996
9991999
100411004
100722014
101011010
101111011
101311013
102122042
102233066
102511025
102622052
102733081
102911029
103233096
103511035
1038493511734
Total1002812287
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
16580
177119
29129
37137
38276
393117
40140
41282
423126
433129
44288
45290
484192
50150
51151
522104
544216
562112
57157
58158
592118
60160
612122
62162
642128
65165
662132
67167
68168
69169
71171
73173
74174
76176
782156
80180
81181
822164
83183
84184
85185
862172
872174
88188
89189
932186
94194
952190
992198
1002200
1012202
1052210
1061106
1071107
1081108
1121112
1131113
1181118
1231123
1241124
1311131
1331133
1391139
1431143
1451145
1471147
1521152
1552310
1592318
1631163
1661166
1741174
1811181
1862372
1871187
1921192
1941194
2021202
2081208
2101210
2131213
2171217
2181218
2202440
2221222
2241224
2251225
2271227
2331233
2391239
2441244
2501250
2521252
2672534
2741274
2781278
2791279
2821282
2831283
2841284
2881288
2941294
2971297
2981298
2991299
3041304
3061306
3071307
3111311
3161316
3171317
3231323
3241324
3252650
3341334
3441344
3481348
3501350
3522704
3552710
3561356
3611361
3641364
3651365
3691369
3721372
3821382
3831383
3872774
4092818
4111411
4141414
4191419
4221422
4312862
4421442
4611461
4631463
4711471
4821482
4841484
4901490
5041504
5071507
5331533
5391539
54221084
5431543
5451545
5571557
5591559
5611561
5661566
57621152
5771577
5781578
5821582
5901590
59321186
5961596
6041604
6071607
6141614
6221622
6281628
63621272
6381638
6391639
6451645
6461646
6481648
6531653
6541654
65521310
6571657
6681668
6921692
6941694
6981698
7031703
7111711
7141714
7161716
7171717
7231723
7291729
7311731
7341734
7351735
7361736
7381738
7391739
7401740
7421742
74321486
7471747
7491749
7501750
7561756
7631763
7661766
7671767
7711771
77221544
7761776
77721554
78221564
7881788
7911791
7921792
7931793
7941794
7991799
80421608
8061806
8101810
8131813
81421628
8151815
8161816
8171817
8201820
8211821
8221822
8231823
8241824
8271827
82821656
8301830
8311831
83221664
83432502
8351835
83932517
8401840
84121682
8421842
8441844
8451845
84621692
8471847
84832544
84921698
85021700
8511851
8531853
8541854
85521710
8561856
8571857
8581858
85921718
8601860
86221724
86321726
8641864
86521730
86621732
8671867
8701870
8721872
8731873
87432622
87543500
8761876
87754385
87821756
87921758
8811881
88221764
88321766
8861886
88721774
8881888
88921778
89132673
89321786
89532685
8971897
8981898
89943596
90021800
90143604
90321806
90921818
91021820
9111911
9121912
91321826
91521830
91654580
9171917
9181918
9191919
9201920
92121842
9231923
92632778
92721854
92921858
9301930
9311931
93221864
93332799
9351935
9361936
93732811
93821876
9391939
94032820
94143764
94343772
94521890
9461946
9471947
94821896
9501950
95121902
9521952
9551955
9561956
9571957
9601960
96132883
96221924
96321926
97021940
9731973
97421948
9761976
97921958
98021960
9851985
9871987
9901990
99421988
9951995
100011000
100322006
100611006
100711007
100911009
101722034
101833054
102111021
102222044
102333069
102511025
102833084
103111031
1034493509762
Total1002808941
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333737266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 240.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888201bba24d0253
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3031626261323464
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_5_4.json b/autobahn/client/tungstenite_case_12_5_4.json new file mode 100644 index 0000000..73f1209 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_4.json @@ -0,0 +1,836 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 377, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 349, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=377&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dvJscbDpRITtcesPzrmECA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 3zRxLXZSDL5ajvaXf8uWC0WeGdc=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.5.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "20": 5, + "21": 7, + "33": 1, + "35": 1, + "39": 1, + "40": 2, + "41": 2, + "42": 1, + "43": 2, + "44": 3, + "45": 3, + "46": 1, + "47": 2, + "49": 2, + "51": 1, + "52": 3, + "53": 1, + "55": 3, + "56": 2, + "58": 2, + "59": 1, + "60": 1, + "62": 2, + "63": 1, + "64": 3, + "65": 2, + "66": 1, + "68": 2, + "69": 2, + "70": 1, + "71": 2, + "72": 1, + "73": 1, + "75": 1, + "78": 1, + "81": 1, + "82": 1, + "83": 2, + "84": 2, + "85": 1, + "86": 2, + "88": 1, + "90": 1, + "91": 2, + "92": 3, + "93": 1, + "95": 2, + "97": 1, + "100": 1, + "102": 1, + "104": 2, + "105": 1, + "107": 2, + "109": 2, + "110": 2, + "116": 1, + "120": 1, + "121": 2, + "126": 1, + "134": 1, + "137": 1, + "143": 1, + "146": 1, + "151": 1, + "155": 2, + "156": 1, + "158": 2, + "160": 1, + "165": 1, + "168": 1, + "185": 1, + "190": 3, + "191": 1, + "196": 1, + "204": 1, + "205": 1, + "210": 1, + "212": 1, + "213": 1, + "214": 1, + "217": 2, + "222": 3, + "225": 1, + "230": 1, + "243": 1, + "245": 1, + "254": 1, + "257": 1, + "266": 1, + "269": 1, + "273": 1, + "275": 1, + "278": 1, + "283": 1, + "286": 1, + "288": 2, + "292": 1, + "295": 1, + "296": 1, + "297": 1, + "299": 2, + "308": 1, + "311": 1, + "314": 1, + "318": 2, + "325": 1, + "328": 1, + "329": 2, + "345": 1, + "348": 1, + "350": 1, + "352": 1, + "356": 2, + "357": 1, + "360": 1, + "362": 1, + "363": 1, + "365": 1, + "366": 1, + "367": 1, + "380": 1, + "383": 1, + "391": 1, + "392": 1, + "413": 2, + "415": 1, + "418": 1, + "423": 1, + "426": 1, + "434": 1, + "435": 1, + "445": 1, + "464": 1, + "467": 1, + "475": 1, + "481": 1, + "487": 1, + "494": 1, + "508": 1, + "511": 1, + "537": 1, + "543": 1, + "546": 2, + "547": 2, + "561": 1, + "563": 1, + "565": 1, + "570": 1, + "580": 3, + "582": 1, + "586": 1, + "592": 1, + "596": 1, + "597": 1, + "600": 1, + "607": 1, + "611": 1, + "617": 1, + "624": 1, + "633": 1, + "640": 1, + "641": 3, + "649": 1, + "650": 1, + "652": 1, + "657": 1, + "658": 1, + "659": 2, + "661": 1, + "672": 1, + "696": 1, + "698": 1, + "702": 1, + "707": 1, + "715": 1, + "718": 1, + "720": 1, + "721": 1, + "727": 1, + "733": 1, + "735": 1, + "737": 1, + "738": 1, + "739": 1, + "740": 1, + "743": 1, + "744": 1, + "746": 1, + "747": 2, + "751": 1, + "753": 1, + "754": 1, + "760": 1, + "767": 1, + "770": 1, + "771": 1, + "775": 1, + "776": 2, + "778": 1, + "779": 2, + "786": 2, + "792": 1, + "794": 1, + "795": 2, + "797": 1, + "803": 1, + "808": 2, + "810": 1, + "814": 2, + "817": 1, + "818": 1, + "819": 2, + "820": 1, + "824": 1, + "825": 2, + "827": 1, + "828": 1, + "831": 2, + "832": 2, + "834": 1, + "835": 1, + "836": 1, + "838": 3, + "839": 1, + "842": 2, + "843": 3, + "845": 1, + "846": 1, + "848": 2, + "849": 1, + "850": 5, + "851": 1, + "852": 2, + "853": 2, + "854": 2, + "857": 1, + "859": 2, + "860": 1, + "861": 2, + "862": 1, + "863": 2, + "865": 1, + "866": 1, + "867": 1, + "868": 2, + "869": 2, + "870": 1, + "871": 1, + "874": 1, + "876": 1, + "877": 1, + "878": 3, + "879": 6, + "880": 2, + "881": 4, + "882": 1, + "883": 1, + "884": 1, + "885": 1, + "886": 2, + "887": 1, + "890": 1, + "891": 2, + "892": 1, + "893": 2, + "895": 3, + "897": 2, + "899": 4, + "902": 2, + "903": 5, + "904": 1, + "905": 3, + "907": 2, + "912": 1, + "913": 1, + "914": 3, + "915": 1, + "917": 3, + "919": 1, + "920": 5, + "921": 1, + "922": 1, + "923": 1, + "924": 1, + "925": 2, + "927": 2, + "928": 1, + "930": 2, + "931": 1, + "933": 2, + "934": 1, + "935": 1, + "936": 2, + "937": 3, + "938": 1, + "939": 1, + "940": 1, + "941": 1, + "942": 4, + "943": 2, + "944": 3, + "945": 2, + "947": 4, + "949": 2, + "950": 2, + "951": 1, + "952": 1, + "954": 2, + "956": 2, + "958": 1, + "960": 2, + "963": 1, + "964": 1, + "965": 2, + "966": 2, + "967": 2, + "974": 2, + "975": 1, + "977": 1, + "978": 1, + "980": 1, + "983": 2, + "984": 2, + "987": 1, + "990": 1, + "994": 1, + "998": 2, + "999": 1, + "1004": 1, + "1007": 2, + "1010": 1, + "1011": 1, + "1013": 1, + "1021": 2, + "1022": 3, + "1025": 1, + "1026": 2, + "1027": 3, + "1029": 1, + "1032": 3, + "1035": 1, + "1038": 493 + }, + "started": "2020-09-08T12:32:15.404Z", + "trafficStats": { + "incomingCompressionRatio": 0.78537890625, + "incomingOctetsAppLevel": 1024000, + "incomingOctetsWebSocketLevel": 804228, + "incomingOctetsWireLevel": 812022, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.009691281576866263, + "outgoingCompressionRatio": 0.7860244140625, + "outgoingOctetsAppLevel": 1024000, + "outgoingOctetsWebSocketLevel": 804889, + "outgoingOctetsWireLevel": 808685, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.004716178255635249, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "16": 5, + "17": 7, + "29": 1, + "37": 1, + "38": 2, + "39": 3, + "40": 1, + "41": 2, + "42": 3, + "43": 3, + "44": 2, + "45": 2, + "48": 4, + "50": 1, + "51": 1, + "52": 2, + "54": 4, + "56": 2, + "57": 1, + "58": 1, + "59": 2, + "60": 1, + "61": 2, + "62": 1, + "64": 2, + "65": 1, + "66": 2, + "67": 1, + "68": 1, + "69": 1, + "71": 1, + "73": 1, + "74": 1, + "76": 1, + "78": 2, + "80": 1, + "81": 1, + "82": 2, + "83": 1, + "84": 1, + "85": 1, + "86": 2, + "87": 2, + "88": 1, + "89": 1, + "93": 2, + "94": 1, + "95": 2, + "99": 2, + "100": 2, + "101": 2, + "105": 2, + "106": 1, + "107": 1, + "108": 1, + "112": 1, + "113": 1, + "118": 1, + "123": 1, + "124": 1, + "131": 1, + "133": 1, + "139": 1, + "143": 1, + "145": 1, + "147": 1, + "152": 1, + "155": 2, + "159": 2, + "163": 1, + "166": 1, + "174": 1, + "181": 1, + "186": 2, + "187": 1, + "192": 1, + "194": 1, + "202": 1, + "208": 1, + "210": 1, + "213": 1, + "217": 1, + "218": 1, + "220": 2, + "222": 1, + "224": 1, + "225": 1, + "227": 1, + "233": 1, + "239": 1, + "244": 1, + "250": 1, + "252": 1, + "267": 2, + "274": 1, + "278": 1, + "279": 1, + "282": 1, + "283": 1, + "284": 1, + "288": 1, + "294": 1, + "297": 1, + "298": 1, + "299": 1, + "304": 1, + "306": 1, + "307": 1, + "311": 1, + "316": 1, + "317": 1, + "323": 1, + "324": 1, + "325": 2, + "334": 1, + "344": 1, + "348": 1, + "350": 1, + "352": 2, + "355": 2, + "356": 1, + "361": 1, + "364": 1, + "365": 1, + "369": 1, + "372": 1, + "382": 1, + "383": 1, + "387": 2, + "409": 2, + "411": 1, + "414": 1, + "419": 1, + "422": 1, + "431": 2, + "442": 1, + "461": 1, + "463": 1, + "471": 1, + "482": 1, + "484": 1, + "490": 1, + "504": 1, + "507": 1, + "533": 1, + "539": 1, + "542": 2, + "543": 1, + "545": 1, + "557": 1, + "559": 1, + "561": 1, + "566": 1, + "576": 2, + "577": 1, + "578": 1, + "582": 1, + "590": 1, + "593": 2, + "596": 1, + "604": 1, + "607": 1, + "614": 1, + "622": 1, + "628": 1, + "636": 2, + "638": 1, + "639": 1, + "645": 1, + "646": 1, + "648": 1, + "653": 1, + "654": 1, + "655": 2, + "657": 1, + "668": 1, + "692": 1, + "694": 1, + "698": 1, + "703": 1, + "711": 1, + "714": 1, + "716": 1, + "717": 1, + "723": 1, + "729": 1, + "731": 1, + "734": 1, + "735": 1, + "736": 1, + "738": 1, + "739": 1, + "740": 1, + "742": 1, + "743": 2, + "747": 1, + "749": 1, + "750": 1, + "756": 1, + "763": 1, + "766": 1, + "767": 1, + "771": 1, + "772": 2, + "776": 1, + "777": 2, + "782": 2, + "788": 1, + "791": 1, + "792": 1, + "793": 1, + "794": 1, + "799": 1, + "804": 2, + "806": 1, + "810": 1, + "813": 1, + "814": 2, + "815": 1, + "816": 1, + "817": 1, + "820": 1, + "821": 1, + "822": 1, + "823": 1, + "824": 1, + "827": 1, + "828": 2, + "830": 1, + "831": 1, + "832": 2, + "834": 3, + "835": 1, + "839": 3, + "840": 1, + "841": 2, + "842": 1, + "844": 1, + "845": 1, + "846": 2, + "847": 1, + "848": 3, + "849": 2, + "850": 2, + "851": 1, + "853": 1, + "854": 1, + "855": 2, + "856": 1, + "857": 1, + "858": 1, + "859": 2, + "860": 1, + "862": 2, + "863": 2, + "864": 1, + "865": 2, + "866": 2, + "867": 1, + "870": 1, + "872": 1, + "873": 1, + "874": 3, + "875": 4, + "876": 1, + "877": 5, + "878": 2, + "879": 2, + "881": 1, + "882": 2, + "883": 2, + "886": 1, + "887": 2, + "888": 1, + "889": 2, + "891": 3, + "893": 2, + "895": 3, + "897": 1, + "898": 1, + "899": 4, + "900": 2, + "901": 4, + "903": 2, + "909": 2, + "910": 2, + "911": 1, + "912": 1, + "913": 2, + "915": 2, + "916": 5, + "917": 1, + "918": 1, + "919": 1, + "920": 1, + "921": 2, + "923": 1, + "926": 3, + "927": 2, + "929": 2, + "930": 1, + "931": 1, + "932": 2, + "933": 3, + "935": 1, + "936": 1, + "937": 3, + "938": 2, + "939": 1, + "940": 3, + "941": 4, + "943": 4, + "945": 2, + "946": 1, + "947": 1, + "948": 2, + "950": 1, + "951": 2, + "952": 1, + "955": 1, + "956": 1, + "957": 1, + "960": 1, + "961": 3, + "962": 2, + "963": 2, + "970": 2, + "973": 1, + "974": 2, + "976": 1, + "979": 2, + "980": 2, + "985": 1, + "987": 1, + "990": 1, + "994": 2, + "995": 1, + "1000": 1, + "1003": 2, + "1006": 1, + "1007": 1, + "1009": 1, + "1017": 2, + "1018": 3, + "1021": 1, + "1022": 2, + "1023": 3, + "1025": 1, + "1028": 3, + "1031": 1, + "1034": 493 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333737266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 240 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888201bba24d0253" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "01bba24d" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_5_5.html b/autobahn/client/tungstenite_case_12_5_5.html new file mode 100644 index 0000000..904f604 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_5.html @@ -0,0 +1,310 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.5.5 : Fail - 3 ms @ 2020-09-07T18:50:36.096Z

+

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Echo'ed message length differs from what I sent (got length 4087, expected length 4096).

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=378&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: yNbZbVt3ooM2SDug8pj7dw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: q6N0Tsf462ZvR+lRGgWtCMvHCAc=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
348813488
363713637
391313913
396713967
403414034
410014100
Total823404
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
348413484
363213632
391113911
396313963
403014030
410614106
Total823382
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
26
81
Total7
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
26
81
Total7
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333738266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882db351b8ad8dd
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6462333531623861
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_5_5.json b/autobahn/client/tungstenite_case_12_5_5.json new file mode 100644 index 0000000..06f1317 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_5.json @@ -0,0 +1,140 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "OK", + "case": 378, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 3, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=378&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: yNbZbVt3ooM2SDug8pj7dw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: q6N0Tsf462ZvR+lRGgWtCMvHCAc=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.5.5", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Echo'ed message length differs from what I sent (got length 4087, expected length 4096).", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 6, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "3488": 1, + "3637": 1, + "3913": 1, + "3967": 1, + "4034": 1, + "4100": 1 + }, + "started": "2020-09-07T18:50:36.096Z", + "trafficStats": null, + "txFrameStats": { + "2": 6, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "3484": 1, + "3632": 1, + "3911": 1, + "3963": 1, + "4030": 1, + "4106": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333738266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882db351b8ad8dd" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "db351b8a" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_5_6.html b/autobahn/client/tungstenite_case_12_5_6.html new file mode 100644 index 0000000..d48fd7e --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_6.html @@ -0,0 +1,375 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.5.6 : Fail - 43 ms @ 2020-09-07T18:50:36.101Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Echo'ed message length differs from what I sent (got length 8191, expected length 8192).

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=379&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 5CnQFEYaheh1sDXZCnYO9w==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: GSixg53G5MtFjehWU5nDUUXOKrg=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
738317383
747817478
757217572
766117661
766917669
774517745
777617776
779817798
780217802
781317813
781717817
782117821
782417824
782917829
783017830
783717837
784317843
784517845
785217852
785317853
7861215722
786217862
787117871
790317903
791117911
791717917
791817918
793417934
795117951
798817988
801618016
801818018
802218022
803818038
805418054
806118061
807118071
807218072
812718127
819618196
Total43322965
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
737917379
747217472
757517575
765917659
767117671
774317743
777617776
7801215602
781117811
7822215644
782317823
782917829
783117831
783617836
784017840
784117841
7849215698
7857215714
785817858
787417874
789917899
790917909
791517915
791917919
792717927
795117951
798417984
801218012
801318013
802518025
803518035
805318053
805818058
806718067
806818068
812318123
819518195
Total43322885
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
241
81
Total42
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
241
81
Total42
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333739266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882997f1e569a97
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3939376631653536
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_5_6.json b/autobahn/client/tungstenite_case_12_5_6.json new file mode 100644 index 0000000..a99381c --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_6.json @@ -0,0 +1,205 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "OK", + "case": 379, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 43, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=379&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 5CnQFEYaheh1sDXZCnYO9w==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: GSixg53G5MtFjehWU5nDUUXOKrg=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.5.6", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Echo'ed message length differs from what I sent (got length 8191, expected length 8192).", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 41, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "7383": 1, + "7478": 1, + "7572": 1, + "7661": 1, + "7669": 1, + "7745": 1, + "7776": 1, + "7798": 1, + "7802": 1, + "7813": 1, + "7817": 1, + "7821": 1, + "7824": 1, + "7829": 1, + "7830": 1, + "7837": 1, + "7843": 1, + "7845": 1, + "7852": 1, + "7853": 1, + "7861": 2, + "7862": 1, + "7871": 1, + "7903": 1, + "7911": 1, + "7917": 1, + "7918": 1, + "7934": 1, + "7951": 1, + "7988": 1, + "8016": 1, + "8018": 1, + "8022": 1, + "8038": 1, + "8054": 1, + "8061": 1, + "8071": 1, + "8072": 1, + "8127": 1, + "8196": 1 + }, + "started": "2020-09-07T18:50:36.101Z", + "trafficStats": null, + "txFrameStats": { + "2": 41, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "7379": 1, + "7472": 1, + "7575": 1, + "7659": 1, + "7671": 1, + "7743": 1, + "7776": 1, + "7801": 2, + "7811": 1, + "7822": 2, + "7823": 1, + "7829": 1, + "7831": 1, + "7836": 1, + "7840": 1, + "7841": 1, + "7849": 2, + "7857": 2, + "7858": 1, + "7874": 1, + "7899": 1, + "7909": 1, + "7915": 1, + "7919": 1, + "7927": 1, + "7951": 1, + "7984": 1, + "8012": 1, + "8013": 1, + "8025": 1, + "8035": 1, + "8053": 1, + "8058": 1, + "8067": 1, + "8068": 1, + "8123": 1, + "8195": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333739266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882997f1e569a97" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "997f1e56" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_5_7.html b/autobahn/client/tungstenite_case_12_5_7.html new file mode 100644 index 0000000..8fc8aa3 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_7.html @@ -0,0 +1,1848 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.5.7 : Pass - 1683 ms @ 2020-09-07T18:50:36.145Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=380&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 19vmn6ocO9jVkQqpt8TGjw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 5HmIdarXL128r0BsIQ5HEcokfOg=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
6861686
6991699
7071707
7371737
7501750
7551755
7771777
8711871
9781978
103311033
103611036
103711037
104211042
104911049
105411054
115011150
115211152
116911169
118911189
119811198
121311213
125411254
126411264
126711267
127211272
127511275
129611296
130311303
131122622
131511315
132311323
132711327
134111341
134911349
136011360
138511385
140311403
143111431
143711437
146211462
146511465
147411474
147911479
148622972
149611496
149911499
150011500
150211502
150711507
150811508
151111511
151811518
152611526
152711527
154011540
154311543
154511545
155711557
156011560
157411574
158811588
160911609
163511635
164611646
165511655
165611656
169411694
172311723
173411734
178211782
185011850
188811888
193911939
197511975
199411994
208212082
211112111
215112151
215412154
220412204
226612266
226812268
233612336
234312343
236912369
246812468
248612486
251312513
258212582
260812608
261112611
264112641
267312673
281212812
281412814
284012840
287012870
289412894
293712937
294012940
294812948
297112971
302113021
302326046
302813028
303013030
303213032
305413054
306313063
309113091
310313103
310713107
312513125
318613186
320513205
321613216
323113231
326413264
330113301
341113411
341413414
347613476
348013480
350913509
358513585
360813608
365513655
381613816
389513895
391713917
393213932
397613976
400914009
404414044
417314173
418914189
419014190
421414214
423528470
428814288
429928598
430814308
433914339
435914359
437614376
444014440
444214442
444314443
446314463
449614496
451314513
451414514
454814548
463614636
467414674
472214722
478614786
480314803
491514915
501015010
504115041
504215042
521915219
526315263
534815348
539215392
552215522
558215582
570115701
570915709
572415724
577115771
599615996
601716017
610716107
629116291
636116361
639416394
641916419
646616466
652516525
694516945
712517125
716017160
728517285
729417294
741317413
773517735
776817768
779917799
790017900
829018290
832318323
844118441
857218572
863018630
867418674
884318843
891818918
895218952
912519125
919719197
920219202
921519215
922819228
926119261
929519295
932519325
943519435
946519465
951919519
954319543
956719567
970819708
974319743
998619986
999519995
10013110013
10195110195
10204110204
10223110223
10228110228
10408110408
10434110434
10445110445
10475110475
10477110477
10487110487
10509110509
10513110513
10543110543
10556110556
10564110564
10582110582
10595110595
10601110601
10676110676
10684110684
10697110697
10711110711
10717110717
10763110763
10775110775
10786110786
10790110790
10793110793
10805110805
10806110806
10822221644
10843110843
10850110850
10856110856
10858110858
10873110873
10896110896
10899110899
10920221840
10921110921
10922110922
10932110932
10933110933
10938110938
10940110940
10941110941
10976110976
10983110983
10985110985
11001111001
11017111017
11026111026
11029111029
11036111036
11053222106
11055111055
11063111063
11070111070
11072111072
11074111074
11088111088
11110111110
11121111121
11177111177
11209111209
11211111211
11222111222
11226111226
11240111240
11268111268
11307111307
11321111321
11323111323
11332111332
11341111341
11358111358
11360111360
11371111371
11373111373
11378111378
11384111384
11402111402
11417111417
11422111422
11424111424
11425111425
11430111430
11433111433
11461111461
11465111465
11469111469
11492111492
11500111500
11510111510
11513111513
11535111535
11542111542
11547111547
11556111556
11565111565
11588223176
11590111590
11592111592
11594111594
11596111596
11597111597
11623111623
11647111647
11658111658
11660223320
11679111679
11680111680
11682111682
11691111691
11692111692
11712111712
11755111755
11791111791
11800111800
11814111814
11819111819
11859111859
11867111867
11894111894
11913111913
12001112001
12362112362
12968112968
13246113246
13708113708
13996113996
14325114325
14627114627
14793114793
14856114856
14891114891
14924114924
14928114928
14965114965
14982114982
14983114983
15044115044
15070115070
15071115071
15074115074
15082115082
15091115091
15097115097
15107115107
15150115150
15166115166
15187115187
15188115188
15222115222
15224115224
15314115314
15330115330
15331115331
15356115356
15357115357
15360115360
15363115363
15364115364
15365230730
15366346098
15368230736
15371230742
15373115373
15374115374
15378115378
15384115384
15389115389
15445115445
15458115458
15460115460
15463115463
15464115464
15465115465
15466115466
15467115467
15481115481
15489115489
15490230980
15491115491
15492230984
15503231006
15506231012
15507231014
15508115508
15517115517
15519115519
15524115524
15525115525
15527115527
15528115528
15534231068
15536115536
15537231074
15539115539
15541115541
15544115544
15545115545
15547115547
15551115551
15553115553
15555231110
15558231116
15560115560
15562115562
15565231130
15566346698
15570115570
15573231146
15575115575
15576346728
15577346731
15580115580
15581577905
15582231164
15583231166
15585231170
15586231172
15587115587
15590115590
15591115591
15592231184
15593231186
15594231188
15595231190
15596346788
15597346791
15599115599
15600115600
15601231202
15602462408
15603115603
15604346812
15605115605
15607231214
15608115608
15609346827
15610346830
15616115616
15619115619
15620346860
15621115621
15624115624
15625231250
15628115628
15633115633
15636115636
15639231278
15640115640
15641115641
15642115642
15643231286
15644115644
15645115645
15646115646
15647115647
15648115648
15652115652
15655231310
15656115656
15657115657
15664115664
15666231332
15667578335
15668231336
15669115669
15671115671
15672231344
15674231348
15676347028
15677231354
15678462712
15680115680
15682115682
15684231368
15690115690
15692115692
15701231402
15702115702
15703231406
15711115711
15713115713
15714231428
15715231430
15716231432
15718231436
15719347157
15721347163
15723115723
15724115724
15725347175
15727115727
15728231456
15729231458
15732462928
15736231472
15737115737
15743115743
15744115744
15745347235
15747231494
15749115749
15751347253
15752231504
15754231508
15755231510
15759115759
15760115760
15763231526
15764115764
15767231534
15768231536
15769347307
15770115770
15771231542
15772115772
15777231554
15778115778
15779115779
15780115780
15782115782
15783231566
15784115784
15785115785
15787347361
15788231576
15789115789
15790115790
15792115792
15793115793
15796115796
15797115797
15798231596
15799231598
158007110600
15801231602
15802347406
15803347409
15804115804
15805115805
15806115806
15808231616
15809347427
15810231620
15812694872
15813347439
15814463256
15815115815
15816115816
15817115817
15818231636
15820115820
15821115821
15822231644
15823231646
15824231648
15825115825
15826115826
15827115827
15835231670
15836115836
15837347511
15838115838
15839115839
15840231680
15841115841
15842115842
15845231690
15846115846
15847347541
15848463392
15850347550
15851115851
15854115854
15855231710
15857231714
15858231716
15859231718
15860463440
15861231722
15862231724
15863231726
15864463456
15865231730
15866347598
15867347601
15868115868
15869231738
15870347610
15873115873
15875115875
15882115882
15883115883
15884347652
15885115885
15894115894
15895115895
15896231792
15897231794
15904115904
15906115906
15907579535
15910115910
15911115911
15912231824
15916115916
15921231842
15924115924
15929231858
15934115934
15935115935
15936115936
15939347817
15940115940
15944115944
15948115948
15949115949
15953115953
15954115954
15957115957
15958115958
15959115959
15963115963
15968115968
15969115969
15973115973
15974115974
15978115978
15983231966
15987231974
15989115989
15990115990
15991231982
15993115993
15995231990
15996347988
16001116001
16002116002
16004116004
16006116006
16007116007
16008232016
16009116009
16010116010
16012348036
16014348042
16019116019
16020116020
16032232064
16034116034
16036232072
16038348114
16041232082
16043116043
16045116045
16046232092
16047232094
16049116049
16051116051
16052232104
16054232108
16057348171
16058116058
16059116059
16060232120
16061116061
16063116063
16065116065
16066116066
16067232134
16068116068
16069232138
16070116070
16071116071
16072348216
16074116074
16076232152
16077116077
16079116079
16080116080
16082348246
16083232166
16085116085
16089348267
16093116093
16095116095
16098232196
16109116109
16110232220
16111116111
16112116112
16113116113
16114232228
16115348345
16116232232
16117116117
16118116118
16119116119
16120116120
16121116121
16122116122
16123116123
16125116125
16126116126
16130116130
16131116131
16137116137
16139116139
16140232280
16141116141
16142116142
16143116143
16147116147
16149116149
16150116150
16156232312
16163116163
16166116166
16168116168
16170116170
16171116171
16172116172
16179116179
16182116182
16184232368
16188116188
16191116191
16192116192
16193116193
16194116194
16198116198
16200116200
16216116216
16233116233
16240116240
16242116242
16270116270
16295116295
16324116324
16326116326
16330116330
16332116332
Total100212497908
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
6921692
7131713
7151715
7451745
7631763
7671767
7841784
8821882
9891989
108711087
108911089
110211102
110811108
110911109
112511125
115711157
120511205
122411224
125811258
126711267
130511305
132211322
133111331
135322706
136011360
136711367
136811368
138211382
138311383
138811388
139211392
139611396
139711397
141011410
141811418
143711437
143911439
145511455
147211472
148111481
148811488
148911489
150311503
150411504
151111511
153111531
153411534
154411544
154511545
155711557
155911559
156111561
156911569
157111571
157811578
158511585
159511595
159811598
160711607
161111611
161911619
162711627
163311633
165311653
169511695
172011720
172611726
175111751
178111781
180311803
183911839
190911909
195211952
195411954
203712037
204812048
210212102
216612166
218112181
220512205
220812208
229212292
233612336
235912359
238012380
239012390
252212522
256712567
259712597
262512625
265312653
267412674
269512695
273012730
286212862
288312883
289212892
289412894
292912929
297112971
299612996
307613076
308113081
309213092
310613106
318113181
318413184
318613186
319613196
320313203
320613206
320913209
321213212
322913229
323313233
326213262
328313283
328413284
332813328
335313353
338113381
344413444
348013480
348413484
351913519
356213562
363513635
366613666
371013710
383413834
392913929
397013970
401414014
404014040
409014090
413414134
419714197
419814198
420514205
422114221
427814278
427914279
432214322
434514345
435014350
435214352
436014360
441314413
445214452
445414454
445914459
447814478
449014490
451014510
453214532
459014590
464414644
473414734
476214762
477214772
482314823
489914899
500315003
504615046
507715077
508415084
526215262
538315383
538815388
544015440
554715547
561915619
573115731
573515735
576715767
583115831
604716047
611316113
616616166
634916349
640416404
642916429
643116431
652116521
655816558
698916989
7165214330
732217322
737917379
741117411
779617796
781717817
783917839
790317903
832518325
836918369
844218442
860718607
863118631
869118691
883918839
891418914
902319023
912119121
919319193
919819198
922419224
924719247
925719257
929119291
932119321
944319443
946119461
951519515
957219572
961019610
970819708
973919739
999019990
10009110009
10017110017
10208110208
10223110223
10224110224
10260110260
10404110404
10434110434
10441110441
10470110470
10476110476
10483110483
10503110503
10509110509
10544110544
10550110550
10557110557
10578110578
10592110592
10596110596
10675110675
10680110680
10693110693
10707110707
10713110713
10764110764
10767110767
10782110782
10787110787
10789110789
10799110799
10803110803
10817110817
10819110819
10839110839
10846110846
10854110854
10858110858
10869110869
10893110893
10898110898
10916221832
10917110917
10920110920
10929221858
10937221874
10939110939
10974110974
10981110981
10983110983
10998110998
11015111015
11024111024
11026111026
11031111031
11049222098
11051111051
11065111065
11066111066
11068111068
11070111070
11084111084
11107111107
11120111120
11173111173
11205111205
11206111206
11219111219
11222111222
11261111261
11303111303
11312111312
11317111317
11322111322
11330111330
11337111337
11354111354
11356111356
11367111367
11372111372
11374111374
11386111386
11398111398
11413111413
11418111418
11421111421
11422111422
11426111426
11429111429
11457111457
11461111461
11465111465
11488111488
11495111495
11506111506
11507111507
11531111531
11542111542
11549111549
11552111552
11561111561
11584111584
11586111586
11590111590
11591111591
11592223184
11593111593
11619111619
11643111643
11656111656
11660111660
11662111662
11680111680
11683111683
11685111685
11687111687
11694111694
11708111708
11756111756
11787111787
11802111802
11810111810
11815111815
11855111855
11863111863
11894111894
11948111948
12009112009
12398112398
12989112989
13246113246
13723113723
13992113992
14330114330
14623114623
14787114787
14851114851
14884114884
14932114932
14936114936
14972114972
14977229954
15048115048
15064115064
15065115065
15070115070
15090115090
15096115096
15099115099
15113115113
15161115161
15170115170
15191230382
15227115227
15228115228
15318115318
15342230684
15358115358
15360115360
15363115363
15366115366
15367230734
15368230736
15369115369
15370115370
15371115371
15373115373
15374115374
15375230750
15378115378
15380115380
15383115383
15391115391
15447115447
15460115460
15463115463
15464115464
15465230930
15472230944
15478115478
15485115485
15489115489
15490115490
15491115491
15494115494
15496115496
15502231004
15506115506
15507231014
15508115508
15509115509
15519115519
15520115520
15526115526
15527115527
15529115529
15530115530
15535115535
15539115539
15540115540
15543346629
15546231092
15547115547
15549115549
15550115550
15555115555
15558115558
15559115559
15560115560
15561115561
15562115562
15563115563
15567231134
15568231136
15571115571
15572115572
15574346722
15575115575
15576346728
15580115580
15581231162
15582115582
15583577915
15584115584
15585346755
15586346758
15589115589
15593231186
15594462376
15595346785
15596231192
15598115598
15599346797
15600115600
15601346803
15603115603
15604231208
15605115605
156067109242
15608346824
15609115609
15610231220
15611115611
15612115612
15614115614
15617231234
15618231236
15620115620
15625115625
15626231252
15627115627
15629115629
15635115635
15636115636
15638115638
15640231280
15644115644
15646346938
15647231294
15648231296
15649115649
15652115652
15655115655
15656231312
15660115660
15661346983
15662115662
15664115664
15666346998
15667115667
15668115668
15669231338
15671115671
15673115673
15674115674
15675115675
15676231352
15678115678
15680347040
15681115681
15682231364
15683231366
15684115684
15692115692
15695115695
15699115699
15701115701
15702231404
15705115705
15709115709
15710347130
15713115713
15716115716
15717115717
15718462872
15720347160
15721231442
15724231448
15726115726
15727347181
15729115729
15730347190
15731115731
15732347196
15733115733
15734115734
15741231482
15743115743
15744347232
15747115747
15748462992
15750115750
15752231504
15753115753
15754115754
15755115755
15757115757
15758115758
15759115759
15760115760
15761115761
15762115762
15764115764
15765115765
15766115766
15767115767
15768115768
15769115769
15770231540
15771115771
15772115772
15774115774
15775347325
15776115776
15778115778
15779115779
15782115782
15783115783
15784231568
15785115785
15786231572
15789115789
15790347370
15792231584
15794115794
15795115795
15796115796
15799115799
15800463200
15801579005
15802347406
15803463212
15804115804
15805231610
15806347418
15807115807
15808115808
15810347430
15811694866
15812231624
15813579065
15815231630
15816115816
15817347451
15818231636
15819115819
15820231640
15823115823
15824231648
15825231650
15831231662
15832115832
15833115833
15834115834
15835115835
15836231672
15838115838
15839231678
15841347523
15842115842
15843115843
15844347532
15846231692
15847231694
15849231698
15850115850
15851115851
15852231704
15854347562
15855115855
15856231712
15857231714
15858231716
15859231718
15860231720
15861463444
15862231724
15863115863
15864231728
15865231730
15866347598
15867231734
15869231738
15870115870
15871231742
15872115872
15878115878
15879115879
15880115880
15882115882
15883231766
15890115890
15895115895
15897231794
15898231796
15900115900
15903115903
15907115907
15908115908
15909115909
15910115910
15911231822
15913115913
15915231830
15916231832
15918115918
15920115920
15924115924
15931115931
15932115932
15934115934
15935115935
15936115936
15938115938
15940231880
15944115944
15945115945
15946115946
15950115950
15952115952
15953115953
15954115954
15955115955
15959115959
15965115965
15969231938
15970115970
15978115978
15979231958
15983231966
15985115985
15987231974
15989115989
15990115990
15991115991
15992231984
15994115994
15995115995
15997115997
15998115998
16000116000
16002116002
16004116004
16005116005
16006116006
16008348024
16010348030
16011116011
16012116012
16015116015
16016116016
16028232056
16030116030
16032232064
16034232068
16035116035
16037232074
16039116039
16041116041
16042232084
16043116043
16044116044
16045116045
16047116047
16048232096
16050232100
16053348159
16054116054
16056232112
16057232114
16059116059
16062232124
16063232126
16064116064
16065116065
16066116066
16067116067
16068348204
16069116069
16070116070
16072232144
16073116073
16075116075
16076116076
16078232156
16079232158
16081116081
16082116082
16085348255
16089116089
16091116091
16094232188
16105116105
16106232212
16107116107
16108116108
16109116109
16110232220
16111348333
16112232224
16113116113
16114116114
16115116115
16116116116
16117116117
16118116118
16119116119
16121116121
16122116122
16126116126
16127116127
16133116133
16135116135
16136232272
16137116137
16138116138
16139116139
16143116143
16145116145
16146116146
16152232304
16159116159
16162116162
16164116164
16166116166
16167116167
16168116168
16175116175
16178116178
16180232360
16184116184
16187116187
16188116188
16189116189
16190116190
16194116194
16196116196
16212116212
16229116229
16236116236
16238116238
16266116266
16291116291
16320116320
16322116322
16326116326
16328116328
Total100212507886
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333830266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88824ecfb7474d27
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3465636662373437
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_5_7.json b/autobahn/client/tungstenite_case_12_5_7.json new file mode 100644 index 0000000..662d7d1 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_7.json @@ -0,0 +1,1695 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 380, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 1683, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=380&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 19vmn6ocO9jVkQqpt8TGjw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 5HmIdarXL128r0BsIQ5HEcokfOg=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.5.7", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "686": 1, + "699": 1, + "707": 1, + "737": 1, + "750": 1, + "755": 1, + "777": 1, + "871": 1, + "978": 1, + "1033": 1, + "1036": 1, + "1037": 1, + "1042": 1, + "1049": 1, + "1054": 1, + "1150": 1, + "1152": 1, + "1169": 1, + "1189": 1, + "1198": 1, + "1213": 1, + "1254": 1, + "1264": 1, + "1267": 1, + "1272": 1, + "1275": 1, + "1296": 1, + "1303": 1, + "1311": 2, + "1315": 1, + "1323": 1, + "1327": 1, + "1341": 1, + "1349": 1, + "1360": 1, + "1385": 1, + "1403": 1, + "1431": 1, + "1437": 1, + "1462": 1, + "1465": 1, + "1474": 1, + "1479": 1, + "1486": 2, + "1496": 1, + "1499": 1, + "1500": 1, + "1502": 1, + "1507": 1, + "1508": 1, + "1511": 1, + "1518": 1, + "1526": 1, + "1527": 1, + "1540": 1, + "1543": 1, + "1545": 1, + "1557": 1, + "1560": 1, + "1574": 1, + "1588": 1, + "1609": 1, + "1635": 1, + "1646": 1, + "1655": 1, + "1656": 1, + "1694": 1, + "1723": 1, + "1734": 1, + "1782": 1, + "1850": 1, + "1888": 1, + "1939": 1, + "1975": 1, + "1994": 1, + "2082": 1, + "2111": 1, + "2151": 1, + "2154": 1, + "2204": 1, + "2266": 1, + "2268": 1, + "2336": 1, + "2343": 1, + "2369": 1, + "2468": 1, + "2486": 1, + "2513": 1, + "2582": 1, + "2608": 1, + "2611": 1, + "2641": 1, + "2673": 1, + "2812": 1, + "2814": 1, + "2840": 1, + "2870": 1, + "2894": 1, + "2937": 1, + "2940": 1, + "2948": 1, + "2971": 1, + "3021": 1, + "3023": 2, + "3028": 1, + "3030": 1, + "3032": 1, + "3054": 1, + "3063": 1, + "3091": 1, + "3103": 1, + "3107": 1, + "3125": 1, + "3186": 1, + "3205": 1, + "3216": 1, + "3231": 1, + "3264": 1, + "3301": 1, + "3411": 1, + "3414": 1, + "3476": 1, + "3480": 1, + "3509": 1, + "3585": 1, + "3608": 1, + "3655": 1, + "3816": 1, + "3895": 1, + "3917": 1, + "3932": 1, + "3976": 1, + "4009": 1, + "4044": 1, + "4173": 1, + "4189": 1, + "4190": 1, + "4214": 1, + "4235": 2, + "4288": 1, + "4299": 2, + "4308": 1, + "4339": 1, + "4359": 1, + "4376": 1, + "4440": 1, + "4442": 1, + "4443": 1, + "4463": 1, + "4496": 1, + "4513": 1, + "4514": 1, + "4548": 1, + "4636": 1, + "4674": 1, + "4722": 1, + "4786": 1, + "4803": 1, + "4915": 1, + "5010": 1, + "5041": 1, + "5042": 1, + "5219": 1, + "5263": 1, + "5348": 1, + "5392": 1, + "5522": 1, + "5582": 1, + "5701": 1, + "5709": 1, + "5724": 1, + "5771": 1, + "5996": 1, + "6017": 1, + "6107": 1, + "6291": 1, + "6361": 1, + "6394": 1, + "6419": 1, + "6466": 1, + "6525": 1, + "6945": 1, + "7125": 1, + "7160": 1, + "7285": 1, + "7294": 1, + "7413": 1, + "7735": 1, + "7768": 1, + "7799": 1, + "7900": 1, + "8290": 1, + "8323": 1, + "8441": 1, + "8572": 1, + "8630": 1, + "8674": 1, + "8843": 1, + "8918": 1, + "8952": 1, + "9125": 1, + "9197": 1, + "9202": 1, + "9215": 1, + "9228": 1, + "9261": 1, + "9295": 1, + "9325": 1, + "9435": 1, + "9465": 1, + "9519": 1, + "9543": 1, + "9567": 1, + "9708": 1, + "9743": 1, + "9986": 1, + "9995": 1, + "10013": 1, + "10195": 1, + "10204": 1, + "10223": 1, + "10228": 1, + "10408": 1, + "10434": 1, + "10445": 1, + "10475": 1, + "10477": 1, + "10487": 1, + "10509": 1, + "10513": 1, + "10543": 1, + "10556": 1, + "10564": 1, + "10582": 1, + "10595": 1, + "10601": 1, + "10676": 1, + "10684": 1, + "10697": 1, + "10711": 1, + "10717": 1, + "10763": 1, + "10775": 1, + "10786": 1, + "10790": 1, + "10793": 1, + "10805": 1, + "10806": 1, + "10822": 2, + "10843": 1, + "10850": 1, + "10856": 1, + "10858": 1, + "10873": 1, + "10896": 1, + "10899": 1, + "10920": 2, + "10921": 1, + "10922": 1, + "10932": 1, + "10933": 1, + "10938": 1, + "10940": 1, + "10941": 1, + "10976": 1, + "10983": 1, + "10985": 1, + "11001": 1, + "11017": 1, + "11026": 1, + "11029": 1, + "11036": 1, + "11053": 2, + "11055": 1, + "11063": 1, + "11070": 1, + "11072": 1, + "11074": 1, + "11088": 1, + "11110": 1, + "11121": 1, + "11177": 1, + "11209": 1, + "11211": 1, + "11222": 1, + "11226": 1, + "11240": 1, + "11268": 1, + "11307": 1, + "11321": 1, + "11323": 1, + "11332": 1, + "11341": 1, + "11358": 1, + "11360": 1, + "11371": 1, + "11373": 1, + "11378": 1, + "11384": 1, + "11402": 1, + "11417": 1, + "11422": 1, + "11424": 1, + "11425": 1, + "11430": 1, + "11433": 1, + "11461": 1, + "11465": 1, + "11469": 1, + "11492": 1, + "11500": 1, + "11510": 1, + "11513": 1, + "11535": 1, + "11542": 1, + "11547": 1, + "11556": 1, + "11565": 1, + "11588": 2, + "11590": 1, + "11592": 1, + "11594": 1, + "11596": 1, + "11597": 1, + "11623": 1, + "11647": 1, + "11658": 1, + "11660": 2, + "11679": 1, + "11680": 1, + "11682": 1, + "11691": 1, + "11692": 1, + "11712": 1, + "11755": 1, + "11791": 1, + "11800": 1, + "11814": 1, + "11819": 1, + "11859": 1, + "11867": 1, + "11894": 1, + "11913": 1, + "12001": 1, + "12362": 1, + "12968": 1, + "13246": 1, + "13708": 1, + "13996": 1, + "14325": 1, + "14627": 1, + "14793": 1, + "14856": 1, + "14891": 1, + "14924": 1, + "14928": 1, + "14965": 1, + "14982": 1, + "14983": 1, + "15044": 1, + "15070": 1, + "15071": 1, + "15074": 1, + "15082": 1, + "15091": 1, + "15097": 1, + "15107": 1, + "15150": 1, + "15166": 1, + "15187": 1, + "15188": 1, + "15222": 1, + "15224": 1, + "15314": 1, + "15330": 1, + "15331": 1, + "15356": 1, + "15357": 1, + "15360": 1, + "15363": 1, + "15364": 1, + "15365": 2, + "15366": 3, + "15368": 2, + "15371": 2, + "15373": 1, + "15374": 1, + "15378": 1, + "15384": 1, + "15389": 1, + "15445": 1, + "15458": 1, + "15460": 1, + "15463": 1, + "15464": 1, + "15465": 1, + "15466": 1, + "15467": 1, + "15481": 1, + "15489": 1, + "15490": 2, + "15491": 1, + "15492": 2, + "15503": 2, + "15506": 2, + "15507": 2, + "15508": 1, + "15517": 1, + "15519": 1, + "15524": 1, + "15525": 1, + "15527": 1, + "15528": 1, + "15534": 2, + "15536": 1, + "15537": 2, + "15539": 1, + "15541": 1, + "15544": 1, + "15545": 1, + "15547": 1, + "15551": 1, + "15553": 1, + "15555": 2, + "15558": 2, + "15560": 1, + "15562": 1, + "15565": 2, + "15566": 3, + "15570": 1, + "15573": 2, + "15575": 1, + "15576": 3, + "15577": 3, + "15580": 1, + "15581": 5, + "15582": 2, + "15583": 2, + "15585": 2, + "15586": 2, + "15587": 1, + "15590": 1, + "15591": 1, + "15592": 2, + "15593": 2, + "15594": 2, + "15595": 2, + "15596": 3, + "15597": 3, + "15599": 1, + "15600": 1, + "15601": 2, + "15602": 4, + "15603": 1, + "15604": 3, + "15605": 1, + "15607": 2, + "15608": 1, + "15609": 3, + "15610": 3, + "15616": 1, + "15619": 1, + "15620": 3, + "15621": 1, + "15624": 1, + "15625": 2, + "15628": 1, + "15633": 1, + "15636": 1, + "15639": 2, + "15640": 1, + "15641": 1, + "15642": 1, + "15643": 2, + "15644": 1, + "15645": 1, + "15646": 1, + "15647": 1, + "15648": 1, + "15652": 1, + "15655": 2, + "15656": 1, + "15657": 1, + "15664": 1, + "15666": 2, + "15667": 5, + "15668": 2, + "15669": 1, + "15671": 1, + "15672": 2, + "15674": 2, + "15676": 3, + "15677": 2, + "15678": 4, + "15680": 1, + "15682": 1, + "15684": 2, + "15690": 1, + "15692": 1, + "15701": 2, + "15702": 1, + "15703": 2, + "15711": 1, + "15713": 1, + "15714": 2, + "15715": 2, + "15716": 2, + "15718": 2, + "15719": 3, + "15721": 3, + "15723": 1, + "15724": 1, + "15725": 3, + "15727": 1, + "15728": 2, + "15729": 2, + "15732": 4, + "15736": 2, + "15737": 1, + "15743": 1, + "15744": 1, + "15745": 3, + "15747": 2, + "15749": 1, + "15751": 3, + "15752": 2, + "15754": 2, + "15755": 2, + "15759": 1, + "15760": 1, + "15763": 2, + "15764": 1, + "15767": 2, + "15768": 2, + "15769": 3, + "15770": 1, + "15771": 2, + "15772": 1, + "15777": 2, + "15778": 1, + "15779": 1, + "15780": 1, + "15782": 1, + "15783": 2, + "15784": 1, + "15785": 1, + "15787": 3, + "15788": 2, + "15789": 1, + "15790": 1, + "15792": 1, + "15793": 1, + "15796": 1, + "15797": 1, + "15798": 2, + "15799": 2, + "15800": 7, + "15801": 2, + "15802": 3, + "15803": 3, + "15804": 1, + "15805": 1, + "15806": 1, + "15808": 2, + "15809": 3, + "15810": 2, + "15812": 6, + "15813": 3, + "15814": 4, + "15815": 1, + "15816": 1, + "15817": 1, + "15818": 2, + "15820": 1, + "15821": 1, + "15822": 2, + "15823": 2, + "15824": 2, + "15825": 1, + "15826": 1, + "15827": 1, + "15835": 2, + "15836": 1, + "15837": 3, + "15838": 1, + "15839": 1, + "15840": 2, + "15841": 1, + "15842": 1, + "15845": 2, + "15846": 1, + "15847": 3, + "15848": 4, + "15850": 3, + "15851": 1, + "15854": 1, + "15855": 2, + "15857": 2, + "15858": 2, + "15859": 2, + "15860": 4, + "15861": 2, + "15862": 2, + "15863": 2, + "15864": 4, + "15865": 2, + "15866": 3, + "15867": 3, + "15868": 1, + "15869": 2, + "15870": 3, + "15873": 1, + "15875": 1, + "15882": 1, + "15883": 1, + "15884": 3, + "15885": 1, + "15894": 1, + "15895": 1, + "15896": 2, + "15897": 2, + "15904": 1, + "15906": 1, + "15907": 5, + "15910": 1, + "15911": 1, + "15912": 2, + "15916": 1, + "15921": 2, + "15924": 1, + "15929": 2, + "15934": 1, + "15935": 1, + "15936": 1, + "15939": 3, + "15940": 1, + "15944": 1, + "15948": 1, + "15949": 1, + "15953": 1, + "15954": 1, + "15957": 1, + "15958": 1, + "15959": 1, + "15963": 1, + "15968": 1, + "15969": 1, + "15973": 1, + "15974": 1, + "15978": 1, + "15983": 2, + "15987": 2, + "15989": 1, + "15990": 1, + "15991": 2, + "15993": 1, + "15995": 2, + "15996": 3, + "16001": 1, + "16002": 1, + "16004": 1, + "16006": 1, + "16007": 1, + "16008": 2, + "16009": 1, + "16010": 1, + "16012": 3, + "16014": 3, + "16019": 1, + "16020": 1, + "16032": 2, + "16034": 1, + "16036": 2, + "16038": 3, + "16041": 2, + "16043": 1, + "16045": 1, + "16046": 2, + "16047": 2, + "16049": 1, + "16051": 1, + "16052": 2, + "16054": 2, + "16057": 3, + "16058": 1, + "16059": 1, + "16060": 2, + "16061": 1, + "16063": 1, + "16065": 1, + "16066": 1, + "16067": 2, + "16068": 1, + "16069": 2, + "16070": 1, + "16071": 1, + "16072": 3, + "16074": 1, + "16076": 2, + "16077": 1, + "16079": 1, + "16080": 1, + "16082": 3, + "16083": 2, + "16085": 1, + "16089": 3, + "16093": 1, + "16095": 1, + "16098": 2, + "16109": 1, + "16110": 2, + "16111": 1, + "16112": 1, + "16113": 1, + "16114": 2, + "16115": 3, + "16116": 2, + "16117": 1, + "16118": 1, + "16119": 1, + "16120": 1, + "16121": 1, + "16122": 1, + "16123": 1, + "16125": 1, + "16126": 1, + "16130": 1, + "16131": 1, + "16137": 1, + "16139": 1, + "16140": 2, + "16141": 1, + "16142": 1, + "16143": 1, + "16147": 1, + "16149": 1, + "16150": 1, + "16156": 2, + "16163": 1, + "16166": 1, + "16168": 1, + "16170": 1, + "16171": 1, + "16172": 1, + "16179": 1, + "16182": 1, + "16184": 2, + "16188": 1, + "16191": 1, + "16192": 1, + "16193": 1, + "16194": 1, + "16198": 1, + "16200": 1, + "16216": 1, + "16233": 1, + "16240": 1, + "16242": 1, + "16270": 1, + "16295": 1, + "16324": 1, + "16326": 1, + "16330": 1, + "16332": 1 + }, + "started": "2020-09-07T18:50:36.145Z", + "trafficStats": { + "incomingCompressionRatio": 0.7623073120117188, + "incomingOctetsAppLevel": 16384000, + "incomingOctetsWebSocketLevel": 12489643, + "incomingOctetsWireLevel": 12497643, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0006405307181318153, + "outgoingCompressionRatio": 0.7631610107421875, + "outgoingOctetsAppLevel": 16384000, + "outgoingOctetsWebSocketLevel": 12503630, + "outgoingOctetsWireLevel": 12507630, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.00031990709897845664, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "692": 1, + "713": 1, + "715": 1, + "745": 1, + "763": 1, + "767": 1, + "784": 1, + "882": 1, + "989": 1, + "1087": 1, + "1089": 1, + "1102": 1, + "1108": 1, + "1109": 1, + "1125": 1, + "1157": 1, + "1205": 1, + "1224": 1, + "1258": 1, + "1267": 1, + "1305": 1, + "1322": 1, + "1331": 1, + "1353": 2, + "1360": 1, + "1367": 1, + "1368": 1, + "1382": 1, + "1383": 1, + "1388": 1, + "1392": 1, + "1396": 1, + "1397": 1, + "1410": 1, + "1418": 1, + "1437": 1, + "1439": 1, + "1455": 1, + "1472": 1, + "1481": 1, + "1488": 1, + "1489": 1, + "1503": 1, + "1504": 1, + "1511": 1, + "1531": 1, + "1534": 1, + "1544": 1, + "1545": 1, + "1557": 1, + "1559": 1, + "1561": 1, + "1569": 1, + "1571": 1, + "1578": 1, + "1585": 1, + "1595": 1, + "1598": 1, + "1607": 1, + "1611": 1, + "1619": 1, + "1627": 1, + "1633": 1, + "1653": 1, + "1695": 1, + "1720": 1, + "1726": 1, + "1751": 1, + "1781": 1, + "1803": 1, + "1839": 1, + "1909": 1, + "1952": 1, + "1954": 1, + "2037": 1, + "2048": 1, + "2102": 1, + "2166": 1, + "2181": 1, + "2205": 1, + "2208": 1, + "2292": 1, + "2336": 1, + "2359": 1, + "2380": 1, + "2390": 1, + "2522": 1, + "2567": 1, + "2597": 1, + "2625": 1, + "2653": 1, + "2674": 1, + "2695": 1, + "2730": 1, + "2862": 1, + "2883": 1, + "2892": 1, + "2894": 1, + "2929": 1, + "2971": 1, + "2996": 1, + "3076": 1, + "3081": 1, + "3092": 1, + "3106": 1, + "3181": 1, + "3184": 1, + "3186": 1, + "3196": 1, + "3203": 1, + "3206": 1, + "3209": 1, + "3212": 1, + "3229": 1, + "3233": 1, + "3262": 1, + "3283": 1, + "3284": 1, + "3328": 1, + "3353": 1, + "3381": 1, + "3444": 1, + "3480": 1, + "3484": 1, + "3519": 1, + "3562": 1, + "3635": 1, + "3666": 1, + "3710": 1, + "3834": 1, + "3929": 1, + "3970": 1, + "4014": 1, + "4040": 1, + "4090": 1, + "4134": 1, + "4197": 1, + "4198": 1, + "4205": 1, + "4221": 1, + "4278": 1, + "4279": 1, + "4322": 1, + "4345": 1, + "4350": 1, + "4352": 1, + "4360": 1, + "4413": 1, + "4452": 1, + "4454": 1, + "4459": 1, + "4478": 1, + "4490": 1, + "4510": 1, + "4532": 1, + "4590": 1, + "4644": 1, + "4734": 1, + "4762": 1, + "4772": 1, + "4823": 1, + "4899": 1, + "5003": 1, + "5046": 1, + "5077": 1, + "5084": 1, + "5262": 1, + "5383": 1, + "5388": 1, + "5440": 1, + "5547": 1, + "5619": 1, + "5731": 1, + "5735": 1, + "5767": 1, + "5831": 1, + "6047": 1, + "6113": 1, + "6166": 1, + "6349": 1, + "6404": 1, + "6429": 1, + "6431": 1, + "6521": 1, + "6558": 1, + "6989": 1, + "7165": 2, + "7322": 1, + "7379": 1, + "7411": 1, + "7796": 1, + "7817": 1, + "7839": 1, + "7903": 1, + "8325": 1, + "8369": 1, + "8442": 1, + "8607": 1, + "8631": 1, + "8691": 1, + "8839": 1, + "8914": 1, + "9023": 1, + "9121": 1, + "9193": 1, + "9198": 1, + "9224": 1, + "9247": 1, + "9257": 1, + "9291": 1, + "9321": 1, + "9443": 1, + "9461": 1, + "9515": 1, + "9572": 1, + "9610": 1, + "9708": 1, + "9739": 1, + "9990": 1, + "10009": 1, + "10017": 1, + "10208": 1, + "10223": 1, + "10224": 1, + "10260": 1, + "10404": 1, + "10434": 1, + "10441": 1, + "10470": 1, + "10476": 1, + "10483": 1, + "10503": 1, + "10509": 1, + "10544": 1, + "10550": 1, + "10557": 1, + "10578": 1, + "10592": 1, + "10596": 1, + "10675": 1, + "10680": 1, + "10693": 1, + "10707": 1, + "10713": 1, + "10764": 1, + "10767": 1, + "10782": 1, + "10787": 1, + "10789": 1, + "10799": 1, + "10803": 1, + "10817": 1, + "10819": 1, + "10839": 1, + "10846": 1, + "10854": 1, + "10858": 1, + "10869": 1, + "10893": 1, + "10898": 1, + "10916": 2, + "10917": 1, + "10920": 1, + "10929": 2, + "10937": 2, + "10939": 1, + "10974": 1, + "10981": 1, + "10983": 1, + "10998": 1, + "11015": 1, + "11024": 1, + "11026": 1, + "11031": 1, + "11049": 2, + "11051": 1, + "11065": 1, + "11066": 1, + "11068": 1, + "11070": 1, + "11084": 1, + "11107": 1, + "11120": 1, + "11173": 1, + "11205": 1, + "11206": 1, + "11219": 1, + "11222": 1, + "11261": 1, + "11303": 1, + "11312": 1, + "11317": 1, + "11322": 1, + "11330": 1, + "11337": 1, + "11354": 1, + "11356": 1, + "11367": 1, + "11372": 1, + "11374": 1, + "11386": 1, + "11398": 1, + "11413": 1, + "11418": 1, + "11421": 1, + "11422": 1, + "11426": 1, + "11429": 1, + "11457": 1, + "11461": 1, + "11465": 1, + "11488": 1, + "11495": 1, + "11506": 1, + "11507": 1, + "11531": 1, + "11542": 1, + "11549": 1, + "11552": 1, + "11561": 1, + "11584": 1, + "11586": 1, + "11590": 1, + "11591": 1, + "11592": 2, + "11593": 1, + "11619": 1, + "11643": 1, + "11656": 1, + "11660": 1, + "11662": 1, + "11680": 1, + "11683": 1, + "11685": 1, + "11687": 1, + "11694": 1, + "11708": 1, + "11756": 1, + "11787": 1, + "11802": 1, + "11810": 1, + "11815": 1, + "11855": 1, + "11863": 1, + "11894": 1, + "11948": 1, + "12009": 1, + "12398": 1, + "12989": 1, + "13246": 1, + "13723": 1, + "13992": 1, + "14330": 1, + "14623": 1, + "14787": 1, + "14851": 1, + "14884": 1, + "14932": 1, + "14936": 1, + "14972": 1, + "14977": 2, + "15048": 1, + "15064": 1, + "15065": 1, + "15070": 1, + "15090": 1, + "15096": 1, + "15099": 1, + "15113": 1, + "15161": 1, + "15170": 1, + "15191": 2, + "15227": 1, + "15228": 1, + "15318": 1, + "15342": 2, + "15358": 1, + "15360": 1, + "15363": 1, + "15366": 1, + "15367": 2, + "15368": 2, + "15369": 1, + "15370": 1, + "15371": 1, + "15373": 1, + "15374": 1, + "15375": 2, + "15378": 1, + "15380": 1, + "15383": 1, + "15391": 1, + "15447": 1, + "15460": 1, + "15463": 1, + "15464": 1, + "15465": 2, + "15472": 2, + "15478": 1, + "15485": 1, + "15489": 1, + "15490": 1, + "15491": 1, + "15494": 1, + "15496": 1, + "15502": 2, + "15506": 1, + "15507": 2, + "15508": 1, + "15509": 1, + "15519": 1, + "15520": 1, + "15526": 1, + "15527": 1, + "15529": 1, + "15530": 1, + "15535": 1, + "15539": 1, + "15540": 1, + "15543": 3, + "15546": 2, + "15547": 1, + "15549": 1, + "15550": 1, + "15555": 1, + "15558": 1, + "15559": 1, + "15560": 1, + "15561": 1, + "15562": 1, + "15563": 1, + "15567": 2, + "15568": 2, + "15571": 1, + "15572": 1, + "15574": 3, + "15575": 1, + "15576": 3, + "15580": 1, + "15581": 2, + "15582": 1, + "15583": 5, + "15584": 1, + "15585": 3, + "15586": 3, + "15589": 1, + "15593": 2, + "15594": 4, + "15595": 3, + "15596": 2, + "15598": 1, + "15599": 3, + "15600": 1, + "15601": 3, + "15603": 1, + "15604": 2, + "15605": 1, + "15606": 7, + "15608": 3, + "15609": 1, + "15610": 2, + "15611": 1, + "15612": 1, + "15614": 1, + "15617": 2, + "15618": 2, + "15620": 1, + "15625": 1, + "15626": 2, + "15627": 1, + "15629": 1, + "15635": 1, + "15636": 1, + "15638": 1, + "15640": 2, + "15644": 1, + "15646": 3, + "15647": 2, + "15648": 2, + "15649": 1, + "15652": 1, + "15655": 1, + "15656": 2, + "15660": 1, + "15661": 3, + "15662": 1, + "15664": 1, + "15666": 3, + "15667": 1, + "15668": 1, + "15669": 2, + "15671": 1, + "15673": 1, + "15674": 1, + "15675": 1, + "15676": 2, + "15678": 1, + "15680": 3, + "15681": 1, + "15682": 2, + "15683": 2, + "15684": 1, + "15692": 1, + "15695": 1, + "15699": 1, + "15701": 1, + "15702": 2, + "15705": 1, + "15709": 1, + "15710": 3, + "15713": 1, + "15716": 1, + "15717": 1, + "15718": 4, + "15720": 3, + "15721": 2, + "15724": 2, + "15726": 1, + "15727": 3, + "15729": 1, + "15730": 3, + "15731": 1, + "15732": 3, + "15733": 1, + "15734": 1, + "15741": 2, + "15743": 1, + "15744": 3, + "15747": 1, + "15748": 4, + "15750": 1, + "15752": 2, + "15753": 1, + "15754": 1, + "15755": 1, + "15757": 1, + "15758": 1, + "15759": 1, + "15760": 1, + "15761": 1, + "15762": 1, + "15764": 1, + "15765": 1, + "15766": 1, + "15767": 1, + "15768": 1, + "15769": 1, + "15770": 2, + "15771": 1, + "15772": 1, + "15774": 1, + "15775": 3, + "15776": 1, + "15778": 1, + "15779": 1, + "15782": 1, + "15783": 1, + "15784": 2, + "15785": 1, + "15786": 2, + "15789": 1, + "15790": 3, + "15792": 2, + "15794": 1, + "15795": 1, + "15796": 1, + "15799": 1, + "15800": 4, + "15801": 5, + "15802": 3, + "15803": 4, + "15804": 1, + "15805": 2, + "15806": 3, + "15807": 1, + "15808": 1, + "15810": 3, + "15811": 6, + "15812": 2, + "15813": 5, + "15815": 2, + "15816": 1, + "15817": 3, + "15818": 2, + "15819": 1, + "15820": 2, + "15823": 1, + "15824": 2, + "15825": 2, + "15831": 2, + "15832": 1, + "15833": 1, + "15834": 1, + "15835": 1, + "15836": 2, + "15838": 1, + "15839": 2, + "15841": 3, + "15842": 1, + "15843": 1, + "15844": 3, + "15846": 2, + "15847": 2, + "15849": 2, + "15850": 1, + "15851": 1, + "15852": 2, + "15854": 3, + "15855": 1, + "15856": 2, + "15857": 2, + "15858": 2, + "15859": 2, + "15860": 2, + "15861": 4, + "15862": 2, + "15863": 1, + "15864": 2, + "15865": 2, + "15866": 3, + "15867": 2, + "15869": 2, + "15870": 1, + "15871": 2, + "15872": 1, + "15878": 1, + "15879": 1, + "15880": 1, + "15882": 1, + "15883": 2, + "15890": 1, + "15895": 1, + "15897": 2, + "15898": 2, + "15900": 1, + "15903": 1, + "15907": 1, + "15908": 1, + "15909": 1, + "15910": 1, + "15911": 2, + "15913": 1, + "15915": 2, + "15916": 2, + "15918": 1, + "15920": 1, + "15924": 1, + "15931": 1, + "15932": 1, + "15934": 1, + "15935": 1, + "15936": 1, + "15938": 1, + "15940": 2, + "15944": 1, + "15945": 1, + "15946": 1, + "15950": 1, + "15952": 1, + "15953": 1, + "15954": 1, + "15955": 1, + "15959": 1, + "15965": 1, + "15969": 2, + "15970": 1, + "15978": 1, + "15979": 2, + "15983": 2, + "15985": 1, + "15987": 2, + "15989": 1, + "15990": 1, + "15991": 1, + "15992": 2, + "15994": 1, + "15995": 1, + "15997": 1, + "15998": 1, + "16000": 1, + "16002": 1, + "16004": 1, + "16005": 1, + "16006": 1, + "16008": 3, + "16010": 3, + "16011": 1, + "16012": 1, + "16015": 1, + "16016": 1, + "16028": 2, + "16030": 1, + "16032": 2, + "16034": 2, + "16035": 1, + "16037": 2, + "16039": 1, + "16041": 1, + "16042": 2, + "16043": 1, + "16044": 1, + "16045": 1, + "16047": 1, + "16048": 2, + "16050": 2, + "16053": 3, + "16054": 1, + "16056": 2, + "16057": 2, + "16059": 1, + "16062": 2, + "16063": 2, + "16064": 1, + "16065": 1, + "16066": 1, + "16067": 1, + "16068": 3, + "16069": 1, + "16070": 1, + "16072": 2, + "16073": 1, + "16075": 1, + "16076": 1, + "16078": 2, + "16079": 2, + "16081": 1, + "16082": 1, + "16085": 3, + "16089": 1, + "16091": 1, + "16094": 2, + "16105": 1, + "16106": 2, + "16107": 1, + "16108": 1, + "16109": 1, + "16110": 2, + "16111": 3, + "16112": 2, + "16113": 1, + "16114": 1, + "16115": 1, + "16116": 1, + "16117": 1, + "16118": 1, + "16119": 1, + "16121": 1, + "16122": 1, + "16126": 1, + "16127": 1, + "16133": 1, + "16135": 1, + "16136": 2, + "16137": 1, + "16138": 1, + "16139": 1, + "16143": 1, + "16145": 1, + "16146": 1, + "16152": 2, + "16159": 1, + "16162": 1, + "16164": 1, + "16166": 1, + "16167": 1, + "16168": 1, + "16175": 1, + "16178": 1, + "16180": 2, + "16184": 1, + "16187": 1, + "16188": 1, + "16189": 1, + "16190": 1, + "16194": 1, + "16196": 1, + "16212": 1, + "16229": 1, + "16236": 1, + "16238": 1, + "16266": 1, + "16291": 1, + "16320": 1, + "16322": 1, + "16326": 1, + "16328": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333830266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88824ecfb7474d27" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "4ecfb747" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_5_8.html b/autobahn/client/tungstenite_case_12_5_8.html new file mode 100644 index 0000000..d969b75 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_8.html @@ -0,0 +1,1977 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.5.8 : Pass - 2860 ms @ 2020-09-07T18:50:37.829Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=381&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 4E2qegctedwEE6qbpwuljw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 8UwdvUXd9KucTkMrsIOD0Rw2JCU=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
209512095
210912109
214512145
214812148
215412154
230612306
253612536
255212552
256312563
257512575
258612586
259712597
259912599
261812618
263712637
266912669
269012690
269112691
270512705
270712707
270912709
271712717
272012720
274612746
275812758
276312763
278412784
279412794
280912809
281212812
285612856
287612876
298212982
300713007
318213182
318713187
319413194
336013360
337913379
345713457
348313483
349213492
350113501
351313513
352413524
359813598
361813618
362613626
364813648
384413844
385113851
385413854
387813878
392013920
398113981
404314043
404514045
414114141
414814148
421414214
421714217
422814228
425114251
441314413
446214462
456714567
466514665
469214692
475714757
477714777
491914919
492614926
492914929
505315053
513315133
532115321
537915379
540315403
557415574
559415594
571215712
572015720
574115741
574815748
575415754
575715757
579615796
580415804
5816211632
582915829
585115851
586415864
588015880
592915929
593015930
593315933
593615936
596415964
614816148
616716167
626016260
628216282
629416294
647416474
650716507
650916509
652916529
672116721
691116911
711917119
715217152
724917249
726217262
729317293
732817328
752417524
770217702
771317713
774617746
777517775
797817978
809418094
819918199
822118221
823118231
828618286
829618296
831918319
842818428
847318473
847618476
854918549
859418594
860218602
864318643
864818648
865018650
865318653
866218662
867818678
868618686
8689217378
869318693
869718697
873418734
894718947
895818958
909119091
912419124
917019170
930719307
938019380
943619436
945519455
998519985
10138110138
10530110530
10648110648
10680110680
10750110750
11085111085
11262111262
11477111477
11567111567
11627111627
11717111717
11748111748
11864111864
11893111893
11953111953
12100112100
12123112123
12140112140
12582112582
12662112662
12690112690
12838112838
13248113248
13605113605
13641113641
13720113720
13851113851
13992113992
14317114317
14362114362
14374114374
14719114719
14985114985
15097115097
15247115247
15262115262
15302115302
15390115390
15541115541
15980115980
16074116074
16151116151
16223116223
16408116408
16490116490
16673116673
16800116800
17014117014
17087117087
17141117141
17182117182
17579117579
17705117705
17849117849
18221118221
18493118493
18775118775
18884118884
18919118919
19025119025
19420119420
19440119440
19449119449
19528119528
19585119585
19694119694
19719119719
19788119788
20000120000
20005120005
20102120102
20154120154
20173120173
20212120212
20308120308
20333120333
20485120485
20487120487
20547120547
20595120595
20614120614
20627120627
20670120670
20696120696
20701120701
20704120704
20718120718
20777120777
20779120779
20792120792
20834241668
20840120840
20849120849
20852120852
20857120857
20890120890
20895120895
20907120907
20912120912
21003121003
21013121013
21017121017
21056121056
21108121108
21131121131
21143121143
21170121170
21253121253
21285121285
21313121313
21314121314
21337121337
21340121340
21438121438
21443121443
21480121480
21507121507
21519121519
21534121534
21536121536
21604121604
21613121613
21631121631
21641121641
21656121656
21671121671
21675121675
21707121707
21744121744
21745121745
21747121747
21760121760
21785121785
21788121788
21817121817
21831121831
21838121838
21852121852
21870121870
21879121879
21930121930
21944121944
21957121957
21971121971
22040122040
22052122052
22104122104
22158122158
22163122163
22168122168
22180122180
22188122188
22189122189
22203122203
22343122343
22344122344
22358122358
22391122391
22463122463
22539122539
22561122561
22582122582
22594122594
22605122605
22618122618
22625122625
22631122631
22639122639
22644122644
22646122646
22648122648
22655122655
22661122661
22664122664
22671122671
22704122704
22705122705
22742122742
22746122746
22747122747
22769122769
22792122792
22801122801
22815122815
22847122847
22876122876
22919122919
22926122926
22969122969
22977122977
23000123000
23002123002
23007246014
23012123012
23014123014
23032123032
23043123043
23065123065
23109123109
23143123143
23168123168
23175123175
23180123180
23190123190
23341123341
23361123361
23384123384
24132124132
24234124234
24421124421
25293125293
25399125399
25558125558
26426126426
26962126962
27033127033
27303127303
28204128204
28327128327
28461128461
28564128564
29439129439
29540129540
29546129546
30504261008
30508130508
30510130510
30580130580
30602130602
30615130615
30655130655
30656130656
30696261392
30711130711
30714130714
30715130715
30716130716
30717130717
30721130721
30731130731
30740261480
30746130746
30748130748
30821130821
30830130830
30876130876
30882130882
30883130883
30884130884
30897130897
30910130910
30948261896
30951261902
30952130952
30986130986
30988130988
30989261978
30993130993
30995130995
31044131044
31061131061
31073262146
31076262152
31081131081
31082131082
31083131083
31084262168
31087131087
31090131090
31093131093
31094131094
31101131101
31104131104
31105131105
31108131108
31115131115
31120131120
31123131123
31126131126
31127393381
31128131128
31131131131
31132262264
31133131133
31136262272
31154262308
31155131155
311574124628
31158262316
31160262320
31161131161
31162262324
31167131167
31168131168
31169131169
31170393510
31171262342
31173131173
31174131174
311754124700
31176131176
31178262356
31180131180
31182131182
31202262404
31208131208
31209262418
31225131225
31227131227
31233131233
31240131240
31242131242
31243131243
31249131249
31253131253
31254131254
31262131262
312664125064
31267131267
31268262536
31269262538
31274262548
31300131300
31301262602
31303131303
31304131304
31305131305
31307131307
31310262620
31311131311
31312131312
313144125256
31316131316
31318131318
31319131319
31321131321
31323131323
31324131324
31326131326
31328393984
31330131330
31331131331
313324125328
31334394002
31335262670
31336131336
31337131337
31338131338
31342131342
31346131346
31347131347
31348131348
31349131349
31350262700
31352131352
313564125424
31357131357
31359262718
31361262722
31365131365
31366131366
31367131367
31369262738
31370131370
31371262742
31374131374
31375262750
31376262752
31381131381
31382262764
31393131393
313945156970
31395131395
31397131397
31398131398
31400131400
31401131401
31402131402
31408262816
31414131414
31415394245
31417262834
31418262836
31420262840
31421131421
31427262854
31432131432
31433262866
31435131435
31437131437
31438131438
31441131441
31445131445
31447131447
31450131450
31454262908
31456131456
31458131458
31459131459
31460131460
31461394383
31464131464
31466262932
31468131468
31469131469
31470131470
31471131471
31472131472
31473131473
31474131474
31479131479
31480131480
31486131486
31488131488
31489262978
31490262980
31491131491
31492131492
31494131494
31496131496
31498131498
31502131502
31505263010
31506131506
31507131507
31513131513
31514131514
31516131516
31517263034
31518263036
31522263044
31523263046
31524131524
31527131527
31528131528
31529263058
31530131530
31531131531
31540131540
31546263092
31555263110
31556263112
31559263118
31560131560
31563263126
31564131564
31565263130
31566131566
31567131567
31568263136
31575263150
31576394728
31580131580
31582131582
31583394749
31586263172
31587131587
31591131591
31593263186
31594131594
31602263204
31603131603
31606131606
31608131608
31611131611
31613131613
31614131614
31616131616
31617131617
31619263238
31620131620
31624131624
31625263250
31626263252
31629131629
31630131630
31631131631
31632263264
31633131633
31637263274
31639131639
31640131640
31644131644
31650131650
31651263302
31654131654
31658131658
31662263324
31663131663
31664131664
31665131665
31668263336
31679131679
31682131682
31683131683
31685131685
31692131692
31695131695
31696131696
31699263398
31700395100
31701131701
31702131702
31703131703
31705263410
31706395118
31708263416
31709131709
31711131711
31715131715
31719131719
31726263452
31730131730
31732131732
31733131733
31736263472
31739263478
31740131740
31743131743
31744131744
31745131745
31746131746
31747131747
31749131749
31753131753
31754131754
31755131755
31756131756
31758263516
31763263526
31764263528
31766263532
31767131767
31768131768
31773131773
31782131782
31784131784
31785131785
31794131794
31795131795
31797131797
317985158990
31799263598
31801131801
31807131807
31812131812
31823131823
31827131827
31828131828
31829131829
31830131830
31837131837
31838131838
31839131839
31845131845
31847131847
31852131852
31853131853
31862131862
31863263726
31864131864
31870131870
31872131872
31873131873
31876131876
31878131878
31879131879
31880131880
31881131881
31883263766
31889131889
31900131900
31903131903
31916131916
31917131917
31930131930
31935131935
31939263878
31940131940
31941131941
31943131943
31944131944
31948131948
31955131955
31958131958
31964131964
31966131966
31973131973
31974131974
31982131982
31997263994
32001132001
32003132003
32004264008
32015132015
32017132017
32018132018
32030132030
32038132038
32040132040
32043132043
32067396201
32070132070
32073132073
32075132075
32076264152
32078132078
32079132079
32084264168
32088132088
32090132090
32092132092
32097132097
32099132099
32102396306
32105132105
32106132106
32111132111
32114132114
32115132115
32116132116
32118132118
32124132124
32126132126
32129132129
32131132131
32132396396
32135264270
32137132137
32141132141
32143132143
32144132144
32150132150
32158264316
32159132159
32162396486
32163396489
32164264328
32165132165
32170264340
32178132178
32179132179
32181264362
32182264364
32186132186
32187132187
32188132188
32190264380
32193396579
32195132195
32199132199
32203132203
32204264408
32207132207
32208132208
32211132211
32215132215
32217264434
32222132222
32226132226
32229132229
32230264460
32232132232
32235132235
32236132236
32239396717
32245132245
32248132248
32249132249
32252132252
32254132254
32262132262
32265132265
32273132273
32304132304
32315132315
32317132317
32334264668
32335132335
32336132336
32345132345
32370264740
32371132371
Total100224911209
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
210812108
212212122
215712157
215912159
217012170
232212322
261312613
265112651
268112681
270112701
271012710
272112721
273912739
274112741
277612776
282312823
283412834
284512845
285712857
285912859
286112861
286512865
288012880
289712897
290312903
290812908
292512925
294512945
295412954
295612956
300613006
302413024
313513135
314413144
320113201
321613216
333813338
348913489
350313503
351113511
351513515
351813518
354913549
364113641
364313643
367413674
371113711
373713737
375713757
393013930
395413954
399113991
400014000
400114001
406214062
406914069
420014200
422614226
423614236
437914379
439814398
440814408
444214442
462414624
466314663
467814678
477814778
488714887
490814908
491114911
503815038
514715147
515615156
528615286
536515365
543215432
562815628
565515655
573215732
574015740
575815758
576715767
577315773
578115781
582215822
582415824
584215842
584915849
587315873
590315903
592415924
592515925
595115951
595215952
595815958
596315963
597515975
598915989
605616056
617516175
627416274
630716307
631916319
636216362
657416574
6613213226
663116631
675316753
702417024
722017220
726117261
732817328
735217352
737217372
744517445
779017790
779917799
781917819
782017820
783017830
808018080
819818198
827418274
831218312
833518335
833918339
840118401
842918429
851718517
856718567
858118581
860918609
865418654
867318673
872518725
872718727
8730217460
873818738
874118741
876418764
877218772
877418774
877518775
878118781
882218822
901019010
905419054
919219192
926919269
937319373
941119411
943819438
949519495
951419514
10073110073
10239110239
10631110631
10748110748
10914110914
10982110982
11159111159
11354111354
11548111548
11631111631
11731111731
11854111854
11946111946
11994111994
12050112050
12098112098
12198112198
12220112220
12245112245
12642112642
12720112720
12790112790
13077113077
13350113350
13662113662
13735113735
13814113814
13935113935
14224114224
14400114400
14401114401
14454114454
14791114791
15206115206
15287115287
15321115321
15335115335
15341115341
15465115465
15601115601
16016116016
16110116110
16351116351
16421116421
16456116456
16540116540
16736116736
16861116861
17119117119
17168117168
17193117193
17214117214
17632117632
17730117730
17874117874
18382118382
18503118503
18783118783
18908118908
18943118943
19078119078
19466119466
19477119477
19566119566
19592119592
19668119668
19701119701
19715119715
19784119784
19996119996
20021120021
20098120098
20150120150
20178120178
20218120218
20329120329
20362120362
20480120480
20483120483
20543120543
20610120610
20623120623
20666120666
20690120690
20697120697
20714120714
20726120726
20775120775
20783120783
20788120788
20830241660
20835120835
20836120836
20845120845
20848120848
20853120853
20886120886
20891120891
20908120908
20912120912
21003121003
21009121009
21013121013
21051121051
21104121104
21129121129
21136121136
21168121168
21251121251
21284121284
21308121308
21309121309
21336121336
21337121337
21438121438
21451121451
21479121479
21506121506
21525121525
21532121532
21533121533
21609121609
21630121630
21638121638
21648121648
21651121651
21669121669
21670121670
21742121742
21744121744
21750121750
21752121752
21760121760
21787121787
21788121788
21819121819
21832121832
21851121851
21865121865
21873121873
21926121926
21942121942
21948121948
21957121957
21964121964
22037122037
22051122051
22100122100
22156122156
22160122160
22163122163
22175122175
22186244372
22202122202
22339122339
22343122343
22354122354
22387122387
22466122466
22540122540
22563122563
22587122587
22597122597
22608122608
22620122620
22627122627
22629122629
22635122635
22640122640
22642122642
22644122644
22653122653
22657122657
22660122660
22669122669
22703122703
22705122705
22737122737
22748245496
22769122769
22792122792
22797122797
22811122811
22843122843
22879122879
22916122916
22922122922
22966122966
22996122996
23003369009
23010123010
23029123029
23039123039
23061123061
23063123063
23072123072
23107123107
23165123165
23171123171
23176123176
23186123186
23192123192
23336123336
23357123357
23380123380
24204124204
24308124308
24463124463
25356125356
25463125463
25599125599
26486126486
26979126979
27045127045
27339127339
28214128214
28337128337
28487128487
28589128589
29457129457
29553129553
29554129554
30504261008
30508130508
30512130512
30587130587
30611130611
30614130614
30663130663
30664130664
30702130702
30706130706
30709130709
30717261434
30725130725
30726130726
30730130730
30735130735
30749130749
30750130750
30751130751
30754130754
30828130828
30829130829
30886130886
30891130891
30892130892
30893130893
30899130899
30928130928
30959130959
309604123840
31004131004
31006262012
31007131007
31012131012
31013131013
31060131060
31064131064
31078131078
31086131086
31088262176
31089131089
31091262182
31092131092
31096131096
31097131097
31098131098
31099131099
31102131102
31109131109
31112131112
31115131115
31119131119
31121131121
31122131122
31124131124
31131131131
31133131133
31134262268
31136131136
31137262274
31142131142
31147131147
31149131149
31150131150
31159393477
31160262320
31162131162
31163131163
31165131165
31166262332
31167262334
31174262348
31175131175
311764124704
31177262354
311784124712
31179131179
31180131180
311814124724
31182131182
31196131196
31205131205
31208131208
31214131214
31220131220
31221131221
31228131228
31230131230
31231131231
31238131238
31248131248
31249262498
31254131254
31258131258
31260131260
31267131267
31269131269
31270131270
31272262544
31273131273
31274131274
31275131275
31279131279
31285131285
31286131286
31301131301
31302131302
31304131304
31306131306
31308262616
31309131309
31310131310
31311131311
31313131313
31319262638
31320262640
31321262642
31322131322
31325131325
31326131326
31327262654
31328131328
31329262658
31330131330
31332131332
31333393999
31334262668
313374125348
31338131338
31339131339
31340262680
31349131349
31351131351
31352131352
31354262708
31355131355
31356262712
31358131358
31360262720
31361131361
31364131364
31366131366
31367131367
31368262736
31371262742
31372131372
31373131373
31376131376
31379131379
31381262762
313824125528
31385262770
31388131388
31389131389
31396131396
31397131397
31398131398
31399131399
314014125604
31403131403
31404262808
31406131406
31407262814
31414131414
31415131415
31416262832
31418131418
31419262838
31423131423
31424131424
31425131425
31428262856
31433131433
31437262874
31438262876
31440131440
31441131441
31442131442
31444262888
31449394347
31452131452
31455131455
31456262912
31457131457
31460262920
31464131464
31467131467
31470131470
31471131471
31474262948
31475131475
31478131478
31479131479
31480262960
31481131481
31492262984
31495262990
31496262992
31497262994
31498131498
31500131500
31502131502
31503131503
31504263008
31510131510
31511131511
31518131518
31521131521
31522131522
31524131524
31525263050
31526131526
31528131528
31529263058
31532394596
31533263066
31535131535
31536131536
31538131538
31546131546
31548131548
31549131549
31553131553
31554131554
31561263122
31564131564
31565263130
31566131566
31568263136
31569394707
31571131571
31572131572
31575131575
31578131578
31579263158
31581263162
31586263172
31588263176
31589263178
31591131591
31592263184
31596131596
31598131598
31599131599
31603131603
31607131607
31609131609
31611131611
31612131612
31616131616
31617131617
31619263238
316204126480
31623263246
31624131624
31626131626
31628131628
31630131630
31631394893
31632131632
31633131633
31635131635
31636131636
31637131637
31639131639
31643131643
31651131651
31655394965
31658131658
31665131665
31668263336
31670131670
31671131671
31672131672
31674131674
31680131680
31682131682
31684131684
31687131687
31693131693
31694131694
31697131697
31698263396
31699131699
31700131700
31701131701
31702131702
31704131704
31706131706
31708131708
31709395127
31710131710
31711263422
31713131713
31715131715
31716131716
31717131717
31722131722
31726131726
31727131727
31735131735
31737131737
31739131739
31740395220
31741131741
31743131743
31745263490
31747131747
31748131748
31749263498
31750131750
31753131753
31754131754
31759263518
31762131762
31763131763
31764131764
31765131765
31768131768
31769131769
31770263540
31773131773
31783263566
31791131791
31793131793
31794395382
31797131797
31799263598
31800395400
31803131803
31807131807
31818131818
31823131823
31829131829
31830263660
31833131833
31834131834
31836131836
31837131837
31846131846
31848263696
31849131849
31858131858
31859263718
31860131860
31866131866
31868131868
31869131869
31872131872
31874131874
31875131875
31876131876
31877131877
31879263758
31893131893
31896131896
31899131899
31924131924
31925131925
31929131929
31934131934
31938263876
31939263878
31940263880
31947131947
31951131951
31954131954
31966131966
31967131967
31973131973
31975131975
31978131978
31993263986
31997131997
32000264000
32003132003
32013132013
32014132014
32015132015
32026132026
32034132034
32036132036
32039132039
32063396189
32066132066
32071132071
32072264144
32073132073
32074132074
32075132075
32080264160
32084132084
32086132086
32088132088
32093132093
32095132095
32098396294
32101132101
32102132102
32107132107
32112132112
32114132114
32115132115
32116132116
32120132120
32122132122
32125132125
32127132127
32128396384
32131264262
32133132133
32137132137
32139132139
32140132140
32146132146
32154264308
32155132155
32158396474
32159396477
32160264320
32161132161
32166264332
32174132174
32175132175
32177264354
32178264356
32182132182
32183132183
32184132184
32186264372
32189396567
32191132191
32195132195
32199132199
32200264400
32203132203
32204132204
32207132207
32211132211
32213264426
32218132218
32222132222
32225132225
32226264452
32228132228
32231132231
32232132232
32235396705
32241132241
32244132244
32245132245
32248132248
32250132250
32258132258
32261132261
32269132269
32300132300
32311132311
32313132313
32330264660
32331132331
32332132332
32341132341
32366264732
32367132367
Total100224935828
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333831266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882233254c620da
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3233333235346336
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_5_8.json b/autobahn/client/tungstenite_case_12_5_8.json new file mode 100644 index 0000000..5beda64 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_8.json @@ -0,0 +1,1824 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 381, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 2860, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=381&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 4E2qegctedwEE6qbpwuljw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 8UwdvUXd9KucTkMrsIOD0Rw2JCU=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.5.8", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "2095": 1, + "2109": 1, + "2145": 1, + "2148": 1, + "2154": 1, + "2306": 1, + "2536": 1, + "2552": 1, + "2563": 1, + "2575": 1, + "2586": 1, + "2597": 1, + "2599": 1, + "2618": 1, + "2637": 1, + "2669": 1, + "2690": 1, + "2691": 1, + "2705": 1, + "2707": 1, + "2709": 1, + "2717": 1, + "2720": 1, + "2746": 1, + "2758": 1, + "2763": 1, + "2784": 1, + "2794": 1, + "2809": 1, + "2812": 1, + "2856": 1, + "2876": 1, + "2982": 1, + "3007": 1, + "3182": 1, + "3187": 1, + "3194": 1, + "3360": 1, + "3379": 1, + "3457": 1, + "3483": 1, + "3492": 1, + "3501": 1, + "3513": 1, + "3524": 1, + "3598": 1, + "3618": 1, + "3626": 1, + "3648": 1, + "3844": 1, + "3851": 1, + "3854": 1, + "3878": 1, + "3920": 1, + "3981": 1, + "4043": 1, + "4045": 1, + "4141": 1, + "4148": 1, + "4214": 1, + "4217": 1, + "4228": 1, + "4251": 1, + "4413": 1, + "4462": 1, + "4567": 1, + "4665": 1, + "4692": 1, + "4757": 1, + "4777": 1, + "4919": 1, + "4926": 1, + "4929": 1, + "5053": 1, + "5133": 1, + "5321": 1, + "5379": 1, + "5403": 1, + "5574": 1, + "5594": 1, + "5712": 1, + "5720": 1, + "5741": 1, + "5748": 1, + "5754": 1, + "5757": 1, + "5796": 1, + "5804": 1, + "5816": 2, + "5829": 1, + "5851": 1, + "5864": 1, + "5880": 1, + "5929": 1, + "5930": 1, + "5933": 1, + "5936": 1, + "5964": 1, + "6148": 1, + "6167": 1, + "6260": 1, + "6282": 1, + "6294": 1, + "6474": 1, + "6507": 1, + "6509": 1, + "6529": 1, + "6721": 1, + "6911": 1, + "7119": 1, + "7152": 1, + "7249": 1, + "7262": 1, + "7293": 1, + "7328": 1, + "7524": 1, + "7702": 1, + "7713": 1, + "7746": 1, + "7775": 1, + "7978": 1, + "8094": 1, + "8199": 1, + "8221": 1, + "8231": 1, + "8286": 1, + "8296": 1, + "8319": 1, + "8428": 1, + "8473": 1, + "8476": 1, + "8549": 1, + "8594": 1, + "8602": 1, + "8643": 1, + "8648": 1, + "8650": 1, + "8653": 1, + "8662": 1, + "8678": 1, + "8686": 1, + "8689": 2, + "8693": 1, + "8697": 1, + "8734": 1, + "8947": 1, + "8958": 1, + "9091": 1, + "9124": 1, + "9170": 1, + "9307": 1, + "9380": 1, + "9436": 1, + "9455": 1, + "9985": 1, + "10138": 1, + "10530": 1, + "10648": 1, + "10680": 1, + "10750": 1, + "11085": 1, + "11262": 1, + "11477": 1, + "11567": 1, + "11627": 1, + "11717": 1, + "11748": 1, + "11864": 1, + "11893": 1, + "11953": 1, + "12100": 1, + "12123": 1, + "12140": 1, + "12582": 1, + "12662": 1, + "12690": 1, + "12838": 1, + "13248": 1, + "13605": 1, + "13641": 1, + "13720": 1, + "13851": 1, + "13992": 1, + "14317": 1, + "14362": 1, + "14374": 1, + "14719": 1, + "14985": 1, + "15097": 1, + "15247": 1, + "15262": 1, + "15302": 1, + "15390": 1, + "15541": 1, + "15980": 1, + "16074": 1, + "16151": 1, + "16223": 1, + "16408": 1, + "16490": 1, + "16673": 1, + "16800": 1, + "17014": 1, + "17087": 1, + "17141": 1, + "17182": 1, + "17579": 1, + "17705": 1, + "17849": 1, + "18221": 1, + "18493": 1, + "18775": 1, + "18884": 1, + "18919": 1, + "19025": 1, + "19420": 1, + "19440": 1, + "19449": 1, + "19528": 1, + "19585": 1, + "19694": 1, + "19719": 1, + "19788": 1, + "20000": 1, + "20005": 1, + "20102": 1, + "20154": 1, + "20173": 1, + "20212": 1, + "20308": 1, + "20333": 1, + "20485": 1, + "20487": 1, + "20547": 1, + "20595": 1, + "20614": 1, + "20627": 1, + "20670": 1, + "20696": 1, + "20701": 1, + "20704": 1, + "20718": 1, + "20777": 1, + "20779": 1, + "20792": 1, + "20834": 2, + "20840": 1, + "20849": 1, + "20852": 1, + "20857": 1, + "20890": 1, + "20895": 1, + "20907": 1, + "20912": 1, + "21003": 1, + "21013": 1, + "21017": 1, + "21056": 1, + "21108": 1, + "21131": 1, + "21143": 1, + "21170": 1, + "21253": 1, + "21285": 1, + "21313": 1, + "21314": 1, + "21337": 1, + "21340": 1, + "21438": 1, + "21443": 1, + "21480": 1, + "21507": 1, + "21519": 1, + "21534": 1, + "21536": 1, + "21604": 1, + "21613": 1, + "21631": 1, + "21641": 1, + "21656": 1, + "21671": 1, + "21675": 1, + "21707": 1, + "21744": 1, + "21745": 1, + "21747": 1, + "21760": 1, + "21785": 1, + "21788": 1, + "21817": 1, + "21831": 1, + "21838": 1, + "21852": 1, + "21870": 1, + "21879": 1, + "21930": 1, + "21944": 1, + "21957": 1, + "21971": 1, + "22040": 1, + "22052": 1, + "22104": 1, + "22158": 1, + "22163": 1, + "22168": 1, + "22180": 1, + "22188": 1, + "22189": 1, + "22203": 1, + "22343": 1, + "22344": 1, + "22358": 1, + "22391": 1, + "22463": 1, + "22539": 1, + "22561": 1, + "22582": 1, + "22594": 1, + "22605": 1, + "22618": 1, + "22625": 1, + "22631": 1, + "22639": 1, + "22644": 1, + "22646": 1, + "22648": 1, + "22655": 1, + "22661": 1, + "22664": 1, + "22671": 1, + "22704": 1, + "22705": 1, + "22742": 1, + "22746": 1, + "22747": 1, + "22769": 1, + "22792": 1, + "22801": 1, + "22815": 1, + "22847": 1, + "22876": 1, + "22919": 1, + "22926": 1, + "22969": 1, + "22977": 1, + "23000": 1, + "23002": 1, + "23007": 2, + "23012": 1, + "23014": 1, + "23032": 1, + "23043": 1, + "23065": 1, + "23109": 1, + "23143": 1, + "23168": 1, + "23175": 1, + "23180": 1, + "23190": 1, + "23341": 1, + "23361": 1, + "23384": 1, + "24132": 1, + "24234": 1, + "24421": 1, + "25293": 1, + "25399": 1, + "25558": 1, + "26426": 1, + "26962": 1, + "27033": 1, + "27303": 1, + "28204": 1, + "28327": 1, + "28461": 1, + "28564": 1, + "29439": 1, + "29540": 1, + "29546": 1, + "30504": 2, + "30508": 1, + "30510": 1, + "30580": 1, + "30602": 1, + "30615": 1, + "30655": 1, + "30656": 1, + "30696": 2, + "30711": 1, + "30714": 1, + "30715": 1, + "30716": 1, + "30717": 1, + "30721": 1, + "30731": 1, + "30740": 2, + "30746": 1, + "30748": 1, + "30821": 1, + "30830": 1, + "30876": 1, + "30882": 1, + "30883": 1, + "30884": 1, + "30897": 1, + "30910": 1, + "30948": 2, + "30951": 2, + "30952": 1, + "30986": 1, + "30988": 1, + "30989": 2, + "30993": 1, + "30995": 1, + "31044": 1, + "31061": 1, + "31073": 2, + "31076": 2, + "31081": 1, + "31082": 1, + "31083": 1, + "31084": 2, + "31087": 1, + "31090": 1, + "31093": 1, + "31094": 1, + "31101": 1, + "31104": 1, + "31105": 1, + "31108": 1, + "31115": 1, + "31120": 1, + "31123": 1, + "31126": 1, + "31127": 3, + "31128": 1, + "31131": 1, + "31132": 2, + "31133": 1, + "31136": 2, + "31154": 2, + "31155": 1, + "31157": 4, + "31158": 2, + "31160": 2, + "31161": 1, + "31162": 2, + "31167": 1, + "31168": 1, + "31169": 1, + "31170": 3, + "31171": 2, + "31173": 1, + "31174": 1, + "31175": 4, + "31176": 1, + "31178": 2, + "31180": 1, + "31182": 1, + "31202": 2, + "31208": 1, + "31209": 2, + "31225": 1, + "31227": 1, + "31233": 1, + "31240": 1, + "31242": 1, + "31243": 1, + "31249": 1, + "31253": 1, + "31254": 1, + "31262": 1, + "31266": 4, + "31267": 1, + "31268": 2, + "31269": 2, + "31274": 2, + "31300": 1, + "31301": 2, + "31303": 1, + "31304": 1, + "31305": 1, + "31307": 1, + "31310": 2, + "31311": 1, + "31312": 1, + "31314": 4, + "31316": 1, + "31318": 1, + "31319": 1, + "31321": 1, + "31323": 1, + "31324": 1, + "31326": 1, + "31328": 3, + "31330": 1, + "31331": 1, + "31332": 4, + "31334": 3, + "31335": 2, + "31336": 1, + "31337": 1, + "31338": 1, + "31342": 1, + "31346": 1, + "31347": 1, + "31348": 1, + "31349": 1, + "31350": 2, + "31352": 1, + "31356": 4, + "31357": 1, + "31359": 2, + "31361": 2, + "31365": 1, + "31366": 1, + "31367": 1, + "31369": 2, + "31370": 1, + "31371": 2, + "31374": 1, + "31375": 2, + "31376": 2, + "31381": 1, + "31382": 2, + "31393": 1, + "31394": 5, + "31395": 1, + "31397": 1, + "31398": 1, + "31400": 1, + "31401": 1, + "31402": 1, + "31408": 2, + "31414": 1, + "31415": 3, + "31417": 2, + "31418": 2, + "31420": 2, + "31421": 1, + "31427": 2, + "31432": 1, + "31433": 2, + "31435": 1, + "31437": 1, + "31438": 1, + "31441": 1, + "31445": 1, + "31447": 1, + "31450": 1, + "31454": 2, + "31456": 1, + "31458": 1, + "31459": 1, + "31460": 1, + "31461": 3, + "31464": 1, + "31466": 2, + "31468": 1, + "31469": 1, + "31470": 1, + "31471": 1, + "31472": 1, + "31473": 1, + "31474": 1, + "31479": 1, + "31480": 1, + "31486": 1, + "31488": 1, + "31489": 2, + "31490": 2, + "31491": 1, + "31492": 1, + "31494": 1, + "31496": 1, + "31498": 1, + "31502": 1, + "31505": 2, + "31506": 1, + "31507": 1, + "31513": 1, + "31514": 1, + "31516": 1, + "31517": 2, + "31518": 2, + "31522": 2, + "31523": 2, + "31524": 1, + "31527": 1, + "31528": 1, + "31529": 2, + "31530": 1, + "31531": 1, + "31540": 1, + "31546": 2, + "31555": 2, + "31556": 2, + "31559": 2, + "31560": 1, + "31563": 2, + "31564": 1, + "31565": 2, + "31566": 1, + "31567": 1, + "31568": 2, + "31575": 2, + "31576": 3, + "31580": 1, + "31582": 1, + "31583": 3, + "31586": 2, + "31587": 1, + "31591": 1, + "31593": 2, + "31594": 1, + "31602": 2, + "31603": 1, + "31606": 1, + "31608": 1, + "31611": 1, + "31613": 1, + "31614": 1, + "31616": 1, + "31617": 1, + "31619": 2, + "31620": 1, + "31624": 1, + "31625": 2, + "31626": 2, + "31629": 1, + "31630": 1, + "31631": 1, + "31632": 2, + "31633": 1, + "31637": 2, + "31639": 1, + "31640": 1, + "31644": 1, + "31650": 1, + "31651": 2, + "31654": 1, + "31658": 1, + "31662": 2, + "31663": 1, + "31664": 1, + "31665": 1, + "31668": 2, + "31679": 1, + "31682": 1, + "31683": 1, + "31685": 1, + "31692": 1, + "31695": 1, + "31696": 1, + "31699": 2, + "31700": 3, + "31701": 1, + "31702": 1, + "31703": 1, + "31705": 2, + "31706": 3, + "31708": 2, + "31709": 1, + "31711": 1, + "31715": 1, + "31719": 1, + "31726": 2, + "31730": 1, + "31732": 1, + "31733": 1, + "31736": 2, + "31739": 2, + "31740": 1, + "31743": 1, + "31744": 1, + "31745": 1, + "31746": 1, + "31747": 1, + "31749": 1, + "31753": 1, + "31754": 1, + "31755": 1, + "31756": 1, + "31758": 2, + "31763": 2, + "31764": 2, + "31766": 2, + "31767": 1, + "31768": 1, + "31773": 1, + "31782": 1, + "31784": 1, + "31785": 1, + "31794": 1, + "31795": 1, + "31797": 1, + "31798": 5, + "31799": 2, + "31801": 1, + "31807": 1, + "31812": 1, + "31823": 1, + "31827": 1, + "31828": 1, + "31829": 1, + "31830": 1, + "31837": 1, + "31838": 1, + "31839": 1, + "31845": 1, + "31847": 1, + "31852": 1, + "31853": 1, + "31862": 1, + "31863": 2, + "31864": 1, + "31870": 1, + "31872": 1, + "31873": 1, + "31876": 1, + "31878": 1, + "31879": 1, + "31880": 1, + "31881": 1, + "31883": 2, + "31889": 1, + "31900": 1, + "31903": 1, + "31916": 1, + "31917": 1, + "31930": 1, + "31935": 1, + "31939": 2, + "31940": 1, + "31941": 1, + "31943": 1, + "31944": 1, + "31948": 1, + "31955": 1, + "31958": 1, + "31964": 1, + "31966": 1, + "31973": 1, + "31974": 1, + "31982": 1, + "31997": 2, + "32001": 1, + "32003": 1, + "32004": 2, + "32015": 1, + "32017": 1, + "32018": 1, + "32030": 1, + "32038": 1, + "32040": 1, + "32043": 1, + "32067": 3, + "32070": 1, + "32073": 1, + "32075": 1, + "32076": 2, + "32078": 1, + "32079": 1, + "32084": 2, + "32088": 1, + "32090": 1, + "32092": 1, + "32097": 1, + "32099": 1, + "32102": 3, + "32105": 1, + "32106": 1, + "32111": 1, + "32114": 1, + "32115": 1, + "32116": 1, + "32118": 1, + "32124": 1, + "32126": 1, + "32129": 1, + "32131": 1, + "32132": 3, + "32135": 2, + "32137": 1, + "32141": 1, + "32143": 1, + "32144": 1, + "32150": 1, + "32158": 2, + "32159": 1, + "32162": 3, + "32163": 3, + "32164": 2, + "32165": 1, + "32170": 2, + "32178": 1, + "32179": 1, + "32181": 2, + "32182": 2, + "32186": 1, + "32187": 1, + "32188": 1, + "32190": 2, + "32193": 3, + "32195": 1, + "32199": 1, + "32203": 1, + "32204": 2, + "32207": 1, + "32208": 1, + "32211": 1, + "32215": 1, + "32217": 2, + "32222": 1, + "32226": 1, + "32229": 1, + "32230": 2, + "32232": 1, + "32235": 1, + "32236": 1, + "32239": 3, + "32245": 1, + "32248": 1, + "32249": 1, + "32252": 1, + "32254": 1, + "32262": 1, + "32265": 1, + "32273": 1, + "32304": 1, + "32315": 1, + "32317": 1, + "32334": 2, + "32335": 1, + "32336": 1, + "32345": 1, + "32370": 2, + "32371": 1 + }, + "started": "2020-09-07T18:50:37.829Z", + "trafficStats": { + "incomingCompressionRatio": 0.7599775390625, + "incomingOctetsAppLevel": 32768000, + "incomingOctetsWebSocketLevel": 24902944, + "incomingOctetsWireLevel": 24910944, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.00032124715856888245, + "outgoingCompressionRatio": 0.7608511962890625, + "outgoingOctetsAppLevel": 32768000, + "outgoingOctetsWebSocketLevel": 24931572, + "outgoingOctetsWireLevel": 24935572, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.00016043914118211237, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "2108": 1, + "2122": 1, + "2157": 1, + "2159": 1, + "2170": 1, + "2322": 1, + "2613": 1, + "2651": 1, + "2681": 1, + "2701": 1, + "2710": 1, + "2721": 1, + "2739": 1, + "2741": 1, + "2776": 1, + "2823": 1, + "2834": 1, + "2845": 1, + "2857": 1, + "2859": 1, + "2861": 1, + "2865": 1, + "2880": 1, + "2897": 1, + "2903": 1, + "2908": 1, + "2925": 1, + "2945": 1, + "2954": 1, + "2956": 1, + "3006": 1, + "3024": 1, + "3135": 1, + "3144": 1, + "3201": 1, + "3216": 1, + "3338": 1, + "3489": 1, + "3503": 1, + "3511": 1, + "3515": 1, + "3518": 1, + "3549": 1, + "3641": 1, + "3643": 1, + "3674": 1, + "3711": 1, + "3737": 1, + "3757": 1, + "3930": 1, + "3954": 1, + "3991": 1, + "4000": 1, + "4001": 1, + "4062": 1, + "4069": 1, + "4200": 1, + "4226": 1, + "4236": 1, + "4379": 1, + "4398": 1, + "4408": 1, + "4442": 1, + "4624": 1, + "4663": 1, + "4678": 1, + "4778": 1, + "4887": 1, + "4908": 1, + "4911": 1, + "5038": 1, + "5147": 1, + "5156": 1, + "5286": 1, + "5365": 1, + "5432": 1, + "5628": 1, + "5655": 1, + "5732": 1, + "5740": 1, + "5758": 1, + "5767": 1, + "5773": 1, + "5781": 1, + "5822": 1, + "5824": 1, + "5842": 1, + "5849": 1, + "5873": 1, + "5903": 1, + "5924": 1, + "5925": 1, + "5951": 1, + "5952": 1, + "5958": 1, + "5963": 1, + "5975": 1, + "5989": 1, + "6056": 1, + "6175": 1, + "6274": 1, + "6307": 1, + "6319": 1, + "6362": 1, + "6574": 1, + "6613": 2, + "6631": 1, + "6753": 1, + "7024": 1, + "7220": 1, + "7261": 1, + "7328": 1, + "7352": 1, + "7372": 1, + "7445": 1, + "7790": 1, + "7799": 1, + "7819": 1, + "7820": 1, + "7830": 1, + "8080": 1, + "8198": 1, + "8274": 1, + "8312": 1, + "8335": 1, + "8339": 1, + "8401": 1, + "8429": 1, + "8517": 1, + "8567": 1, + "8581": 1, + "8609": 1, + "8654": 1, + "8673": 1, + "8725": 1, + "8727": 1, + "8730": 2, + "8738": 1, + "8741": 1, + "8764": 1, + "8772": 1, + "8774": 1, + "8775": 1, + "8781": 1, + "8822": 1, + "9010": 1, + "9054": 1, + "9192": 1, + "9269": 1, + "9373": 1, + "9411": 1, + "9438": 1, + "9495": 1, + "9514": 1, + "10073": 1, + "10239": 1, + "10631": 1, + "10748": 1, + "10914": 1, + "10982": 1, + "11159": 1, + "11354": 1, + "11548": 1, + "11631": 1, + "11731": 1, + "11854": 1, + "11946": 1, + "11994": 1, + "12050": 1, + "12098": 1, + "12198": 1, + "12220": 1, + "12245": 1, + "12642": 1, + "12720": 1, + "12790": 1, + "13077": 1, + "13350": 1, + "13662": 1, + "13735": 1, + "13814": 1, + "13935": 1, + "14224": 1, + "14400": 1, + "14401": 1, + "14454": 1, + "14791": 1, + "15206": 1, + "15287": 1, + "15321": 1, + "15335": 1, + "15341": 1, + "15465": 1, + "15601": 1, + "16016": 1, + "16110": 1, + "16351": 1, + "16421": 1, + "16456": 1, + "16540": 1, + "16736": 1, + "16861": 1, + "17119": 1, + "17168": 1, + "17193": 1, + "17214": 1, + "17632": 1, + "17730": 1, + "17874": 1, + "18382": 1, + "18503": 1, + "18783": 1, + "18908": 1, + "18943": 1, + "19078": 1, + "19466": 1, + "19477": 1, + "19566": 1, + "19592": 1, + "19668": 1, + "19701": 1, + "19715": 1, + "19784": 1, + "19996": 1, + "20021": 1, + "20098": 1, + "20150": 1, + "20178": 1, + "20218": 1, + "20329": 1, + "20362": 1, + "20480": 1, + "20483": 1, + "20543": 1, + "20610": 1, + "20623": 1, + "20666": 1, + "20690": 1, + "20697": 1, + "20714": 1, + "20726": 1, + "20775": 1, + "20783": 1, + "20788": 1, + "20830": 2, + "20835": 1, + "20836": 1, + "20845": 1, + "20848": 1, + "20853": 1, + "20886": 1, + "20891": 1, + "20908": 1, + "20912": 1, + "21003": 1, + "21009": 1, + "21013": 1, + "21051": 1, + "21104": 1, + "21129": 1, + "21136": 1, + "21168": 1, + "21251": 1, + "21284": 1, + "21308": 1, + "21309": 1, + "21336": 1, + "21337": 1, + "21438": 1, + "21451": 1, + "21479": 1, + "21506": 1, + "21525": 1, + "21532": 1, + "21533": 1, + "21609": 1, + "21630": 1, + "21638": 1, + "21648": 1, + "21651": 1, + "21669": 1, + "21670": 1, + "21742": 1, + "21744": 1, + "21750": 1, + "21752": 1, + "21760": 1, + "21787": 1, + "21788": 1, + "21819": 1, + "21832": 1, + "21851": 1, + "21865": 1, + "21873": 1, + "21926": 1, + "21942": 1, + "21948": 1, + "21957": 1, + "21964": 1, + "22037": 1, + "22051": 1, + "22100": 1, + "22156": 1, + "22160": 1, + "22163": 1, + "22175": 1, + "22186": 2, + "22202": 1, + "22339": 1, + "22343": 1, + "22354": 1, + "22387": 1, + "22466": 1, + "22540": 1, + "22563": 1, + "22587": 1, + "22597": 1, + "22608": 1, + "22620": 1, + "22627": 1, + "22629": 1, + "22635": 1, + "22640": 1, + "22642": 1, + "22644": 1, + "22653": 1, + "22657": 1, + "22660": 1, + "22669": 1, + "22703": 1, + "22705": 1, + "22737": 1, + "22748": 2, + "22769": 1, + "22792": 1, + "22797": 1, + "22811": 1, + "22843": 1, + "22879": 1, + "22916": 1, + "22922": 1, + "22966": 1, + "22996": 1, + "23003": 3, + "23010": 1, + "23029": 1, + "23039": 1, + "23061": 1, + "23063": 1, + "23072": 1, + "23107": 1, + "23165": 1, + "23171": 1, + "23176": 1, + "23186": 1, + "23192": 1, + "23336": 1, + "23357": 1, + "23380": 1, + "24204": 1, + "24308": 1, + "24463": 1, + "25356": 1, + "25463": 1, + "25599": 1, + "26486": 1, + "26979": 1, + "27045": 1, + "27339": 1, + "28214": 1, + "28337": 1, + "28487": 1, + "28589": 1, + "29457": 1, + "29553": 1, + "29554": 1, + "30504": 2, + "30508": 1, + "30512": 1, + "30587": 1, + "30611": 1, + "30614": 1, + "30663": 1, + "30664": 1, + "30702": 1, + "30706": 1, + "30709": 1, + "30717": 2, + "30725": 1, + "30726": 1, + "30730": 1, + "30735": 1, + "30749": 1, + "30750": 1, + "30751": 1, + "30754": 1, + "30828": 1, + "30829": 1, + "30886": 1, + "30891": 1, + "30892": 1, + "30893": 1, + "30899": 1, + "30928": 1, + "30959": 1, + "30960": 4, + "31004": 1, + "31006": 2, + "31007": 1, + "31012": 1, + "31013": 1, + "31060": 1, + "31064": 1, + "31078": 1, + "31086": 1, + "31088": 2, + "31089": 1, + "31091": 2, + "31092": 1, + "31096": 1, + "31097": 1, + "31098": 1, + "31099": 1, + "31102": 1, + "31109": 1, + "31112": 1, + "31115": 1, + "31119": 1, + "31121": 1, + "31122": 1, + "31124": 1, + "31131": 1, + "31133": 1, + "31134": 2, + "31136": 1, + "31137": 2, + "31142": 1, + "31147": 1, + "31149": 1, + "31150": 1, + "31159": 3, + "31160": 2, + "31162": 1, + "31163": 1, + "31165": 1, + "31166": 2, + "31167": 2, + "31174": 2, + "31175": 1, + "31176": 4, + "31177": 2, + "31178": 4, + "31179": 1, + "31180": 1, + "31181": 4, + "31182": 1, + "31196": 1, + "31205": 1, + "31208": 1, + "31214": 1, + "31220": 1, + "31221": 1, + "31228": 1, + "31230": 1, + "31231": 1, + "31238": 1, + "31248": 1, + "31249": 2, + "31254": 1, + "31258": 1, + "31260": 1, + "31267": 1, + "31269": 1, + "31270": 1, + "31272": 2, + "31273": 1, + "31274": 1, + "31275": 1, + "31279": 1, + "31285": 1, + "31286": 1, + "31301": 1, + "31302": 1, + "31304": 1, + "31306": 1, + "31308": 2, + "31309": 1, + "31310": 1, + "31311": 1, + "31313": 1, + "31319": 2, + "31320": 2, + "31321": 2, + "31322": 1, + "31325": 1, + "31326": 1, + "31327": 2, + "31328": 1, + "31329": 2, + "31330": 1, + "31332": 1, + "31333": 3, + "31334": 2, + "31337": 4, + "31338": 1, + "31339": 1, + "31340": 2, + "31349": 1, + "31351": 1, + "31352": 1, + "31354": 2, + "31355": 1, + "31356": 2, + "31358": 1, + "31360": 2, + "31361": 1, + "31364": 1, + "31366": 1, + "31367": 1, + "31368": 2, + "31371": 2, + "31372": 1, + "31373": 1, + "31376": 1, + "31379": 1, + "31381": 2, + "31382": 4, + "31385": 2, + "31388": 1, + "31389": 1, + "31396": 1, + "31397": 1, + "31398": 1, + "31399": 1, + "31401": 4, + "31403": 1, + "31404": 2, + "31406": 1, + "31407": 2, + "31414": 1, + "31415": 1, + "31416": 2, + "31418": 1, + "31419": 2, + "31423": 1, + "31424": 1, + "31425": 1, + "31428": 2, + "31433": 1, + "31437": 2, + "31438": 2, + "31440": 1, + "31441": 1, + "31442": 1, + "31444": 2, + "31449": 3, + "31452": 1, + "31455": 1, + "31456": 2, + "31457": 1, + "31460": 2, + "31464": 1, + "31467": 1, + "31470": 1, + "31471": 1, + "31474": 2, + "31475": 1, + "31478": 1, + "31479": 1, + "31480": 2, + "31481": 1, + "31492": 2, + "31495": 2, + "31496": 2, + "31497": 2, + "31498": 1, + "31500": 1, + "31502": 1, + "31503": 1, + "31504": 2, + "31510": 1, + "31511": 1, + "31518": 1, + "31521": 1, + "31522": 1, + "31524": 1, + "31525": 2, + "31526": 1, + "31528": 1, + "31529": 2, + "31532": 3, + "31533": 2, + "31535": 1, + "31536": 1, + "31538": 1, + "31546": 1, + "31548": 1, + "31549": 1, + "31553": 1, + "31554": 1, + "31561": 2, + "31564": 1, + "31565": 2, + "31566": 1, + "31568": 2, + "31569": 3, + "31571": 1, + "31572": 1, + "31575": 1, + "31578": 1, + "31579": 2, + "31581": 2, + "31586": 2, + "31588": 2, + "31589": 2, + "31591": 1, + "31592": 2, + "31596": 1, + "31598": 1, + "31599": 1, + "31603": 1, + "31607": 1, + "31609": 1, + "31611": 1, + "31612": 1, + "31616": 1, + "31617": 1, + "31619": 2, + "31620": 4, + "31623": 2, + "31624": 1, + "31626": 1, + "31628": 1, + "31630": 1, + "31631": 3, + "31632": 1, + "31633": 1, + "31635": 1, + "31636": 1, + "31637": 1, + "31639": 1, + "31643": 1, + "31651": 1, + "31655": 3, + "31658": 1, + "31665": 1, + "31668": 2, + "31670": 1, + "31671": 1, + "31672": 1, + "31674": 1, + "31680": 1, + "31682": 1, + "31684": 1, + "31687": 1, + "31693": 1, + "31694": 1, + "31697": 1, + "31698": 2, + "31699": 1, + "31700": 1, + "31701": 1, + "31702": 1, + "31704": 1, + "31706": 1, + "31708": 1, + "31709": 3, + "31710": 1, + "31711": 2, + "31713": 1, + "31715": 1, + "31716": 1, + "31717": 1, + "31722": 1, + "31726": 1, + "31727": 1, + "31735": 1, + "31737": 1, + "31739": 1, + "31740": 3, + "31741": 1, + "31743": 1, + "31745": 2, + "31747": 1, + "31748": 1, + "31749": 2, + "31750": 1, + "31753": 1, + "31754": 1, + "31759": 2, + "31762": 1, + "31763": 1, + "31764": 1, + "31765": 1, + "31768": 1, + "31769": 1, + "31770": 2, + "31773": 1, + "31783": 2, + "31791": 1, + "31793": 1, + "31794": 3, + "31797": 1, + "31799": 2, + "31800": 3, + "31803": 1, + "31807": 1, + "31818": 1, + "31823": 1, + "31829": 1, + "31830": 2, + "31833": 1, + "31834": 1, + "31836": 1, + "31837": 1, + "31846": 1, + "31848": 2, + "31849": 1, + "31858": 1, + "31859": 2, + "31860": 1, + "31866": 1, + "31868": 1, + "31869": 1, + "31872": 1, + "31874": 1, + "31875": 1, + "31876": 1, + "31877": 1, + "31879": 2, + "31893": 1, + "31896": 1, + "31899": 1, + "31924": 1, + "31925": 1, + "31929": 1, + "31934": 1, + "31938": 2, + "31939": 2, + "31940": 2, + "31947": 1, + "31951": 1, + "31954": 1, + "31966": 1, + "31967": 1, + "31973": 1, + "31975": 1, + "31978": 1, + "31993": 2, + "31997": 1, + "32000": 2, + "32003": 1, + "32013": 1, + "32014": 1, + "32015": 1, + "32026": 1, + "32034": 1, + "32036": 1, + "32039": 1, + "32063": 3, + "32066": 1, + "32071": 1, + "32072": 2, + "32073": 1, + "32074": 1, + "32075": 1, + "32080": 2, + "32084": 1, + "32086": 1, + "32088": 1, + "32093": 1, + "32095": 1, + "32098": 3, + "32101": 1, + "32102": 1, + "32107": 1, + "32112": 1, + "32114": 1, + "32115": 1, + "32116": 1, + "32120": 1, + "32122": 1, + "32125": 1, + "32127": 1, + "32128": 3, + "32131": 2, + "32133": 1, + "32137": 1, + "32139": 1, + "32140": 1, + "32146": 1, + "32154": 2, + "32155": 1, + "32158": 3, + "32159": 3, + "32160": 2, + "32161": 1, + "32166": 2, + "32174": 1, + "32175": 1, + "32177": 2, + "32178": 2, + "32182": 1, + "32183": 1, + "32184": 1, + "32186": 2, + "32189": 3, + "32191": 1, + "32195": 1, + "32199": 1, + "32200": 2, + "32203": 1, + "32204": 1, + "32207": 1, + "32211": 1, + "32213": 2, + "32218": 1, + "32222": 1, + "32225": 1, + "32226": 2, + "32228": 1, + "32231": 1, + "32232": 1, + "32235": 3, + "32241": 1, + "32244": 1, + "32245": 1, + "32248": 1, + "32250": 1, + "32258": 1, + "32261": 1, + "32269": 1, + "32300": 1, + "32311": 1, + "32313": 1, + "32330": 2, + "32331": 1, + "32332": 1, + "32341": 1, + "32366": 2, + "32367": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333831266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882233254c620da" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "233254c6" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_12_5_9.html b/autobahn/client/tungstenite_case_12_5_9.html new file mode 100644 index 0000000..5e98360 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_9.html @@ -0,0 +1,2006 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 12.5.9 : Pass - 5325 ms @ 2020-09-07T18:50:40.691Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=382&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: PJFriqSKT7d+Sk0InZNUxQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: qrTR1LeibyD1CfossrTROjwV3BE=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
687616876
688116881
689216892
699216992
7000214000
719817198
720217202
720817208
723217232
724517245
725717257
748517485
751317513
752117521
776317763
778617786
781217812
814518145
816818168
817018170
852218522
863118631
871918719
876818768
891118911
940819408
941319413
944119441
946819468
948919489
949119491
980119801
9808219616
983019830
984419844
986119861
10302110302
10313110313
10365110365
10424110424
10439110439
10484110484
10714110714
10715110715
10721110721
10923110923
10951110951
10976110976
10977110977
11068111068
11114111114
11148111148
11184111184
11190111190
11205111205
11236111236
11305111305
11459111459
11587111587
11693111693
11887111887
11890111890
12005112005
12017112017
12099112099
12150112150
12604112604
12686112686
12784112784
13214113214
13340113340
13454113454
13788113788
13916113916
13981113981
14133114133
14147114147
14154114154
14167114167
14178114178
14183114183
14290114290
14298114298
14304114304
14358114358
14387114387
14394114394
14395114395
14452114452
14515114515
14518114518
14525114525
14558114558
14617114617
14627114627
14631114631
14645114645
14651114651
14658114658
14767114767
14894114894
15036115036
15696115696
15829115829
15904115904
15973115973
16019116019
16066116066
16484116484
16559116559
16675116675
17360117360
17497117497
17633117633
17817117817
17905117905
17996117996
18010118010
18108118108
18158118158
18658118658
18778118778
18918118918
19271119271
19385119385
19505119505
20149120149
20213120213
20271120271
20308120308
20394120394
20432120432
20676120676
20693120693
20709120709
21427121427
21529121529
21586121586
21686121686
21688121688
21698121698
22304122304
22313122313
22319122319
22659122659
22774122774
22817122817
22901122901
22953122953
23084123084
23657123657
23760123760
23867123867
23938123938
24048124048
24176124176
25067125067
25195125195
25313125313
25467125467
25541125541
25590125590
25648125648
25699125699
25792125792
26369126369
26396126396
26463126463
26966126966
27068127068
27185127185
27617127617
27649127649
27682127682
28068128068
28202128202
28337128337
28891128891
28972128972
28974128974
29080129080
29116129116
29152129152
29177129177
29278129278
29380129380
30527130527
30550130550
30588130588
30979130979
31099131099
31176131176
31226131226
31271131271
31381131381
31727131727
31863131863
32005132005
32647132647
32721132721
33314133314
33338133338
33419133419
33474133474
33509133509
33611133611
34187134187
34251134251
34301134301
34669134669
34774134774
34869134869
35145135145
35220135220
35231135231
36045136045
36099136099
36152136152
36168136168
36227136227
36278136278
36286136286
36306136306
36355136355
36383136383
36429136429
36446136446
37709137709
37778137778
37831137831
37840137840
37856137856
37889137889
37980137980
37984137984
38051138051
38240138240
38308138308
38379138379
38878138878
39010139010
39069139069
39136139136
39146139146
39199139199
39496139496
39627139627
39706139706
40500140500
40581140581
40586140586
40624140624
40740140740
40804140804
41457141457
41511141511
41529141529
41599141599
41654141654
41668141668
41685141685
41717141717
41722141722
41751141751
41787141787
41842141842
41876141876
41879141879
41888141888
41967141967
41982141982
42004142004
42005142005
42015142015
42036142036
42107142107
42141142141
42222142222
42238142238
42246142246
42256284512
42290142290
42304142304
42347142347
42348284696
42362142362
42364142364
42368142368
42376142376
42380142380
42418142418
42630142630
42633142633
42656142656
42661142661
42708142708
42709142709
42771142771
42782142782
42803142803
42862142862
42865142865
42872142872
42878142878
42942142942
42991142991
43145143145
43214143214
43226286452
43235286470
43270143270
43275143275
43286143286
43304143304
43306143306
43344143344
43467143467
43505143505
43509143509
43533143533
43548143548
43554143554
43562143562
43578143578
43612287224
43619143619
43643143643
43656143656
43662143662
43664143664
43692143692
43707143707
43717143717
43756143756
43773143773
43779143779
43786143786
43790143790
43792143792
43844143844
43848143848
43896143896
43918143918
43919143919
43929143929
43948143948
44052144052
44188144188
44435144435
44522144522
44566144566
44632144632
44690144690
44700144700
44978144978
45089145089
45198145198
45569145569
45577145577
45605145605
45735145735
45738145738
45741145741
45778145778
45824145824
45825145825
45831145831
45837145837
45860145860
45868145868
45886145886
45924145924
46345146345
46438146438
46440146440
47164147164
47295147295
47423147423
48601148601
48708148708
48811148811
49985149985
50097150097
50214150214
50718150718
50825150825
50927150927
52659152659
52711152711
52831152831
53192153192
53296153296
53399153399
55311155311
55408155408
55443155443
55512155512
55572155572
55698155698
57725157725
57833157833
57937157937
58214158214
58328158328
58451158451
59683159683
59734159734
59835159835
61005161005
61129161129
61165161165
61765161765
61767161767
61768161768
61844161844
61847161847
61848161848
619722123944
61973161973
62224162224
62247162247
622492124498
622562124512
62260162260
622642124528
62289162289
62291162291
62293162293
62325162325
62330162330
62331162331
62332162332
62338162338
62361162361
62369162369
62401162401
62406162406
624172124834
62420162420
62423162423
62424162424
62446162446
62449162449
62451162451
62455162455
62458162458
62459162459
62462162462
624732124946
62476162476
62477162477
62478162478
62479162479
62480162480
62481162481
62482162482
624832124966
624852124970
62497162497
62498162498
62499162499
62504162504
62506162506
62507162507
62508162508
62509162509
62510162510
62511162511
62514162514
625162125032
625172125034
625182125036
62523162523
62535162535
62537162537
62538162538
62540162540
62541162541
62542162542
62544162544
62551162551
62555162555
62580162580
62582162582
62586162586
625922125184
626003187800
62622162622
62624162624
626253187875
62626162626
62631162631
62633162633
626355313175
62638162638
62639162639
62640162640
62641162641
62647162647
626482125296
62649162649
62656162656
626682125336
62669162669
62672162672
626732125346
626745313370
62675162675
626762125352
62679162679
626842125368
626862125372
62687162687
626884250752
62708162708
62710162710
627122125424
627133188139
62714162714
62715162715
62716162716
627172125434
62718162718
62719162719
62722162722
62723162723
627262125452
62732162732
62736162736
627373188211
62739162739
627402125480
627412125482
627422125484
62744162744
627453188235
627462125492
62749162749
62757162757
62758162758
62759162759
627612125522
627632125526
627642125528
62766162766
627682125536
62769162769
627702125540
627723188316
627732125546
62774162774
62776162776
62777162777
62782162782
62784162784
62787162787
627892125578
62797162797
627982125596
627992125598
628012125602
62802162802
628052125610
62806162806
628072125614
628082125616
62812162812
62813162813
62827162827
62828162828
62829162829
62833162833
628382125676
62843162843
62844162844
62848162848
62849162849
62874162874
62878162878
628932125786
62894162894
62895162895
628972125794
62898162898
629023188706
62905162905
62914162914
62916162916
62921162921
62922162922
62923162923
629243188772
62929162929
629323188796
62936162936
62939162939
62940162940
62942162942
62945162945
629462125892
629472125894
62948162948
62951162951
62952162952
629532125906
62957162957
629583188874
62960162960
62961162961
62962162962
62964162964
62966162966
629723188916
629732125946
629772125954
62978162978
629792125958
62980162980
629813188943
63001163001
63004163004
630072126014
63015163015
63027163027
63032163032
630462126092
63053163053
631052126210
63108163108
631092126218
63110163110
63111163111
631152126230
63116163116
63119163119
631242126248
63128163128
63142163142
63145163145
631503189450
63153163153
63154163154
631553189465
63159163159
63162163162
63167163167
63170163170
631733189519
631742126348
63178163178
631822126364
63183163183
63184163184
63190163190
63196163196
63203163203
63206163206
63208163208
63223163223
63224163224
63231163231
632492126498
63261163261
63262163262
63263163263
63368163368
63370163370
63371163371
63373163373
63376163376
63377163377
63392163392
63394163394
63396163396
63410163410
63411163411
63414163414
63448163448
634492126898
63450163450
634522126904
63457163457
63458163458
63467163467
63468163468
63486163486
63489163489
63495163495
63509163509
63512163512
63523163523
635242127048
635252127050
63529163529
63544163544
635462127092
63549163549
63550163550
63551163551
635522127104
63553163553
635772127154
63584163584
63609163609
63610163610
63614163614
636303190890
636322127264
63636163636
63656163656
636572127314
63660163660
63663163663
63666163666
63668163668
63669163669
636743191022
636762127352
63679163679
636812127362
63684163684
63689163689
636903191070
63691163691
636933191079
63694163694
63697163697
63699163699
637012127402
63702163702
637102127420
63711163711
63715163715
63733163733
63766163766
63785163785
63788163788
638053191415
63822163822
63823163823
63826163826
63829163829
63832163832
63833163833
638342127668
63835163835
63836163836
638423191526
63843163843
63853163853
63858163858
63865163865
63866163866
638672127734
638693191607
63870163870
63872163872
63881163881
63882163882
63885163885
638872127774
63888163888
63889163889
63891163891
63892163892
638942127788
63896163896
638972127794
63898163898
63901163901
639032127806
63913163913
63916163916
63918163918
63923163923
63941163941
63984163984
63986163986
63988163988
639992127998
64000164000
64092164092
64094164094
640962128192
640972128194
64109164109
64111164111
64113164113
641562128312
64163164163
64191164191
64227164227
642282128456
64240164240
64241164241
64242164242
642432128486
64245164245
642492128498
64254164254
64277164277
64280164280
64282164282
64292164292
64295164295
64296164296
64310164310
64314164314
64315164315
64316164316
64317164317
64333164333
64334164334
64339164339
64342164342
64348164348
643492128698
643503193050
64351164351
64368164368
64379164379
64383164383
64384164384
64395164395
64396164396
643973193191
64398164398
64400164400
64405164405
64423164423
64427164427
64428164428
64429164429
64431164431
64434164434
64437164437
64442164442
644502128900
64451164451
64453164453
64455164455
64468164468
64469164469
64470164470
64472164472
644763193428
64477164477
64479164479
Total100249716638
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
7204214408
722017220
729617296
730517305
730817308
747117471
747417474
751717517
756817568
759517595
762117621
787317873
790217902
791017910
816818168
819918199
822118221
855418554
858018580
858118581
889718897
893418934
903619036
914019140
917719177
946519465
948419484
949519495
954419544
954619546
956819568
985919859
986119861
990019900
990219902
993019930
996119961
10371110371
10383110383
10435110435
10542110542
10559110559
10607110607
10837110837
10838110838
10845110845
11077111077
11167111167
11194111194
11198111198
11219111219
11224111224
11268111268
11278111278
11319111319
11320111320
11331111331
11436111436
11583111583
11711111711
11818111818
12016112016
12134112134
12228112228
12302112302
12432112432
12559112559
12858112858
12936112936
13034113034
13297113297
13423113423
13536113536
13910113910
14039114039
14104114104
14262114262
14277114277
14286114286
14314114314
14325114325
14331114331
14382114382
14391114391
14397114397
14485114485
14492114492
14495114495
14600114600
14616229232
14624114624
14689114689
14729114729
14740114740
14744114744
14755114755
14761114761
14769114769
14798114798
15148115148
15273115273
15413115413
15847115847
15979115979
16029116029
16123116123
16145116145
16192116192
16705116705
16778116778
16894116894
17737117737
17874117874
17944117944
18011118011
18031118031
18136118136
18184118184
18294118294
18339118339
18803118803
18925118925
19063119063
19398119398
19511119511
19634119634
20329120329
20449120449
20573120573
20575120575
20668120668
20789120789
20827120827
20843120843
20856120856
21554121554
21654121654
21712121712
21862121862
21864121864
21873121873
22452122452
22465122465
22469122469
22835122835
22947122947
23067123067
23166123166
23304123304
23437123437
23779123779
23883123883
23990123990
24091124091
24202124202
24331124331
25219125219
25348125348
25467125467
25703125703
25801125801
25813125813
25862125862
25909125909
25968125968
26509126509
26536126536
26606126606
27101127101
27206127206
27317127317
27727127727
27759127759
27792127792
28399128399
28534128534
28669128669
29032129032
29088129088
29116129116
29194129194
29262129262
29263129263
29287129287
29385129385
29487129487
30625130625
30648130648
30681130681
31284131284
31304131304
31378131378
31422131422
31488131488
31552131552
31863131863
32000132000
32146132146
32730132730
32805132805
33419133419
33527133527
33614133614
33639133639
33779133779
33912133912
34326134326
34392134392
34437134437
34731134731
34834134834
34931134931
35247135247
35322135322
35334135334
36082136082
36204136204
36291136291
36315136315
36380136380
36403136403
36425136425
36479136479
36503136503
36539136539
36572136572
36632136632
37750137750
37822137822
37868137868
37915137915
37962137962
38001138001
38055138055
38125138125
38192138192
38279138279
38346138346
38420138420
39118139118
39149139149
39185139185
39250139250
39274139274
39414139414
39609139609
39737139737
39817139817
40520140520
40600140600
40608140608
40652140652
40761140761
40826140826
41465141465
41517141517
41534141534
41670141670
41684141684
41750141750
41821141821
41840141840
41855141855
41877141877
41887283774
41909141909
41966141966
41975283950
41980141980
42002142002
42008142008
42013142013
42040142040
42105142105
42147142147
42219142219
42236142236
42245142245
42254284508
42285142285
42300142300
42344284688
42345142345
42357142357
42359142359
42363142363
42372142372
42375142375
42414142414
42651142651
42657142657
42703142703
42741142741
42742142742
42777142777
42787142787
42809142809
42821142821
42858142858
42861142861
42866142866
42873142873
42939142939
42985142985
43142143142
43211143211
43219143219
43221143221
43233143233
43237143237
43266143266
43270143270
43279143279
43302143302
43307143307
43346143346
43463143463
43500143500
43507143507
43530143530
43547143547
43549143549
43560143560
43576143576
43609143609
43614143614
43615143615
43640143640
43654143654
43661143661
43662143662
43693143693
43705143705
43713143713
43752143752
43769143769
43775143775
43782143782
43786143786
43788143788
43840143840
43844143844
43892143892
43913143913
43924143924
43945143945
44152144152
44289144289
44424144424
44528144528
44535144535
44637144637
44668144668
44694144694
44794144794
44976144976
45087145087
45195145195
45572145572
45580145580
45606145606
45736145736
45739145739
45743145743
45780145780
45826291652
45833145833
45842145842
45860145860
45867145867
45886145886
45926145926
46568146568
46659146659
46660146660
47242147242
47372147372
47498147498
48790148790
48894148894
48995148995
50057150057
50170150170
50284150284
50873150873
50975150975
51076151076
52712152712
52765152765
52885152885
53316153316
53418153418
53522153522
55397155397
55490155490
55495155495
55599155599
55617155617
55743155743
57800157800
57899157899
57997157997
58242158242
58352158352
58473158473
59718159718
59766159766
59871159871
61015161015
61140161140
61179161179
61774161774
61776161776
61777161777
61854161854
61857161857
61858161858
61981161981
61982161982
61983161983
62230162230
62273162273
62275162275
622802124560
62282162282
62284162284
62287162287
62288162288
62310162310
62315162315
62320162320
62340162340
62341162341
62342162342
62343162343
62344162344
62367162367
62399162399
62415162415
62423162423
62426162426
62432162432
62434162434
62436162436
62438162438
62455162455
62459162459
62465162465
62467162467
62479162479
62480162480
62483162483
62487162487
62490162490
62491162491
624952124990
62497162497
624992124998
62500162500
62502162502
62504162504
62505162505
62507162507
62516162516
62517162517
62518162518
625213187563
625232125046
62525162525
62528162528
625313187593
625322125064
62533162533
62534162534
62538162538
62548162548
62560162560
62563162563
62564162564
62565162565
62566162566
62567162567
62571162571
62573162573
62596162596
62597162597
62598162598
626062125212
62611162611
62612162612
62613162613
62635162635
626363187908
62640162640
626442125288
62646162646
62648162648
626493187947
62651162651
62653162653
62655162655
62656162656
62657162657
626613187983
62666162666
62673162673
626812125362
62685162685
626862125372
62687162687
626882125376
626902125380
62691162691
626922125384
626932125386
62694162694
62696162696
626972125394
62698162698
62700162700
627043188112
627272125454
62729162729
62734162734
62736162736
627372125474
62738162738
627392125478
627403188220
62741162741
627443188232
62747162747
627483188244
627494250996
62751162751
62752162752
62753162753
62754162754
62756162756
627572125514
62758162758
627602125520
62761162761
62763162763
62767162767
62774162774
627793188337
62780162780
62781162781
627823188346
62784162784
62785162785
62786162786
627882125576
62789162789
627902125580
62793162793
62794162794
627962125592
627972125594
62798162798
62800162800
62802162802
628032125606
62804162804
62806162806
628095314045
628103188430
62811162811
62814162814
628173188451
62828162828
62839162839
62840162840
628412125682
62845162845
62850162850
62855162855
62859162859
62860162860
62863162863
62878162878
62893162893
62895162895
62910162910
62911162911
62912162912
629143188742
629152125830
62917162917
62918162918
62920162920
62923162923
62924162924
62928162928
62936162936
62937162937
62940162940
62941162941
62943162943
62948162948
62950162950
62951162951
62953162953
629542125908
629552125910
62956162956
62958162958
629603188880
629612125922
629622125924
629633188889
62968162968
629733188919
62975162975
62976162976
62977162977
62978162978
62983162983
62984162984
62985162985
62990162990
629924251968
62993162993
62997162997
62999162999
630032126006
63009163009
630112126022
63022163022
63029163029
63035163035
63045163045
63051163051
63059163059
631092126218
63110163110
63115163115
631162126232
63117163117
631182126236
63119163119
63121163121
63126163126
63130163130
63134163134
63145163145
63147163147
63150163150
63157163157
63161163161
63163163163
63166163166
63167163167
63169163169
63170163170
63173163173
63174163174
63178163178
631792126358
631872126374
63188163188
63190163190
63191163191
63193163193
63194163194
63195163195
631982126396
63201163201
63206163206
63208163208
63211163211
63226163226
63228163228
63232163232
632632126526
63276163276
63278163278
63281163281
63367163367
63369163369
63370163370
63375163375
63378163378
63379163379
634062126812
63408163408
63427163427
63429163429
63431163431
63457163457
63458163458
63461163461
63462163462
634632126926
63464163464
63467163467
63468163468
63470163470
63491163491
63494163494
63500163500
63509163509
63511163511
63522163522
63523163523
63524163524
635392127078
63543163543
63544163544
635452127090
635472127094
63548163548
63556163556
63559163559
63560163560
635732127146
63580163580
63615163615
63616163616
63617163617
636293190887
636312127262
63635163635
636522127304
63653163653
636622127324
63665163665
63668163668
63669163669
636742127348
63678163678
63679163679
63680163680
636812127362
636842127368
63685163685
63689163689
63695163695
636974254788
63698163698
63699163699
63700163700
637032127406
63705163705
637083191124
63709163709
63720163720
63738163738
63766163766
63780163780
63782163782
638013191403
638232127646
63827163827
63832163832
638362127672
638383191514
638414255364
63842163842
63852163852
63857163857
638633191589
63864163864
638653191595
63868163868
63870163870
63877163877
63878163878
638812127762
63883163883
63884163884
63885163885
63887163887
63888163888
638902127780
63892163892
63893163893
63894163894
63897163897
63899163899
63901163901
63902163902
63914163914
63916163916
63917163917
63922163922
63937163937
63980163980
63982163982
63984163984
640003192000
64091164091
64094164094
640952128190
64096164096
64097164097
64105164105
64107164107
64109164109
641522128304
64159164159
64190164190
64227164227
64228164228
64229164229
642402128480
642412128482
64242164242
64243164243
642452128490
64250164250
64273164273
64276164276
64278164278
64288164288
64291164291
64292164292
64306164306
64310164310
64311164311
64312164312
64313164313
64329164329
64330164330
64335164335
64338164338
64344164344
643452128690
643463193038
64347164347
64364164364
64375164375
64379164379
64380164380
64391164391
64392164392
643933193179
64394164394
64396164396
64401164401
64419164419
64423164423
64424164424
64425164425
64427164427
64430164430
64433164433
64438164438
644462128892
64447164447
64449164449
64451164451
64464164464
64465164465
64466164466
64468164468
644723193416
64473164473
64475164475
Total100249770626
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333832266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888264f91cc26711
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3634663931636332
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_12_5_9.json b/autobahn/client/tungstenite_case_12_5_9.json new file mode 100644 index 0000000..b8b7083 --- /dev/null +++ b/autobahn/client/tungstenite_case_12_5_9.json @@ -0,0 +1,1853 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 382, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 5325, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=382&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: PJFriqSKT7d+Sk0InZNUxQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: qrTR1LeibyD1CfossrTROjwV3BE=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.5.9", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "6876": 1, + "6881": 1, + "6892": 1, + "6992": 1, + "7000": 2, + "7198": 1, + "7202": 1, + "7208": 1, + "7232": 1, + "7245": 1, + "7257": 1, + "7485": 1, + "7513": 1, + "7521": 1, + "7763": 1, + "7786": 1, + "7812": 1, + "8145": 1, + "8168": 1, + "8170": 1, + "8522": 1, + "8631": 1, + "8719": 1, + "8768": 1, + "8911": 1, + "9408": 1, + "9413": 1, + "9441": 1, + "9468": 1, + "9489": 1, + "9491": 1, + "9801": 1, + "9808": 2, + "9830": 1, + "9844": 1, + "9861": 1, + "10302": 1, + "10313": 1, + "10365": 1, + "10424": 1, + "10439": 1, + "10484": 1, + "10714": 1, + "10715": 1, + "10721": 1, + "10923": 1, + "10951": 1, + "10976": 1, + "10977": 1, + "11068": 1, + "11114": 1, + "11148": 1, + "11184": 1, + "11190": 1, + "11205": 1, + "11236": 1, + "11305": 1, + "11459": 1, + "11587": 1, + "11693": 1, + "11887": 1, + "11890": 1, + "12005": 1, + "12017": 1, + "12099": 1, + "12150": 1, + "12604": 1, + "12686": 1, + "12784": 1, + "13214": 1, + "13340": 1, + "13454": 1, + "13788": 1, + "13916": 1, + "13981": 1, + "14133": 1, + "14147": 1, + "14154": 1, + "14167": 1, + "14178": 1, + "14183": 1, + "14290": 1, + "14298": 1, + "14304": 1, + "14358": 1, + "14387": 1, + "14394": 1, + "14395": 1, + "14452": 1, + "14515": 1, + "14518": 1, + "14525": 1, + "14558": 1, + "14617": 1, + "14627": 1, + "14631": 1, + "14645": 1, + "14651": 1, + "14658": 1, + "14767": 1, + "14894": 1, + "15036": 1, + "15696": 1, + "15829": 1, + "15904": 1, + "15973": 1, + "16019": 1, + "16066": 1, + "16484": 1, + "16559": 1, + "16675": 1, + "17360": 1, + "17497": 1, + "17633": 1, + "17817": 1, + "17905": 1, + "17996": 1, + "18010": 1, + "18108": 1, + "18158": 1, + "18658": 1, + "18778": 1, + "18918": 1, + "19271": 1, + "19385": 1, + "19505": 1, + "20149": 1, + "20213": 1, + "20271": 1, + "20308": 1, + "20394": 1, + "20432": 1, + "20676": 1, + "20693": 1, + "20709": 1, + "21427": 1, + "21529": 1, + "21586": 1, + "21686": 1, + "21688": 1, + "21698": 1, + "22304": 1, + "22313": 1, + "22319": 1, + "22659": 1, + "22774": 1, + "22817": 1, + "22901": 1, + "22953": 1, + "23084": 1, + "23657": 1, + "23760": 1, + "23867": 1, + "23938": 1, + "24048": 1, + "24176": 1, + "25067": 1, + "25195": 1, + "25313": 1, + "25467": 1, + "25541": 1, + "25590": 1, + "25648": 1, + "25699": 1, + "25792": 1, + "26369": 1, + "26396": 1, + "26463": 1, + "26966": 1, + "27068": 1, + "27185": 1, + "27617": 1, + "27649": 1, + "27682": 1, + "28068": 1, + "28202": 1, + "28337": 1, + "28891": 1, + "28972": 1, + "28974": 1, + "29080": 1, + "29116": 1, + "29152": 1, + "29177": 1, + "29278": 1, + "29380": 1, + "30527": 1, + "30550": 1, + "30588": 1, + "30979": 1, + "31099": 1, + "31176": 1, + "31226": 1, + "31271": 1, + "31381": 1, + "31727": 1, + "31863": 1, + "32005": 1, + "32647": 1, + "32721": 1, + "33314": 1, + "33338": 1, + "33419": 1, + "33474": 1, + "33509": 1, + "33611": 1, + "34187": 1, + "34251": 1, + "34301": 1, + "34669": 1, + "34774": 1, + "34869": 1, + "35145": 1, + "35220": 1, + "35231": 1, + "36045": 1, + "36099": 1, + "36152": 1, + "36168": 1, + "36227": 1, + "36278": 1, + "36286": 1, + "36306": 1, + "36355": 1, + "36383": 1, + "36429": 1, + "36446": 1, + "37709": 1, + "37778": 1, + "37831": 1, + "37840": 1, + "37856": 1, + "37889": 1, + "37980": 1, + "37984": 1, + "38051": 1, + "38240": 1, + "38308": 1, + "38379": 1, + "38878": 1, + "39010": 1, + "39069": 1, + "39136": 1, + "39146": 1, + "39199": 1, + "39496": 1, + "39627": 1, + "39706": 1, + "40500": 1, + "40581": 1, + "40586": 1, + "40624": 1, + "40740": 1, + "40804": 1, + "41457": 1, + "41511": 1, + "41529": 1, + "41599": 1, + "41654": 1, + "41668": 1, + "41685": 1, + "41717": 1, + "41722": 1, + "41751": 1, + "41787": 1, + "41842": 1, + "41876": 1, + "41879": 1, + "41888": 1, + "41967": 1, + "41982": 1, + "42004": 1, + "42005": 1, + "42015": 1, + "42036": 1, + "42107": 1, + "42141": 1, + "42222": 1, + "42238": 1, + "42246": 1, + "42256": 2, + "42290": 1, + "42304": 1, + "42347": 1, + "42348": 2, + "42362": 1, + "42364": 1, + "42368": 1, + "42376": 1, + "42380": 1, + "42418": 1, + "42630": 1, + "42633": 1, + "42656": 1, + "42661": 1, + "42708": 1, + "42709": 1, + "42771": 1, + "42782": 1, + "42803": 1, + "42862": 1, + "42865": 1, + "42872": 1, + "42878": 1, + "42942": 1, + "42991": 1, + "43145": 1, + "43214": 1, + "43226": 2, + "43235": 2, + "43270": 1, + "43275": 1, + "43286": 1, + "43304": 1, + "43306": 1, + "43344": 1, + "43467": 1, + "43505": 1, + "43509": 1, + "43533": 1, + "43548": 1, + "43554": 1, + "43562": 1, + "43578": 1, + "43612": 2, + "43619": 1, + "43643": 1, + "43656": 1, + "43662": 1, + "43664": 1, + "43692": 1, + "43707": 1, + "43717": 1, + "43756": 1, + "43773": 1, + "43779": 1, + "43786": 1, + "43790": 1, + "43792": 1, + "43844": 1, + "43848": 1, + "43896": 1, + "43918": 1, + "43919": 1, + "43929": 1, + "43948": 1, + "44052": 1, + "44188": 1, + "44435": 1, + "44522": 1, + "44566": 1, + "44632": 1, + "44690": 1, + "44700": 1, + "44978": 1, + "45089": 1, + "45198": 1, + "45569": 1, + "45577": 1, + "45605": 1, + "45735": 1, + "45738": 1, + "45741": 1, + "45778": 1, + "45824": 1, + "45825": 1, + "45831": 1, + "45837": 1, + "45860": 1, + "45868": 1, + "45886": 1, + "45924": 1, + "46345": 1, + "46438": 1, + "46440": 1, + "47164": 1, + "47295": 1, + "47423": 1, + "48601": 1, + "48708": 1, + "48811": 1, + "49985": 1, + "50097": 1, + "50214": 1, + "50718": 1, + "50825": 1, + "50927": 1, + "52659": 1, + "52711": 1, + "52831": 1, + "53192": 1, + "53296": 1, + "53399": 1, + "55311": 1, + "55408": 1, + "55443": 1, + "55512": 1, + "55572": 1, + "55698": 1, + "57725": 1, + "57833": 1, + "57937": 1, + "58214": 1, + "58328": 1, + "58451": 1, + "59683": 1, + "59734": 1, + "59835": 1, + "61005": 1, + "61129": 1, + "61165": 1, + "61765": 1, + "61767": 1, + "61768": 1, + "61844": 1, + "61847": 1, + "61848": 1, + "61972": 2, + "61973": 1, + "62224": 1, + "62247": 1, + "62249": 2, + "62256": 2, + "62260": 1, + "62264": 2, + "62289": 1, + "62291": 1, + "62293": 1, + "62325": 1, + "62330": 1, + "62331": 1, + "62332": 1, + "62338": 1, + "62361": 1, + "62369": 1, + "62401": 1, + "62406": 1, + "62417": 2, + "62420": 1, + "62423": 1, + "62424": 1, + "62446": 1, + "62449": 1, + "62451": 1, + "62455": 1, + "62458": 1, + "62459": 1, + "62462": 1, + "62473": 2, + "62476": 1, + "62477": 1, + "62478": 1, + "62479": 1, + "62480": 1, + "62481": 1, + "62482": 1, + "62483": 2, + "62485": 2, + "62497": 1, + "62498": 1, + "62499": 1, + "62504": 1, + "62506": 1, + "62507": 1, + "62508": 1, + "62509": 1, + "62510": 1, + "62511": 1, + "62514": 1, + "62516": 2, + "62517": 2, + "62518": 2, + "62523": 1, + "62535": 1, + "62537": 1, + "62538": 1, + "62540": 1, + "62541": 1, + "62542": 1, + "62544": 1, + "62551": 1, + "62555": 1, + "62580": 1, + "62582": 1, + "62586": 1, + "62592": 2, + "62600": 3, + "62622": 1, + "62624": 1, + "62625": 3, + "62626": 1, + "62631": 1, + "62633": 1, + "62635": 5, + "62638": 1, + "62639": 1, + "62640": 1, + "62641": 1, + "62647": 1, + "62648": 2, + "62649": 1, + "62656": 1, + "62668": 2, + "62669": 1, + "62672": 1, + "62673": 2, + "62674": 5, + "62675": 1, + "62676": 2, + "62679": 1, + "62684": 2, + "62686": 2, + "62687": 1, + "62688": 4, + "62708": 1, + "62710": 1, + "62712": 2, + "62713": 3, + "62714": 1, + "62715": 1, + "62716": 1, + "62717": 2, + "62718": 1, + "62719": 1, + "62722": 1, + "62723": 1, + "62726": 2, + "62732": 1, + "62736": 1, + "62737": 3, + "62739": 1, + "62740": 2, + "62741": 2, + "62742": 2, + "62744": 1, + "62745": 3, + "62746": 2, + "62749": 1, + "62757": 1, + "62758": 1, + "62759": 1, + "62761": 2, + "62763": 2, + "62764": 2, + "62766": 1, + "62768": 2, + "62769": 1, + "62770": 2, + "62772": 3, + "62773": 2, + "62774": 1, + "62776": 1, + "62777": 1, + "62782": 1, + "62784": 1, + "62787": 1, + "62789": 2, + "62797": 1, + "62798": 2, + "62799": 2, + "62801": 2, + "62802": 1, + "62805": 2, + "62806": 1, + "62807": 2, + "62808": 2, + "62812": 1, + "62813": 1, + "62827": 1, + "62828": 1, + "62829": 1, + "62833": 1, + "62838": 2, + "62843": 1, + "62844": 1, + "62848": 1, + "62849": 1, + "62874": 1, + "62878": 1, + "62893": 2, + "62894": 1, + "62895": 1, + "62897": 2, + "62898": 1, + "62902": 3, + "62905": 1, + "62914": 1, + "62916": 1, + "62921": 1, + "62922": 1, + "62923": 1, + "62924": 3, + "62929": 1, + "62932": 3, + "62936": 1, + "62939": 1, + "62940": 1, + "62942": 1, + "62945": 1, + "62946": 2, + "62947": 2, + "62948": 1, + "62951": 1, + "62952": 1, + "62953": 2, + "62957": 1, + "62958": 3, + "62960": 1, + "62961": 1, + "62962": 1, + "62964": 1, + "62966": 1, + "62972": 3, + "62973": 2, + "62977": 2, + "62978": 1, + "62979": 2, + "62980": 1, + "62981": 3, + "63001": 1, + "63004": 1, + "63007": 2, + "63015": 1, + "63027": 1, + "63032": 1, + "63046": 2, + "63053": 1, + "63105": 2, + "63108": 1, + "63109": 2, + "63110": 1, + "63111": 1, + "63115": 2, + "63116": 1, + "63119": 1, + "63124": 2, + "63128": 1, + "63142": 1, + "63145": 1, + "63150": 3, + "63153": 1, + "63154": 1, + "63155": 3, + "63159": 1, + "63162": 1, + "63167": 1, + "63170": 1, + "63173": 3, + "63174": 2, + "63178": 1, + "63182": 2, + "63183": 1, + "63184": 1, + "63190": 1, + "63196": 1, + "63203": 1, + "63206": 1, + "63208": 1, + "63223": 1, + "63224": 1, + "63231": 1, + "63249": 2, + "63261": 1, + "63262": 1, + "63263": 1, + "63368": 1, + "63370": 1, + "63371": 1, + "63373": 1, + "63376": 1, + "63377": 1, + "63392": 1, + "63394": 1, + "63396": 1, + "63410": 1, + "63411": 1, + "63414": 1, + "63448": 1, + "63449": 2, + "63450": 1, + "63452": 2, + "63457": 1, + "63458": 1, + "63467": 1, + "63468": 1, + "63486": 1, + "63489": 1, + "63495": 1, + "63509": 1, + "63512": 1, + "63523": 1, + "63524": 2, + "63525": 2, + "63529": 1, + "63544": 1, + "63546": 2, + "63549": 1, + "63550": 1, + "63551": 1, + "63552": 2, + "63553": 1, + "63577": 2, + "63584": 1, + "63609": 1, + "63610": 1, + "63614": 1, + "63630": 3, + "63632": 2, + "63636": 1, + "63656": 1, + "63657": 2, + "63660": 1, + "63663": 1, + "63666": 1, + "63668": 1, + "63669": 1, + "63674": 3, + "63676": 2, + "63679": 1, + "63681": 2, + "63684": 1, + "63689": 1, + "63690": 3, + "63691": 1, + "63693": 3, + "63694": 1, + "63697": 1, + "63699": 1, + "63701": 2, + "63702": 1, + "63710": 2, + "63711": 1, + "63715": 1, + "63733": 1, + "63766": 1, + "63785": 1, + "63788": 1, + "63805": 3, + "63822": 1, + "63823": 1, + "63826": 1, + "63829": 1, + "63832": 1, + "63833": 1, + "63834": 2, + "63835": 1, + "63836": 1, + "63842": 3, + "63843": 1, + "63853": 1, + "63858": 1, + "63865": 1, + "63866": 1, + "63867": 2, + "63869": 3, + "63870": 1, + "63872": 1, + "63881": 1, + "63882": 1, + "63885": 1, + "63887": 2, + "63888": 1, + "63889": 1, + "63891": 1, + "63892": 1, + "63894": 2, + "63896": 1, + "63897": 2, + "63898": 1, + "63901": 1, + "63903": 2, + "63913": 1, + "63916": 1, + "63918": 1, + "63923": 1, + "63941": 1, + "63984": 1, + "63986": 1, + "63988": 1, + "63999": 2, + "64000": 1, + "64092": 1, + "64094": 1, + "64096": 2, + "64097": 2, + "64109": 1, + "64111": 1, + "64113": 1, + "64156": 2, + "64163": 1, + "64191": 1, + "64227": 1, + "64228": 2, + "64240": 1, + "64241": 1, + "64242": 1, + "64243": 2, + "64245": 1, + "64249": 2, + "64254": 1, + "64277": 1, + "64280": 1, + "64282": 1, + "64292": 1, + "64295": 1, + "64296": 1, + "64310": 1, + "64314": 1, + "64315": 1, + "64316": 1, + "64317": 1, + "64333": 1, + "64334": 1, + "64339": 1, + "64342": 1, + "64348": 1, + "64349": 2, + "64350": 3, + "64351": 1, + "64368": 1, + "64379": 1, + "64383": 1, + "64384": 1, + "64395": 1, + "64396": 1, + "64397": 3, + "64398": 1, + "64400": 1, + "64405": 1, + "64423": 1, + "64427": 1, + "64428": 1, + "64429": 1, + "64431": 1, + "64434": 1, + "64437": 1, + "64442": 1, + "64450": 2, + "64451": 1, + "64453": 1, + "64455": 1, + "64468": 1, + "64469": 1, + "64470": 1, + "64472": 1, + "64476": 3, + "64477": 1, + "64479": 1 + }, + "started": "2020-09-07T18:50:40.691Z", + "trafficStats": { + "incomingCompressionRatio": 0.7584895782470703, + "incomingOctetsAppLevel": 65536000, + "incomingOctetsWebSocketLevel": 49708373, + "incomingOctetsWireLevel": 49716373, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0001609386812962074, + "outgoingCompressionRatio": 0.7593745422363282, + "outgoingOctetsAppLevel": 65536000, + "outgoingOctetsWebSocketLevel": 49766370, + "outgoingOctetsWireLevel": 49770370, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 8.037556285499626e-05, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "7204": 2, + "7220": 1, + "7296": 1, + "7305": 1, + "7308": 1, + "7471": 1, + "7474": 1, + "7517": 1, + "7568": 1, + "7595": 1, + "7621": 1, + "7873": 1, + "7902": 1, + "7910": 1, + "8168": 1, + "8199": 1, + "8221": 1, + "8554": 1, + "8580": 1, + "8581": 1, + "8897": 1, + "8934": 1, + "9036": 1, + "9140": 1, + "9177": 1, + "9465": 1, + "9484": 1, + "9495": 1, + "9544": 1, + "9546": 1, + "9568": 1, + "9859": 1, + "9861": 1, + "9900": 1, + "9902": 1, + "9930": 1, + "9961": 1, + "10371": 1, + "10383": 1, + "10435": 1, + "10542": 1, + "10559": 1, + "10607": 1, + "10837": 1, + "10838": 1, + "10845": 1, + "11077": 1, + "11167": 1, + "11194": 1, + "11198": 1, + "11219": 1, + "11224": 1, + "11268": 1, + "11278": 1, + "11319": 1, + "11320": 1, + "11331": 1, + "11436": 1, + "11583": 1, + "11711": 1, + "11818": 1, + "12016": 1, + "12134": 1, + "12228": 1, + "12302": 1, + "12432": 1, + "12559": 1, + "12858": 1, + "12936": 1, + "13034": 1, + "13297": 1, + "13423": 1, + "13536": 1, + "13910": 1, + "14039": 1, + "14104": 1, + "14262": 1, + "14277": 1, + "14286": 1, + "14314": 1, + "14325": 1, + "14331": 1, + "14382": 1, + "14391": 1, + "14397": 1, + "14485": 1, + "14492": 1, + "14495": 1, + "14600": 1, + "14616": 2, + "14624": 1, + "14689": 1, + "14729": 1, + "14740": 1, + "14744": 1, + "14755": 1, + "14761": 1, + "14769": 1, + "14798": 1, + "15148": 1, + "15273": 1, + "15413": 1, + "15847": 1, + "15979": 1, + "16029": 1, + "16123": 1, + "16145": 1, + "16192": 1, + "16705": 1, + "16778": 1, + "16894": 1, + "17737": 1, + "17874": 1, + "17944": 1, + "18011": 1, + "18031": 1, + "18136": 1, + "18184": 1, + "18294": 1, + "18339": 1, + "18803": 1, + "18925": 1, + "19063": 1, + "19398": 1, + "19511": 1, + "19634": 1, + "20329": 1, + "20449": 1, + "20573": 1, + "20575": 1, + "20668": 1, + "20789": 1, + "20827": 1, + "20843": 1, + "20856": 1, + "21554": 1, + "21654": 1, + "21712": 1, + "21862": 1, + "21864": 1, + "21873": 1, + "22452": 1, + "22465": 1, + "22469": 1, + "22835": 1, + "22947": 1, + "23067": 1, + "23166": 1, + "23304": 1, + "23437": 1, + "23779": 1, + "23883": 1, + "23990": 1, + "24091": 1, + "24202": 1, + "24331": 1, + "25219": 1, + "25348": 1, + "25467": 1, + "25703": 1, + "25801": 1, + "25813": 1, + "25862": 1, + "25909": 1, + "25968": 1, + "26509": 1, + "26536": 1, + "26606": 1, + "27101": 1, + "27206": 1, + "27317": 1, + "27727": 1, + "27759": 1, + "27792": 1, + "28399": 1, + "28534": 1, + "28669": 1, + "29032": 1, + "29088": 1, + "29116": 1, + "29194": 1, + "29262": 1, + "29263": 1, + "29287": 1, + "29385": 1, + "29487": 1, + "30625": 1, + "30648": 1, + "30681": 1, + "31284": 1, + "31304": 1, + "31378": 1, + "31422": 1, + "31488": 1, + "31552": 1, + "31863": 1, + "32000": 1, + "32146": 1, + "32730": 1, + "32805": 1, + "33419": 1, + "33527": 1, + "33614": 1, + "33639": 1, + "33779": 1, + "33912": 1, + "34326": 1, + "34392": 1, + "34437": 1, + "34731": 1, + "34834": 1, + "34931": 1, + "35247": 1, + "35322": 1, + "35334": 1, + "36082": 1, + "36204": 1, + "36291": 1, + "36315": 1, + "36380": 1, + "36403": 1, + "36425": 1, + "36479": 1, + "36503": 1, + "36539": 1, + "36572": 1, + "36632": 1, + "37750": 1, + "37822": 1, + "37868": 1, + "37915": 1, + "37962": 1, + "38001": 1, + "38055": 1, + "38125": 1, + "38192": 1, + "38279": 1, + "38346": 1, + "38420": 1, + "39118": 1, + "39149": 1, + "39185": 1, + "39250": 1, + "39274": 1, + "39414": 1, + "39609": 1, + "39737": 1, + "39817": 1, + "40520": 1, + "40600": 1, + "40608": 1, + "40652": 1, + "40761": 1, + "40826": 1, + "41465": 1, + "41517": 1, + "41534": 1, + "41670": 1, + "41684": 1, + "41750": 1, + "41821": 1, + "41840": 1, + "41855": 1, + "41877": 1, + "41887": 2, + "41909": 1, + "41966": 1, + "41975": 2, + "41980": 1, + "42002": 1, + "42008": 1, + "42013": 1, + "42040": 1, + "42105": 1, + "42147": 1, + "42219": 1, + "42236": 1, + "42245": 1, + "42254": 2, + "42285": 1, + "42300": 1, + "42344": 2, + "42345": 1, + "42357": 1, + "42359": 1, + "42363": 1, + "42372": 1, + "42375": 1, + "42414": 1, + "42651": 1, + "42657": 1, + "42703": 1, + "42741": 1, + "42742": 1, + "42777": 1, + "42787": 1, + "42809": 1, + "42821": 1, + "42858": 1, + "42861": 1, + "42866": 1, + "42873": 1, + "42939": 1, + "42985": 1, + "43142": 1, + "43211": 1, + "43219": 1, + "43221": 1, + "43233": 1, + "43237": 1, + "43266": 1, + "43270": 1, + "43279": 1, + "43302": 1, + "43307": 1, + "43346": 1, + "43463": 1, + "43500": 1, + "43507": 1, + "43530": 1, + "43547": 1, + "43549": 1, + "43560": 1, + "43576": 1, + "43609": 1, + "43614": 1, + "43615": 1, + "43640": 1, + "43654": 1, + "43661": 1, + "43662": 1, + "43693": 1, + "43705": 1, + "43713": 1, + "43752": 1, + "43769": 1, + "43775": 1, + "43782": 1, + "43786": 1, + "43788": 1, + "43840": 1, + "43844": 1, + "43892": 1, + "43913": 1, + "43924": 1, + "43945": 1, + "44152": 1, + "44289": 1, + "44424": 1, + "44528": 1, + "44535": 1, + "44637": 1, + "44668": 1, + "44694": 1, + "44794": 1, + "44976": 1, + "45087": 1, + "45195": 1, + "45572": 1, + "45580": 1, + "45606": 1, + "45736": 1, + "45739": 1, + "45743": 1, + "45780": 1, + "45826": 2, + "45833": 1, + "45842": 1, + "45860": 1, + "45867": 1, + "45886": 1, + "45926": 1, + "46568": 1, + "46659": 1, + "46660": 1, + "47242": 1, + "47372": 1, + "47498": 1, + "48790": 1, + "48894": 1, + "48995": 1, + "50057": 1, + "50170": 1, + "50284": 1, + "50873": 1, + "50975": 1, + "51076": 1, + "52712": 1, + "52765": 1, + "52885": 1, + "53316": 1, + "53418": 1, + "53522": 1, + "55397": 1, + "55490": 1, + "55495": 1, + "55599": 1, + "55617": 1, + "55743": 1, + "57800": 1, + "57899": 1, + "57997": 1, + "58242": 1, + "58352": 1, + "58473": 1, + "59718": 1, + "59766": 1, + "59871": 1, + "61015": 1, + "61140": 1, + "61179": 1, + "61774": 1, + "61776": 1, + "61777": 1, + "61854": 1, + "61857": 1, + "61858": 1, + "61981": 1, + "61982": 1, + "61983": 1, + "62230": 1, + "62273": 1, + "62275": 1, + "62280": 2, + "62282": 1, + "62284": 1, + "62287": 1, + "62288": 1, + "62310": 1, + "62315": 1, + "62320": 1, + "62340": 1, + "62341": 1, + "62342": 1, + "62343": 1, + "62344": 1, + "62367": 1, + "62399": 1, + "62415": 1, + "62423": 1, + "62426": 1, + "62432": 1, + "62434": 1, + "62436": 1, + "62438": 1, + "62455": 1, + "62459": 1, + "62465": 1, + "62467": 1, + "62479": 1, + "62480": 1, + "62483": 1, + "62487": 1, + "62490": 1, + "62491": 1, + "62495": 2, + "62497": 1, + "62499": 2, + "62500": 1, + "62502": 1, + "62504": 1, + "62505": 1, + "62507": 1, + "62516": 1, + "62517": 1, + "62518": 1, + "62521": 3, + "62523": 2, + "62525": 1, + "62528": 1, + "62531": 3, + "62532": 2, + "62533": 1, + "62534": 1, + "62538": 1, + "62548": 1, + "62560": 1, + "62563": 1, + "62564": 1, + "62565": 1, + "62566": 1, + "62567": 1, + "62571": 1, + "62573": 1, + "62596": 1, + "62597": 1, + "62598": 1, + "62606": 2, + "62611": 1, + "62612": 1, + "62613": 1, + "62635": 1, + "62636": 3, + "62640": 1, + "62644": 2, + "62646": 1, + "62648": 1, + "62649": 3, + "62651": 1, + "62653": 1, + "62655": 1, + "62656": 1, + "62657": 1, + "62661": 3, + "62666": 1, + "62673": 1, + "62681": 2, + "62685": 1, + "62686": 2, + "62687": 1, + "62688": 2, + "62690": 2, + "62691": 1, + "62692": 2, + "62693": 2, + "62694": 1, + "62696": 1, + "62697": 2, + "62698": 1, + "62700": 1, + "62704": 3, + "62727": 2, + "62729": 1, + "62734": 1, + "62736": 1, + "62737": 2, + "62738": 1, + "62739": 2, + "62740": 3, + "62741": 1, + "62744": 3, + "62747": 1, + "62748": 3, + "62749": 4, + "62751": 1, + "62752": 1, + "62753": 1, + "62754": 1, + "62756": 1, + "62757": 2, + "62758": 1, + "62760": 2, + "62761": 1, + "62763": 1, + "62767": 1, + "62774": 1, + "62779": 3, + "62780": 1, + "62781": 1, + "62782": 3, + "62784": 1, + "62785": 1, + "62786": 1, + "62788": 2, + "62789": 1, + "62790": 2, + "62793": 1, + "62794": 1, + "62796": 2, + "62797": 2, + "62798": 1, + "62800": 1, + "62802": 1, + "62803": 2, + "62804": 1, + "62806": 1, + "62809": 5, + "62810": 3, + "62811": 1, + "62814": 1, + "62817": 3, + "62828": 1, + "62839": 1, + "62840": 1, + "62841": 2, + "62845": 1, + "62850": 1, + "62855": 1, + "62859": 1, + "62860": 1, + "62863": 1, + "62878": 1, + "62893": 1, + "62895": 1, + "62910": 1, + "62911": 1, + "62912": 1, + "62914": 3, + "62915": 2, + "62917": 1, + "62918": 1, + "62920": 1, + "62923": 1, + "62924": 1, + "62928": 1, + "62936": 1, + "62937": 1, + "62940": 1, + "62941": 1, + "62943": 1, + "62948": 1, + "62950": 1, + "62951": 1, + "62953": 1, + "62954": 2, + "62955": 2, + "62956": 1, + "62958": 1, + "62960": 3, + "62961": 2, + "62962": 2, + "62963": 3, + "62968": 1, + "62973": 3, + "62975": 1, + "62976": 1, + "62977": 1, + "62978": 1, + "62983": 1, + "62984": 1, + "62985": 1, + "62990": 1, + "62992": 4, + "62993": 1, + "62997": 1, + "62999": 1, + "63003": 2, + "63009": 1, + "63011": 2, + "63022": 1, + "63029": 1, + "63035": 1, + "63045": 1, + "63051": 1, + "63059": 1, + "63109": 2, + "63110": 1, + "63115": 1, + "63116": 2, + "63117": 1, + "63118": 2, + "63119": 1, + "63121": 1, + "63126": 1, + "63130": 1, + "63134": 1, + "63145": 1, + "63147": 1, + "63150": 1, + "63157": 1, + "63161": 1, + "63163": 1, + "63166": 1, + "63167": 1, + "63169": 1, + "63170": 1, + "63173": 1, + "63174": 1, + "63178": 1, + "63179": 2, + "63187": 2, + "63188": 1, + "63190": 1, + "63191": 1, + "63193": 1, + "63194": 1, + "63195": 1, + "63198": 2, + "63201": 1, + "63206": 1, + "63208": 1, + "63211": 1, + "63226": 1, + "63228": 1, + "63232": 1, + "63263": 2, + "63276": 1, + "63278": 1, + "63281": 1, + "63367": 1, + "63369": 1, + "63370": 1, + "63375": 1, + "63378": 1, + "63379": 1, + "63406": 2, + "63408": 1, + "63427": 1, + "63429": 1, + "63431": 1, + "63457": 1, + "63458": 1, + "63461": 1, + "63462": 1, + "63463": 2, + "63464": 1, + "63467": 1, + "63468": 1, + "63470": 1, + "63491": 1, + "63494": 1, + "63500": 1, + "63509": 1, + "63511": 1, + "63522": 1, + "63523": 1, + "63524": 1, + "63539": 2, + "63543": 1, + "63544": 1, + "63545": 2, + "63547": 2, + "63548": 1, + "63556": 1, + "63559": 1, + "63560": 1, + "63573": 2, + "63580": 1, + "63615": 1, + "63616": 1, + "63617": 1, + "63629": 3, + "63631": 2, + "63635": 1, + "63652": 2, + "63653": 1, + "63662": 2, + "63665": 1, + "63668": 1, + "63669": 1, + "63674": 2, + "63678": 1, + "63679": 1, + "63680": 1, + "63681": 2, + "63684": 2, + "63685": 1, + "63689": 1, + "63695": 1, + "63697": 4, + "63698": 1, + "63699": 1, + "63700": 1, + "63703": 2, + "63705": 1, + "63708": 3, + "63709": 1, + "63720": 1, + "63738": 1, + "63766": 1, + "63780": 1, + "63782": 1, + "63801": 3, + "63823": 2, + "63827": 1, + "63832": 1, + "63836": 2, + "63838": 3, + "63841": 4, + "63842": 1, + "63852": 1, + "63857": 1, + "63863": 3, + "63864": 1, + "63865": 3, + "63868": 1, + "63870": 1, + "63877": 1, + "63878": 1, + "63881": 2, + "63883": 1, + "63884": 1, + "63885": 1, + "63887": 1, + "63888": 1, + "63890": 2, + "63892": 1, + "63893": 1, + "63894": 1, + "63897": 1, + "63899": 1, + "63901": 1, + "63902": 1, + "63914": 1, + "63916": 1, + "63917": 1, + "63922": 1, + "63937": 1, + "63980": 1, + "63982": 1, + "63984": 1, + "64000": 3, + "64091": 1, + "64094": 1, + "64095": 2, + "64096": 1, + "64097": 1, + "64105": 1, + "64107": 1, + "64109": 1, + "64152": 2, + "64159": 1, + "64190": 1, + "64227": 1, + "64228": 1, + "64229": 1, + "64240": 2, + "64241": 2, + "64242": 1, + "64243": 1, + "64245": 2, + "64250": 1, + "64273": 1, + "64276": 1, + "64278": 1, + "64288": 1, + "64291": 1, + "64292": 1, + "64306": 1, + "64310": 1, + "64311": 1, + "64312": 1, + "64313": 1, + "64329": 1, + "64330": 1, + "64335": 1, + "64338": 1, + "64344": 1, + "64345": 2, + "64346": 3, + "64347": 1, + "64364": 1, + "64375": 1, + "64379": 1, + "64380": 1, + "64391": 1, + "64392": 1, + "64393": 3, + "64394": 1, + "64396": 1, + "64401": 1, + "64419": 1, + "64423": 1, + "64424": 1, + "64425": 1, + "64427": 1, + "64430": 1, + "64433": 1, + "64438": 1, + "64446": 2, + "64447": 1, + "64449": 1, + "64451": 1, + "64464": 1, + "64465": 1, + "64466": 1, + "64468": 1, + "64472": 3, + "64473": 1, + "64475": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333832266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888264f91cc26711" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "64f91cc2" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_1_1.html b/autobahn/client/tungstenite_case_13_1_1.html new file mode 100644 index 0000000..8dfe03c --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_1.html @@ -0,0 +1,324 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.1.1 : Pass - 985 ms @ 2020-09-07T18:51:52.471Z

+

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=392&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: BVF5d0pxcgD0ouYkPDlLdw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: qhlkZKiMxDrfEIxDLRsstVhNGQE=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
107557550
1166726
1237444
131031339
1424336
15460
16232
18118
19357
20120
21121
22122
24248
2571257
Total100210938
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
67554530
766462
837296
9103927
1024240
11444
12224
14114
15345
16116
17117
18118
20240
2521252
Total10026929
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333932266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882889c151f8b74
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3838396331353166
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_1_1.json b/autobahn/client/tungstenite_case_13_1_1.json new file mode 100644 index 0000000..da5388c --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_1.json @@ -0,0 +1,171 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 392, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]", + "droppedByMe": true, + "duration": 985, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=392&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: BVF5d0pxcgD0ouYkPDlLdw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: qhlkZKiMxDrfEIxDLRsstVhNGQE=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "13.1.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 755, + "11": 66, + "12": 37, + "13": 103, + "14": 24, + "15": 4, + "16": 2, + "18": 1, + "19": 3, + "20": 1, + "21": 1, + "22": 1, + "24": 2, + "257": 1 + }, + "started": "2020-09-07T18:51:52.471Z", + "trafficStats": { + "incomingCompressionRatio": 0.2920625, + "incomingOctetsAppLevel": 16000, + "incomingOctetsWebSocketLevel": 4673, + "incomingOctetsWireLevel": 10673, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 1.2839717526214423, + "outgoingCompressionRatio": 0.2920625, + "outgoingOctetsAppLevel": 16000, + "outgoingOctetsWebSocketLevel": 4673, + "outgoingOctetsWireLevel": 6673, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.4279905842071474, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 755, + "7": 66, + "8": 37, + "9": 103, + "10": 24, + "11": 4, + "12": 2, + "14": 1, + "15": 3, + "16": 1, + "17": 1, + "18": 1, + "20": 2, + "252": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333932266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882889c151f8b74" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "889c151f" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_1_10.html b/autobahn/client/tungstenite_case_13_1_10.html new file mode 100644 index 0000000..72542ce --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_10.html @@ -0,0 +1,597 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.1.10 : Pass - 7378 ms @ 2020-09-07T18:52:06.870Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=401&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: IzOaYr874MCuwIrXOyuX4Q==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: mEwyqePWIE6Qd/6D3uhK4KJPSZc=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
457229144
457529150
457614576
457729154
4578313734
4580313740
4581313743
45821464148
4583836664
4584732088
4585836680
45861150446
4587522935
45881045880
4589627534
45901150490
4591732137
4592836736
459314593
4594418376
4595418380
45961045960
4597418388
459829196
4599836792
460029200
4601732207
4602627612
4603627618
4604732228
4605627630
4606732242
460714607
460829216
4609732263
46101046100
46111150721
46121046120
46131359969
46141150754
4615627690
46161046160
4617523085
461829236
4619418476
4620418480
462129242
4622418488
4623313869
462429248
462514625
463114631
463314633
463414634
463714637
463814638
463929278
464029280
464114641
4643313929
464514645
464814648
464929298
465029300
4651418604
4652418608
465314653
4654418616
465514655
465629312
465714657
465929318
466014660
466129322
4663313989
466429328
4665313995
4666313998
4667523335
4668418672
4669523345
4670732690
4671942039
4672418688
4673418692
4674837392
46751046750
4676314028
46771046770
4678837424
4679942111
46801151480
4681837448
46821151502
46831465562
46841256208
46851360905
46861151546
46871989053
4688732816
46891570335
46901675040
46911779747
46921675072
469323107939
46941570410
46951361035
46961989224
46971465758
46981989262
46991151689
47001465800
47011884618
47021884636
47031047030
47041256448
47051256460
47061151766
470729414
470814708
4709732963
471029420
471114711
4712628272
471329426
471414714
4715418860
471629432
4717628302
4718523590
4719523595
47201256640
4721837768
4722523610
4723314169
4724628344
472514725
4726628356
47271047270
47281885104
47291570935
47302199330
47311047310
4732942588
4733314199
4734523670
473529470
473614736
473714737
474914749
477014770
4771419084
477214772
477314773
477629552
Total10024668715
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
5575211150
557615576
557715577
557815578
5579211158
5580527900
5581739067
5582527910
5583422332
558415584
5585633510
5586844688
5587633522
5588422352
55891161479
5590844720
5591739137
5592633552
5593633558
5594422376
5595422380
5596527980
5597527985
5598739186
55991795183
56001689600
56011478414
56021372826
5603633618
5604633624
56051056050
56061689696
56071372891
5608950472
5609633654
5610633660
5611633666
5612211224
5613422452
5614528070
5615422460
5616633696
5617316851
5619211238
5620211240
5622211244
562415624
562515625
5627316881
5629316887
5630211260
563215632
5634211268
563515635
5637211274
5638316914
563915639
5640211280
5641211282
564215642
5643211286
564415644
5645316935
564615646
5647316941
5648633888
5649211298
5650211300
5651211302
565715657
566415664
5665211330
566715667
566815668
567015670
5671211342
5673317019
567415674
567515675
5676211352
5677317031
5678951102
5679528395
5680317040
56811056810
56821056820
56831585245
568420113680
56851479590
56861690976
56871479618
568821119448
568926147914
56901796730
56911162601
569225142300
569321119553
569424136656
56951691120
569625142400
569724136728
569824136752
56991268388
57001796900
570119108319
57021374126
5703951327
570425142600
570525142625
57061691296
57071268484
57081162788
5709845672
57101057100
57111374243
5712422848
5713634278
5714317142
571515715
5716211432
5717211434
5718528590
5719317157
5720317160
5721528605
5722422888
57231268676
57241057240
5725740075
57261162986
5727951543
5728211456
5729317187
5731211462
5732317196
573315733
574615746
574715747
574815748
5750317250
5751211502
575315753
576115761
5762211524
Total10025668354
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343031266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882fd260d1dfece
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6664323630643164
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_1_10.json b/autobahn/client/tungstenite_case_13_1_10.json new file mode 100644 index 0000000..2dd36d8 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_10.json @@ -0,0 +1,444 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 401, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]", + "droppedByMe": true, + "duration": 7378, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=401&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: IzOaYr874MCuwIrXOyuX4Q==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: mEwyqePWIE6Qd/6D3uhK4KJPSZc=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "13.1.10", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "4572": 2, + "4575": 2, + "4576": 1, + "4577": 2, + "4578": 3, + "4580": 3, + "4581": 3, + "4582": 14, + "4583": 8, + "4584": 7, + "4585": 8, + "4586": 11, + "4587": 5, + "4588": 10, + "4589": 6, + "4590": 11, + "4591": 7, + "4592": 8, + "4593": 1, + "4594": 4, + "4595": 4, + "4596": 10, + "4597": 4, + "4598": 2, + "4599": 8, + "4600": 2, + "4601": 7, + "4602": 6, + "4603": 6, + "4604": 7, + "4605": 6, + "4606": 7, + "4607": 1, + "4608": 2, + "4609": 7, + "4610": 10, + "4611": 11, + "4612": 10, + "4613": 13, + "4614": 11, + "4615": 6, + "4616": 10, + "4617": 5, + "4618": 2, + "4619": 4, + "4620": 4, + "4621": 2, + "4622": 4, + "4623": 3, + "4624": 2, + "4625": 1, + "4631": 1, + "4633": 1, + "4634": 1, + "4637": 1, + "4638": 1, + "4639": 2, + "4640": 2, + "4641": 1, + "4643": 3, + "4645": 1, + "4648": 1, + "4649": 2, + "4650": 2, + "4651": 4, + "4652": 4, + "4653": 1, + "4654": 4, + "4655": 1, + "4656": 2, + "4657": 1, + "4659": 2, + "4660": 1, + "4661": 2, + "4663": 3, + "4664": 2, + "4665": 3, + "4666": 3, + "4667": 5, + "4668": 4, + "4669": 5, + "4670": 7, + "4671": 9, + "4672": 4, + "4673": 4, + "4674": 8, + "4675": 10, + "4676": 3, + "4677": 10, + "4678": 8, + "4679": 9, + "4680": 11, + "4681": 8, + "4682": 11, + "4683": 14, + "4684": 12, + "4685": 13, + "4686": 11, + "4687": 19, + "4688": 7, + "4689": 15, + "4690": 16, + "4691": 17, + "4692": 16, + "4693": 23, + "4694": 15, + "4695": 13, + "4696": 19, + "4697": 14, + "4698": 19, + "4699": 11, + "4700": 14, + "4701": 18, + "4702": 18, + "4703": 10, + "4704": 12, + "4705": 12, + "4706": 11, + "4707": 2, + "4708": 1, + "4709": 7, + "4710": 2, + "4711": 1, + "4712": 6, + "4713": 2, + "4714": 1, + "4715": 4, + "4716": 2, + "4717": 6, + "4718": 5, + "4719": 5, + "4720": 12, + "4721": 8, + "4722": 5, + "4723": 3, + "4724": 6, + "4725": 1, + "4726": 6, + "4727": 10, + "4728": 18, + "4729": 15, + "4730": 21, + "4731": 10, + "4732": 9, + "4733": 3, + "4734": 5, + "4735": 2, + "4736": 1, + "4737": 1, + "4749": 1, + "4770": 1, + "4771": 4, + "4772": 1, + "4773": 1, + "4776": 2 + }, + "started": "2020-09-07T18:52:06.870Z", + "trafficStats": { + "incomingCompressionRatio": 0.03555641174316406, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 4660450, + "incomingOctetsWireLevel": 4668450, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0017165724339924255, + "outgoingCompressionRatio": 0.04321363830566406, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 5664098, + "outgoingOctetsWireLevel": 5668098, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0007062024703668616, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "5575": 2, + "5576": 1, + "5577": 1, + "5578": 1, + "5579": 2, + "5580": 5, + "5581": 7, + "5582": 5, + "5583": 4, + "5584": 1, + "5585": 6, + "5586": 8, + "5587": 6, + "5588": 4, + "5589": 11, + "5590": 8, + "5591": 7, + "5592": 6, + "5593": 6, + "5594": 4, + "5595": 4, + "5596": 5, + "5597": 5, + "5598": 7, + "5599": 17, + "5600": 16, + "5601": 14, + "5602": 13, + "5603": 6, + "5604": 6, + "5605": 10, + "5606": 16, + "5607": 13, + "5608": 9, + "5609": 6, + "5610": 6, + "5611": 6, + "5612": 2, + "5613": 4, + "5614": 5, + "5615": 4, + "5616": 6, + "5617": 3, + "5619": 2, + "5620": 2, + "5622": 2, + "5624": 1, + "5625": 1, + "5627": 3, + "5629": 3, + "5630": 2, + "5632": 1, + "5634": 2, + "5635": 1, + "5637": 2, + "5638": 3, + "5639": 1, + "5640": 2, + "5641": 2, + "5642": 1, + "5643": 2, + "5644": 1, + "5645": 3, + "5646": 1, + "5647": 3, + "5648": 6, + "5649": 2, + "5650": 2, + "5651": 2, + "5657": 1, + "5664": 1, + "5665": 2, + "5667": 1, + "5668": 1, + "5670": 1, + "5671": 2, + "5673": 3, + "5674": 1, + "5675": 1, + "5676": 2, + "5677": 3, + "5678": 9, + "5679": 5, + "5680": 3, + "5681": 10, + "5682": 10, + "5683": 15, + "5684": 20, + "5685": 14, + "5686": 16, + "5687": 14, + "5688": 21, + "5689": 26, + "5690": 17, + "5691": 11, + "5692": 25, + "5693": 21, + "5694": 24, + "5695": 16, + "5696": 25, + "5697": 24, + "5698": 24, + "5699": 12, + "5700": 17, + "5701": 19, + "5702": 13, + "5703": 9, + "5704": 25, + "5705": 25, + "5706": 16, + "5707": 12, + "5708": 11, + "5709": 8, + "5710": 10, + "5711": 13, + "5712": 4, + "5713": 6, + "5714": 3, + "5715": 1, + "5716": 2, + "5717": 2, + "5718": 5, + "5719": 3, + "5720": 3, + "5721": 5, + "5722": 4, + "5723": 12, + "5724": 10, + "5725": 7, + "5726": 11, + "5727": 9, + "5728": 2, + "5729": 3, + "5731": 2, + "5732": 3, + "5733": 1, + "5746": 1, + "5747": 1, + "5748": 1, + "5750": 3, + "5751": 2, + "5753": 1, + "5761": 1, + "5762": 2 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343031266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882fd260d1dfece" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "fd260d1d" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_1_11.html b/autobahn/client/tungstenite_case_13_1_11.html new file mode 100644 index 0000000..0a53c5f --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_11.html @@ -0,0 +1,647 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.1.11 : Pass - 1458 ms @ 2020-09-07T18:52:14.248Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=402&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: zjuWgCY472g/HjFgeCViOA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 9goXeRcqqBeWlztUgE+k3RFR/0U=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2481248
2494996
2503750
2511251
25241008
25371771
2543762
25561530
25661536
25751285
258102580
259133367
26071820
26182088
26241048
26382104
26471848
26551325
26651330
26751335
268112948
26961614
27051350
27192439
272154080
273102730
274133562
275143850
276123312
277133601
278123336
279102790
280174760
281143934
28292538
283123396
28482272
28592565
28672002
28792583
288102880
289102890
29082320
29141164
292164672
2933879
29461764
29592655
29641184
29782376
29892682
299113289
30082400
30151505
3022604
30351515
304123648
30592745
306123672
307113377
30861848
30982472
31072170
31151555
31292808
313103130
314103140
31561890
316154740
31761902
31851590
319103190
320103200
321123852
3223966
32351615
32461944
3253975
32661956
32782616
32861968
32941316
330113630
33182648
332134316
3333999
33451670
33551675
33682688
33762022
3382676
3392678
34051700
34141364
34241368
34351715
34451720
34541380
34631038
3471347
35041400
35162106
3522704
3541354
35831074
35951795
36051800
36131083
3622724
36351815
36451820
36541460
36662196
3672734
36862208
36931107
37062220
37172597
37241488
37351865
3741374
3752750
3772754
3781378
3841384
3872774
3881388
3891389
39072730
39162346
3922784
39362358
39431182
3952790
39651980
39783176
39872786
39941596
400104000
40183208
40231206
40372821
40493636
40562430
40631218
40741628
40862448
40952045
41052050
41162466
41231236
41341652
41431242
41562490
4171417
4181418
41941676
4201420
4211421
4222844
4242848
42552125
42631278
4271427
4282856
4321432
4691469
Total1002320226
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
435215
446264
45290
465230
476282
4811528
4910490
503150
51151
525260
53153
543162
55155
565280
577399
584232
596354
6012720
614244
6212744
6311693
6410640
6513845
6610660
67181206
68161088
69151035
7010700
71211491
72211512
73191387
7413962
75161200
767532
777539
7812936
7911869
8010800
815405
827574
834332
845420
855425
863258
87187
885440
895445
906540
919819
929828
939837
948752
9510950
968768
97141358
989882
9910990
100121200
1019909
1028816
103121236
1048832
105101050
1064424
1076642
1086648
1092218
1102220
111111221
1127784
1132226
114111254
1157805
1168928
1173351
1187826
1198952
1206720
121101210
1226732
1234492
1242248
1257875
1262252
1273381
1303390
1314524
1323396
1333399
1345670
1352270
1364544
1373411
1384552
1393417
1403420
1416846
1424568
1433429
1441144
1451145
1464584
1473441
1483444
1491149
1504600
15181208
1523456
1532306
15471078
1556930
1562312
1571157
1581158
1594636
160121920
1615805
1623486
1633489
1642328
1652330
16671162
1674668
1683504
1693507
1705850
1712342
1733519
1743522
1753525
1761176
1771177
1783534
1801180
1811181
1852370
1861186
1873561
1891189
1911191
1923576
1931193
1943582
1953585
1961196
19791773
19881584
1992398
20071400
201102010
20291818
2032406
20471428
205132665
20661236
20781656
20851040
20981672
21091890
21161266
21281696
2132426
2144856
2151215
2162432
2172434
2181218
2191219
2202440
2211221
2221222
2233669
2241224
2261226
2281228
2312462
2321232
2333699
2341234
2361236
2371237
2521252
2601000260000
Total2002376202
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
01000
11000
81
Total2001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343032266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882d1c20b3ed22a
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6431633230623365
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_1_11.json b/autobahn/client/tungstenite_case_13_1_11.json new file mode 100644 index 0000000..16cc3cd --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_11.json @@ -0,0 +1,494 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 402, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]", + "droppedByMe": true, + "duration": 1458, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=402&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: zjuWgCY472g/HjFgeCViOA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 9goXeRcqqBeWlztUgE+k3RFR/0U=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "13.1.11", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "248": 1, + "249": 4, + "250": 3, + "251": 1, + "252": 4, + "253": 7, + "254": 3, + "255": 6, + "256": 6, + "257": 5, + "258": 10, + "259": 13, + "260": 7, + "261": 8, + "262": 4, + "263": 8, + "264": 7, + "265": 5, + "266": 5, + "267": 5, + "268": 11, + "269": 6, + "270": 5, + "271": 9, + "272": 15, + "273": 10, + "274": 13, + "275": 14, + "276": 12, + "277": 13, + "278": 12, + "279": 10, + "280": 17, + "281": 14, + "282": 9, + "283": 12, + "284": 8, + "285": 9, + "286": 7, + "287": 9, + "288": 10, + "289": 10, + "290": 8, + "291": 4, + "292": 16, + "293": 3, + "294": 6, + "295": 9, + "296": 4, + "297": 8, + "298": 9, + "299": 11, + "300": 8, + "301": 5, + "302": 2, + "303": 5, + "304": 12, + "305": 9, + "306": 12, + "307": 11, + "308": 6, + "309": 8, + "310": 7, + "311": 5, + "312": 9, + "313": 10, + "314": 10, + "315": 6, + "316": 15, + "317": 6, + "318": 5, + "319": 10, + "320": 10, + "321": 12, + "322": 3, + "323": 5, + "324": 6, + "325": 3, + "326": 6, + "327": 8, + "328": 6, + "329": 4, + "330": 11, + "331": 8, + "332": 13, + "333": 3, + "334": 5, + "335": 5, + "336": 8, + "337": 6, + "338": 2, + "339": 2, + "340": 5, + "341": 4, + "342": 4, + "343": 5, + "344": 5, + "345": 4, + "346": 3, + "347": 1, + "350": 4, + "351": 6, + "352": 2, + "354": 1, + "358": 3, + "359": 5, + "360": 5, + "361": 3, + "362": 2, + "363": 5, + "364": 5, + "365": 4, + "366": 6, + "367": 2, + "368": 6, + "369": 3, + "370": 6, + "371": 7, + "372": 4, + "373": 5, + "374": 1, + "375": 2, + "377": 2, + "378": 1, + "384": 1, + "387": 2, + "388": 1, + "389": 1, + "390": 7, + "391": 6, + "392": 2, + "393": 6, + "394": 3, + "395": 2, + "396": 5, + "397": 8, + "398": 7, + "399": 4, + "400": 10, + "401": 8, + "402": 3, + "403": 7, + "404": 9, + "405": 6, + "406": 3, + "407": 4, + "408": 6, + "409": 5, + "410": 5, + "411": 6, + "412": 3, + "413": 4, + "414": 3, + "415": 6, + "417": 1, + "418": 1, + "419": 4, + "420": 1, + "421": 1, + "422": 2, + "424": 2, + "425": 5, + "426": 3, + "427": 1, + "428": 2, + "432": 1, + "469": 1 + }, + "started": "2020-09-07T18:52:14.248Z", + "trafficStats": { + "incomingCompressionRatio": 0.0380811767578125, + "incomingOctetsAppLevel": 8192000, + "incomingOctetsWebSocketLevel": 311961, + "incomingOctetsWireLevel": 319961, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.025644231169921882, + "outgoingCompressionRatio": 0.045077392578125, + "outgoingOctetsAppLevel": 8192000, + "outgoingOctetsWebSocketLevel": 369274, + "outgoingOctetsWireLevel": 375946, + "outgoingWebSocketFrames": 2000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.018067884551850388, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 1000, + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "43": 5, + "44": 6, + "45": 2, + "46": 5, + "47": 6, + "48": 11, + "49": 10, + "50": 3, + "51": 1, + "52": 5, + "53": 1, + "54": 3, + "55": 1, + "56": 5, + "57": 7, + "58": 4, + "59": 6, + "60": 12, + "61": 4, + "62": 12, + "63": 11, + "64": 10, + "65": 13, + "66": 10, + "67": 18, + "68": 16, + "69": 15, + "70": 10, + "71": 21, + "72": 21, + "73": 19, + "74": 13, + "75": 16, + "76": 7, + "77": 7, + "78": 12, + "79": 11, + "80": 10, + "81": 5, + "82": 7, + "83": 4, + "84": 5, + "85": 5, + "86": 3, + "87": 1, + "88": 5, + "89": 5, + "90": 6, + "91": 9, + "92": 9, + "93": 9, + "94": 8, + "95": 10, + "96": 8, + "97": 14, + "98": 9, + "99": 10, + "100": 12, + "101": 9, + "102": 8, + "103": 12, + "104": 8, + "105": 10, + "106": 4, + "107": 6, + "108": 6, + "109": 2, + "110": 2, + "111": 11, + "112": 7, + "113": 2, + "114": 11, + "115": 7, + "116": 8, + "117": 3, + "118": 7, + "119": 8, + "120": 6, + "121": 10, + "122": 6, + "123": 4, + "124": 2, + "125": 7, + "126": 2, + "127": 3, + "130": 3, + "131": 4, + "132": 3, + "133": 3, + "134": 5, + "135": 2, + "136": 4, + "137": 3, + "138": 4, + "139": 3, + "140": 3, + "141": 6, + "142": 4, + "143": 3, + "144": 1, + "145": 1, + "146": 4, + "147": 3, + "148": 3, + "149": 1, + "150": 4, + "151": 8, + "152": 3, + "153": 2, + "154": 7, + "155": 6, + "156": 2, + "157": 1, + "158": 1, + "159": 4, + "160": 12, + "161": 5, + "162": 3, + "163": 3, + "164": 2, + "165": 2, + "166": 7, + "167": 4, + "168": 3, + "169": 3, + "170": 5, + "171": 2, + "173": 3, + "174": 3, + "175": 3, + "176": 1, + "177": 1, + "178": 3, + "180": 1, + "181": 1, + "185": 2, + "186": 1, + "187": 3, + "189": 1, + "191": 1, + "192": 3, + "193": 1, + "194": 3, + "195": 3, + "196": 1, + "197": 9, + "198": 8, + "199": 2, + "200": 7, + "201": 10, + "202": 9, + "203": 2, + "204": 7, + "205": 13, + "206": 6, + "207": 8, + "208": 5, + "209": 8, + "210": 9, + "211": 6, + "212": 8, + "213": 2, + "214": 4, + "215": 1, + "216": 2, + "217": 2, + "218": 1, + "219": 1, + "220": 2, + "221": 1, + "222": 1, + "223": 3, + "224": 1, + "226": 1, + "228": 1, + "231": 2, + "232": 1, + "233": 3, + "234": 1, + "236": 1, + "237": 1, + "252": 1, + "260": 1000 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343032266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882d1c20b3ed22a" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "d1c20b3e" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_1_12.html b/autobahn/client/tungstenite_case_13_1_12.html new file mode 100644 index 0000000..044da4d --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_12.html @@ -0,0 +1,804 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.1.12 : Pass - 3031 ms @ 2020-09-07T18:52:15.707Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=403&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 35yE0f45RRQHLgCZNn7lOw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: xrgvHc+krvzS/wzibnl+2LQDESw=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
4922984
4932986
4942988
4952990
49652480
49741988
49852490
49931497
50031500
501105010
502126024
50352515
50494536
50584040
50684048
50731521
50863048
509105090
51084080
51173577
51273584
51342052
5141514
51531545
51621032
51742068
51842072
51931557
52021040
52121042
52252610
52342092
52463144
525115775
52694734
527105270
528105280
529115819
53094770
531126372
532115852
53373731
53494806
53584280
536126432
53752685
53852690
53973773
54052700
5411541
54231626
54331629
5441544
54521090
54663276
54721094
54821096
54963294
55142204
55221104
5531553
55421108
55542220
55663336
55752785
55842232
55984472
560126720
561105610
562158430
563137319
56452820
56595085
56663396
56763402
56863408
5701570
57131713
57242288
57321146
57421148
57531725
5761576
57763462
57852890
57942316
58042320
58142324
58221164
58342332
5841584
5851585
58631758
58831764
58921178
59021180
59142364
59221184
59321186
59421188
59521190
5961596
59721194
59842392
59942396
60042400
60184808
60231806
60342412
60442416
60542420
60642424
60763642
60831824
61021220
61131833
61231836
61342452
61474298
61542460
61631848
61731851
6181618
61921238
62031860
6211621
62221244
62321246
62421248
62521250
6261626
62921258
63021260
63131893
63231896
63331899
6341634
63531905
6371637
63831914
63921278
64031920
64142564
64321286
64431932
6451645
64653230
6471647
64842592
64921298
6501650
6521652
65321306
65421308
65521310
65721314
6581658
6591659
6601660
66121322
66321326
66642664
66742668
6681668
66942676
67032010
67132013
67221344
67332019
6741674
6751675
6761676
67721354
67821356
67921358
68064080
68153405
68253410
68332049
68453420
68553425
68753435
68821376
68932067
69021380
6911691
69221384
69332079
69421388
69532085
69632088
69732091
69842792
69921398
70021400
70121402
70274914
70321406
70432112
70574935
70642824
70732121
7081708
70932127
71053550
71121422
71232136
71385704
71442856
71532145
71621432
71753585
71853590
71942876
72042880
72132163
72232166
72385784
72442896
72553625
72675082
72732181
72875096
72942916
73042920
73142924
732118052
73342932
73464404
73532205
73642944
73742948
73832214
74053700
74132223
74232226
74321486
7441744
74521490
7461746
74742988
74842992
7491749
75053750
7511751
7521752
75321506
75421508
75532265
75632268
7571757
7601760
76221524
7781778
77932337
7811781
7831783
7851785
7861786
7871787
7881788
7891789
7901790
7921792
7941794
Total1002609789
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
212
326
428
5315
616
717
818
10110
13113
16232
17234
18354
19119
20480
21242
22244
24124
254100
275135
28256
30130
31262
32264
33133
34134
353105
367252
376222
38276
396234
404160
415205
423126
43286
44288
45290
464184
473141
484192
493147
502100
513153
535265
542108
556330
575285
584232
594236
604240
614244
622124
63163
648512
652130
662132
674268
684272
692138
705350
712142
727504
733219
746444
752150
76176
772154
782156
79179
805400
8110810
825410
834332
845420
855425
86186
877609
886528
894356
906540
915455
924368
938744
944376
955475
968768
979873
98141372
997693
1008800
101111111
1028816
1038824
1046624
105121260
1065530
1073321
1085540
1098872
1109990
111101110
112131456
11391017
114121368
115151725
116111276
117161872
11891062
1196714
12091080
1218968
1227854
1234492
1246744
1254500
1267882
1275635
1304520
1316786
1326792
1337931
1344536
1352270
1362272
1376822
1384552
1396834
1403420
1414564
1427994
1435715
14481152
1456870
14671022
1472294
14871036
14991341
150111650
151101510
152111672
15381224
15471078
15581240
15671092
1574628
15881264
1596954
1604640
1615805
1624648
1632326
1642328
1654660
1661166
1674668
1684672
1694676
1702340
1711171
1724688
1734692
1741174
1752350
1764704
1772354
1783534
1793537
1801180
1813543
1823546
1835915
1844736
1853555
1864744
1874748
1883564
1892378
1903570
1912382
19261152
1933579
19481552
1952390
1961196
1971197
1983594
1993597
2001200
2011201
2022404
2033609
2042408
2052410
2064824
2072414
2083624
2092418
21051050
2112422
2122424
21351065
2142428
2152430
2161216
2171217
2183654
2203660
2211221
2224888
2232446
22451120
2252450
2273681
2283684
22951145
2313693
2323696
2332466
2342468
2351235
2361236
23771659
2381238
2391239
2401240
2411241
2421242
2434972
2444976
2453735
24651230
2473741
2482496
2502500
2513753
25251260
2531253
2541254
2553765
2571257
2581258
2593777
2602331606060
Total3333733754
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
02331
11000
81
Total3332
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343033266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88828264a88a818c
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3832363461383861
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_1_12.json b/autobahn/client/tungstenite_case_13_1_12.json new file mode 100644 index 0000000..90511ae --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_12.json @@ -0,0 +1,651 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 403, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]", + "droppedByMe": true, + "duration": 3031, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=403&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 35yE0f45RRQHLgCZNn7lOw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: xrgvHc+krvzS/wzibnl+2LQDESw=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "13.1.12", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "492": 2, + "493": 2, + "494": 2, + "495": 2, + "496": 5, + "497": 4, + "498": 5, + "499": 3, + "500": 3, + "501": 10, + "502": 12, + "503": 5, + "504": 9, + "505": 8, + "506": 8, + "507": 3, + "508": 6, + "509": 10, + "510": 8, + "511": 7, + "512": 7, + "513": 4, + "514": 1, + "515": 3, + "516": 2, + "517": 4, + "518": 4, + "519": 3, + "520": 2, + "521": 2, + "522": 5, + "523": 4, + "524": 6, + "525": 11, + "526": 9, + "527": 10, + "528": 10, + "529": 11, + "530": 9, + "531": 12, + "532": 11, + "533": 7, + "534": 9, + "535": 8, + "536": 12, + "537": 5, + "538": 5, + "539": 7, + "540": 5, + "541": 1, + "542": 3, + "543": 3, + "544": 1, + "545": 2, + "546": 6, + "547": 2, + "548": 2, + "549": 6, + "551": 4, + "552": 2, + "553": 1, + "554": 2, + "555": 4, + "556": 6, + "557": 5, + "558": 4, + "559": 8, + "560": 12, + "561": 10, + "562": 15, + "563": 13, + "564": 5, + "565": 9, + "566": 6, + "567": 6, + "568": 6, + "570": 1, + "571": 3, + "572": 4, + "573": 2, + "574": 2, + "575": 3, + "576": 1, + "577": 6, + "578": 5, + "579": 4, + "580": 4, + "581": 4, + "582": 2, + "583": 4, + "584": 1, + "585": 1, + "586": 3, + "588": 3, + "589": 2, + "590": 2, + "591": 4, + "592": 2, + "593": 2, + "594": 2, + "595": 2, + "596": 1, + "597": 2, + "598": 4, + "599": 4, + "600": 4, + "601": 8, + "602": 3, + "603": 4, + "604": 4, + "605": 4, + "606": 4, + "607": 6, + "608": 3, + "610": 2, + "611": 3, + "612": 3, + "613": 4, + "614": 7, + "615": 4, + "616": 3, + "617": 3, + "618": 1, + "619": 2, + "620": 3, + "621": 1, + "622": 2, + "623": 2, + "624": 2, + "625": 2, + "626": 1, + "629": 2, + "630": 2, + "631": 3, + "632": 3, + "633": 3, + "634": 1, + "635": 3, + "637": 1, + "638": 3, + "639": 2, + "640": 3, + "641": 4, + "643": 2, + "644": 3, + "645": 1, + "646": 5, + "647": 1, + "648": 4, + "649": 2, + "650": 1, + "652": 1, + "653": 2, + "654": 2, + "655": 2, + "657": 2, + "658": 1, + "659": 1, + "660": 1, + "661": 2, + "663": 2, + "666": 4, + "667": 4, + "668": 1, + "669": 4, + "670": 3, + "671": 3, + "672": 2, + "673": 3, + "674": 1, + "675": 1, + "676": 1, + "677": 2, + "678": 2, + "679": 2, + "680": 6, + "681": 5, + "682": 5, + "683": 3, + "684": 5, + "685": 5, + "687": 5, + "688": 2, + "689": 3, + "690": 2, + "691": 1, + "692": 2, + "693": 3, + "694": 2, + "695": 3, + "696": 3, + "697": 3, + "698": 4, + "699": 2, + "700": 2, + "701": 2, + "702": 7, + "703": 2, + "704": 3, + "705": 7, + "706": 4, + "707": 3, + "708": 1, + "709": 3, + "710": 5, + "711": 2, + "712": 3, + "713": 8, + "714": 4, + "715": 3, + "716": 2, + "717": 5, + "718": 5, + "719": 4, + "720": 4, + "721": 3, + "722": 3, + "723": 8, + "724": 4, + "725": 5, + "726": 7, + "727": 3, + "728": 7, + "729": 4, + "730": 4, + "731": 4, + "732": 11, + "733": 4, + "734": 6, + "735": 3, + "736": 4, + "737": 4, + "738": 3, + "740": 5, + "741": 3, + "742": 3, + "743": 2, + "744": 1, + "745": 2, + "746": 1, + "747": 4, + "748": 4, + "749": 1, + "750": 5, + "751": 1, + "752": 1, + "753": 2, + "754": 2, + "755": 3, + "756": 3, + "757": 1, + "760": 1, + "762": 2, + "778": 1, + "779": 3, + "781": 1, + "783": 1, + "785": 1, + "786": 1, + "787": 1, + "788": 1, + "789": 1, + "790": 1, + "792": 1, + "794": 1 + }, + "started": "2020-09-07T18:52:15.707Z", + "trafficStats": { + "incomingCompressionRatio": 0.036714111328125, + "incomingOctetsAppLevel": 16384000, + "incomingOctetsWebSocketLevel": 601524, + "incomingOctetsWireLevel": 609524, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.013299552470059383, + "outgoingCompressionRatio": 0.0440235595703125, + "outgoingOctetsAppLevel": 16384000, + "outgoingOctetsWebSocketLevel": 721282, + "outgoingOctetsWireLevel": 733498, + "outgoingWebSocketFrames": 3331, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.016936510269215093, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 2331, + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "3": 2, + "4": 2, + "5": 3, + "6": 1, + "7": 1, + "8": 1, + "10": 1, + "13": 1, + "16": 2, + "17": 2, + "18": 3, + "19": 1, + "20": 4, + "21": 2, + "22": 2, + "24": 1, + "25": 4, + "27": 5, + "28": 2, + "30": 1, + "31": 2, + "32": 2, + "33": 1, + "34": 1, + "35": 3, + "36": 7, + "37": 6, + "38": 2, + "39": 6, + "40": 4, + "41": 5, + "42": 3, + "43": 2, + "44": 2, + "45": 2, + "46": 4, + "47": 3, + "48": 4, + "49": 3, + "50": 2, + "51": 3, + "53": 5, + "54": 2, + "55": 6, + "57": 5, + "58": 4, + "59": 4, + "60": 4, + "61": 4, + "62": 2, + "63": 1, + "64": 8, + "65": 2, + "66": 2, + "67": 4, + "68": 4, + "69": 2, + "70": 5, + "71": 2, + "72": 7, + "73": 3, + "74": 6, + "75": 2, + "76": 1, + "77": 2, + "78": 2, + "79": 1, + "80": 5, + "81": 10, + "82": 5, + "83": 4, + "84": 5, + "85": 5, + "86": 1, + "87": 7, + "88": 6, + "89": 4, + "90": 6, + "91": 5, + "92": 4, + "93": 8, + "94": 4, + "95": 5, + "96": 8, + "97": 9, + "98": 14, + "99": 7, + "100": 8, + "101": 11, + "102": 8, + "103": 8, + "104": 6, + "105": 12, + "106": 5, + "107": 3, + "108": 5, + "109": 8, + "110": 9, + "111": 10, + "112": 13, + "113": 9, + "114": 12, + "115": 15, + "116": 11, + "117": 16, + "118": 9, + "119": 6, + "120": 9, + "121": 8, + "122": 7, + "123": 4, + "124": 6, + "125": 4, + "126": 7, + "127": 5, + "130": 4, + "131": 6, + "132": 6, + "133": 7, + "134": 4, + "135": 2, + "136": 2, + "137": 6, + "138": 4, + "139": 6, + "140": 3, + "141": 4, + "142": 7, + "143": 5, + "144": 8, + "145": 6, + "146": 7, + "147": 2, + "148": 7, + "149": 9, + "150": 11, + "151": 10, + "152": 11, + "153": 8, + "154": 7, + "155": 8, + "156": 7, + "157": 4, + "158": 8, + "159": 6, + "160": 4, + "161": 5, + "162": 4, + "163": 2, + "164": 2, + "165": 4, + "166": 1, + "167": 4, + "168": 4, + "169": 4, + "170": 2, + "171": 1, + "172": 4, + "173": 4, + "174": 1, + "175": 2, + "176": 4, + "177": 2, + "178": 3, + "179": 3, + "180": 1, + "181": 3, + "182": 3, + "183": 5, + "184": 4, + "185": 3, + "186": 4, + "187": 4, + "188": 3, + "189": 2, + "190": 3, + "191": 2, + "192": 6, + "193": 3, + "194": 8, + "195": 2, + "196": 1, + "197": 1, + "198": 3, + "199": 3, + "200": 1, + "201": 1, + "202": 2, + "203": 3, + "204": 2, + "205": 2, + "206": 4, + "207": 2, + "208": 3, + "209": 2, + "210": 5, + "211": 2, + "212": 2, + "213": 5, + "214": 2, + "215": 2, + "216": 1, + "217": 1, + "218": 3, + "220": 3, + "221": 1, + "222": 4, + "223": 2, + "224": 5, + "225": 2, + "227": 3, + "228": 3, + "229": 5, + "231": 3, + "232": 3, + "233": 2, + "234": 2, + "235": 1, + "236": 1, + "237": 7, + "238": 1, + "239": 1, + "240": 1, + "241": 1, + "242": 1, + "243": 4, + "244": 4, + "245": 3, + "246": 5, + "247": 3, + "248": 2, + "250": 2, + "251": 3, + "252": 5, + "253": 1, + "254": 1, + "255": 3, + "257": 1, + "258": 1, + "259": 3, + "260": 2331 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343033266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88828264a88a818c" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "8264a88a" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_1_13.html b/autobahn/client/tungstenite_case_13_1_13.html new file mode 100644 index 0000000..41f217b --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_13.html @@ -0,0 +1,883 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.1.13 : Pass - 2591 ms @ 2020-09-07T18:52:18.740Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=404&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 85j6TWIXbCpt+TKb4NPf8Q==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: jtT+o8W9Eb+3QumtKsVSIDS1+t8=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
9951995
9971997
9981998
9991999
100011000
100122002
100233006
100355015
100411004
100511005
100611006
100822016
101033030
101222024
101611016
101711017
101922038
102022040
102111021
102233066
102311023
102455120
102577175
102655130
102711027
102844112
102922058
103055150
103122062
103266192
103311033
103444136
103522070
103655180
103711037
103822076
103922078
104044160
104311043
104411044
104522090
104622092
104766282
104844192
104922098
105066300
105155255
105266312
105399477
105466324
105577385
105677392
105777399
105855290
105966354
106055300
106144244
106233186
106344252
106466384
106566390
106622132
106711067
106855340
106933207
107055350
107133213
107266432
107388584
107433222
107566450
107677532
107755385
107877546
107977553
108033240
108166486
108255410
108322166
108444336
108511085
108611086
108733261
108822176
108966534
109044360
109255460
109322186
109422188
109511095
109744388
109866588
109911099
110044400
110222204
110322206
110422208
110511105
110622212
110722214
110811108
110922218
111033330
111211112
111333339
111433342
111622232
111711117
112022240
112111121
112211122
112422248
112511125
112611126
112711127
112922258
113022260
113111131
113233396
113311133
113411134
113511135
113644544
113722274
113822276
113933417
114222284
114311143
114622292
114722294
114911149
115011150
115122302
115233456
115422308
115511155
115611156
115733471
115822316
116011160
116122322
116244648
116322326
116422328
116511165
116622332
116733501
116933507
117011170
117111171
117233516
117344692
117422348
117511175
117655880
117733531
117822356
117911179
118022360
118155905
118222364
118322366
118433552
118633558
118733561
118822376
118911189
119033570
119222384
119355965
119411194
119522390
119633588
119711197
119811198
119911199
120033600
120222404
120311203
120411204
120533615
120611206
120711207
120811208
120933627
121022420
121111211
121211212
121322426
121444856
121533645
121644864
121733651
121833654
121933657
122011220
122122442
122211222
122433672
122511225
122633678
122822456
122922458
123033690
123111231
123211232
123333699
123511235
123633708
123733711
123833714
123911239
124033720
124122482
124233726
124322486
124422488
124522490
124656230
124722494
124844992
125011250
125178757
125233756
125333759
125422508
125533765
125633768
125722514
125945036
126033780
126133783
126211262
126356315
126433792
126533795
126611266
126745068
126856340
126956345
127045080
127122542
127222544
127333819
127433822
127545100
127656380
127722554
127822556
127956395
128011280
128167686
128278974
128345132
1284810272
128556425
128622572
128767722
128833864
128967734
129045160
129179037
129256460
129379051
129422588
129533885
129611296
129722594
129879086
129956495
130045200
130145204
1302810416
1303911727
130445216
13051418270
13061114366
1307810456
130867848
130979163
131067860
131156555
131233936
131333939
131445256
131556575
131622632
131811318
131911319
132011320
132122642
132245288
132311323
132411324
132511325
132622652
133611336
135611356
136022720
136411364
136511365
136611366
136711367
136822736
136945476
137056850
137134113
137222744
137345492
137434122
137568250
137622752
137722754
137911379
138211382
138411384
138522770
138611386
138822776
139011390
139411394
139511395
139611396
139722794
139834194
140022800
140111401
140211402
140311403
140411404
140511405
140611406
140811408
140979863
141079870
141122822
141222824
141434242
141545660
141622832
141722834
141911419
142011420
Total10021192856
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
21020
31133
41560
5840
61060
7642
8540
91199
10330
11555
12896
1310130
148112
1510150
168128
178136
189162
1911209
2014280
2111231
2215330
238184
248192
256150
268208
278216
287196
298232
306180
315155
326192
335165
345170
355175
36272
375185
38276
395195
40280
41141
425210
434172
443132
456270
46292
47294
483144
494196
504200
513153
524208
532106
544216
552110
572114
583174
593177
60160
612122
622124
634252
642128
656390
662132
67167
696414
706420
712142
737511
744296
75175
762152
773231
783234
793237
805400
812162
82182
83183
842168
856510
863258
875435
887616
893267
903270
914364
924368
942188
95195
963288
97197
983294
995495
1003300
1012202
1023306
1036618
1041104
1054420
1062212
1072214
1086648
1094436
1104440
1111111
1124448
1134452
1143342
1154460
1162232
1172234
1193357
1203360
1213363
1223366
1232246
1242248
1262252
1272254
1301130
1312262
1321132
1336798
1342268
1351135
1363408
1374548
1381138
1391139
1401140
1414564
1422284
1432286
1441144
1452290
1461146
1474588
1492298
1512302
1524608
1541154
1551155
1563468
1572314
1594636
1601160
1612322
1622324
1641164
1664664
1672334
1681168
1692338
1701170
1712342
1722344
1732346
1743522
1752350
1762352
1772354
1791179
1802360
1811181
1821182
1832366
1841184
1853555
1862372
1872374
1882376
1894756
1904760
19161146
1923576
1932386
1942388
1951195
1962392
1973591
1983594
1992398
2002400
2011201
2021202
2033609
2044816
20561230
2063618
2072414
2084832
2093627
2102420
2111211
2124848
2133639
2142428
21551075
21661296
2171217
2183654
2191219
2204880
22161326
2223666
2232446
2244896
2253675
2264904
2273681
2284912
2293687
2304920
2313693
2324928
23361398
23451170
2353705
2362472
23771659
23892142
23951195
24071680
2412482
242102420
2434972
2444976
24581960
24661476
24871736
249133237
25041000
251112761
25271764
253102530
254102540
255102550
256164096
257133341
258184644
259143626
26051161330160
Total61181454489
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
05116
11000
81
Total6117
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343034266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882dddb700ade33
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6464646237303061
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_1_13.json b/autobahn/client/tungstenite_case_13_1_13.json new file mode 100644 index 0000000..5b9a589 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_13.json @@ -0,0 +1,730 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 404, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]", + "droppedByMe": true, + "duration": 2591, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=404&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 85j6TWIXbCpt+TKb4NPf8Q==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: jtT+o8W9Eb+3QumtKsVSIDS1+t8=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "13.1.13", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "995": 1, + "997": 1, + "998": 1, + "999": 1, + "1000": 1, + "1001": 2, + "1002": 3, + "1003": 5, + "1004": 1, + "1005": 1, + "1006": 1, + "1008": 2, + "1010": 3, + "1012": 2, + "1016": 1, + "1017": 1, + "1019": 2, + "1020": 2, + "1021": 1, + "1022": 3, + "1023": 1, + "1024": 5, + "1025": 7, + "1026": 5, + "1027": 1, + "1028": 4, + "1029": 2, + "1030": 5, + "1031": 2, + "1032": 6, + "1033": 1, + "1034": 4, + "1035": 2, + "1036": 5, + "1037": 1, + "1038": 2, + "1039": 2, + "1040": 4, + "1043": 1, + "1044": 1, + "1045": 2, + "1046": 2, + "1047": 6, + "1048": 4, + "1049": 2, + "1050": 6, + "1051": 5, + "1052": 6, + "1053": 9, + "1054": 6, + "1055": 7, + "1056": 7, + "1057": 7, + "1058": 5, + "1059": 6, + "1060": 5, + "1061": 4, + "1062": 3, + "1063": 4, + "1064": 6, + "1065": 6, + "1066": 2, + "1067": 1, + "1068": 5, + "1069": 3, + "1070": 5, + "1071": 3, + "1072": 6, + "1073": 8, + "1074": 3, + "1075": 6, + "1076": 7, + "1077": 5, + "1078": 7, + "1079": 7, + "1080": 3, + "1081": 6, + "1082": 5, + "1083": 2, + "1084": 4, + "1085": 1, + "1086": 1, + "1087": 3, + "1088": 2, + "1089": 6, + "1090": 4, + "1092": 5, + "1093": 2, + "1094": 2, + "1095": 1, + "1097": 4, + "1098": 6, + "1099": 1, + "1100": 4, + "1102": 2, + "1103": 2, + "1104": 2, + "1105": 1, + "1106": 2, + "1107": 2, + "1108": 1, + "1109": 2, + "1110": 3, + "1112": 1, + "1113": 3, + "1114": 3, + "1116": 2, + "1117": 1, + "1120": 2, + "1121": 1, + "1122": 1, + "1124": 2, + "1125": 1, + "1126": 1, + "1127": 1, + "1129": 2, + "1130": 2, + "1131": 1, + "1132": 3, + "1133": 1, + "1134": 1, + "1135": 1, + "1136": 4, + "1137": 2, + "1138": 2, + "1139": 3, + "1142": 2, + "1143": 1, + "1146": 2, + "1147": 2, + "1149": 1, + "1150": 1, + "1151": 2, + "1152": 3, + "1154": 2, + "1155": 1, + "1156": 1, + "1157": 3, + "1158": 2, + "1160": 1, + "1161": 2, + "1162": 4, + "1163": 2, + "1164": 2, + "1165": 1, + "1166": 2, + "1167": 3, + "1169": 3, + "1170": 1, + "1171": 1, + "1172": 3, + "1173": 4, + "1174": 2, + "1175": 1, + "1176": 5, + "1177": 3, + "1178": 2, + "1179": 1, + "1180": 2, + "1181": 5, + "1182": 2, + "1183": 2, + "1184": 3, + "1186": 3, + "1187": 3, + "1188": 2, + "1189": 1, + "1190": 3, + "1192": 2, + "1193": 5, + "1194": 1, + "1195": 2, + "1196": 3, + "1197": 1, + "1198": 1, + "1199": 1, + "1200": 3, + "1202": 2, + "1203": 1, + "1204": 1, + "1205": 3, + "1206": 1, + "1207": 1, + "1208": 1, + "1209": 3, + "1210": 2, + "1211": 1, + "1212": 1, + "1213": 2, + "1214": 4, + "1215": 3, + "1216": 4, + "1217": 3, + "1218": 3, + "1219": 3, + "1220": 1, + "1221": 2, + "1222": 1, + "1224": 3, + "1225": 1, + "1226": 3, + "1228": 2, + "1229": 2, + "1230": 3, + "1231": 1, + "1232": 1, + "1233": 3, + "1235": 1, + "1236": 3, + "1237": 3, + "1238": 3, + "1239": 1, + "1240": 3, + "1241": 2, + "1242": 3, + "1243": 2, + "1244": 2, + "1245": 2, + "1246": 5, + "1247": 2, + "1248": 4, + "1250": 1, + "1251": 7, + "1252": 3, + "1253": 3, + "1254": 2, + "1255": 3, + "1256": 3, + "1257": 2, + "1259": 4, + "1260": 3, + "1261": 3, + "1262": 1, + "1263": 5, + "1264": 3, + "1265": 3, + "1266": 1, + "1267": 4, + "1268": 5, + "1269": 5, + "1270": 4, + "1271": 2, + "1272": 2, + "1273": 3, + "1274": 3, + "1275": 4, + "1276": 5, + "1277": 2, + "1278": 2, + "1279": 5, + "1280": 1, + "1281": 6, + "1282": 7, + "1283": 4, + "1284": 8, + "1285": 5, + "1286": 2, + "1287": 6, + "1288": 3, + "1289": 6, + "1290": 4, + "1291": 7, + "1292": 5, + "1293": 7, + "1294": 2, + "1295": 3, + "1296": 1, + "1297": 2, + "1298": 7, + "1299": 5, + "1300": 4, + "1301": 4, + "1302": 8, + "1303": 9, + "1304": 4, + "1305": 14, + "1306": 11, + "1307": 8, + "1308": 6, + "1309": 7, + "1310": 6, + "1311": 5, + "1312": 3, + "1313": 3, + "1314": 4, + "1315": 5, + "1316": 2, + "1318": 1, + "1319": 1, + "1320": 1, + "1321": 2, + "1322": 4, + "1323": 1, + "1324": 1, + "1325": 1, + "1326": 2, + "1336": 1, + "1356": 1, + "1360": 2, + "1364": 1, + "1365": 1, + "1366": 1, + "1367": 1, + "1368": 2, + "1369": 4, + "1370": 5, + "1371": 3, + "1372": 2, + "1373": 4, + "1374": 3, + "1375": 6, + "1376": 2, + "1377": 2, + "1379": 1, + "1382": 1, + "1384": 1, + "1385": 2, + "1386": 1, + "1388": 2, + "1390": 1, + "1394": 1, + "1395": 1, + "1396": 1, + "1397": 2, + "1398": 3, + "1400": 2, + "1401": 1, + "1402": 1, + "1403": 1, + "1404": 1, + "1405": 1, + "1406": 1, + "1408": 1, + "1409": 7, + "1410": 7, + "1411": 2, + "1412": 2, + "1414": 3, + "1415": 4, + "1416": 2, + "1417": 2, + "1419": 1, + "1420": 1 + }, + "started": "2020-09-07T18:52:18.740Z", + "trafficStats": { + "incomingCompressionRatio": 0.03615084838867187, + "incomingOctetsAppLevel": 32768000, + "incomingOctetsWebSocketLevel": 1184591, + "incomingOctetsWireLevel": 1192591, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0067533857677459985, + "outgoingCompressionRatio": 0.043666534423828125, + "outgoingOctetsAppLevel": 32768000, + "outgoingOctetsWebSocketLevel": 1430865, + "outgoingOctetsWireLevel": 1454233, + "outgoingWebSocketFrames": 6116, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.016331379969459034, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 5116, + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 10, + "3": 11, + "4": 15, + "5": 8, + "6": 10, + "7": 6, + "8": 5, + "9": 11, + "10": 3, + "11": 5, + "12": 8, + "13": 10, + "14": 8, + "15": 10, + "16": 8, + "17": 8, + "18": 9, + "19": 11, + "20": 14, + "21": 11, + "22": 15, + "23": 8, + "24": 8, + "25": 6, + "26": 8, + "27": 8, + "28": 7, + "29": 8, + "30": 6, + "31": 5, + "32": 6, + "33": 5, + "34": 5, + "35": 5, + "36": 2, + "37": 5, + "38": 2, + "39": 5, + "40": 2, + "41": 1, + "42": 5, + "43": 4, + "44": 3, + "45": 6, + "46": 2, + "47": 2, + "48": 3, + "49": 4, + "50": 4, + "51": 3, + "52": 4, + "53": 2, + "54": 4, + "55": 2, + "57": 2, + "58": 3, + "59": 3, + "60": 1, + "61": 2, + "62": 2, + "63": 4, + "64": 2, + "65": 6, + "66": 2, + "67": 1, + "69": 6, + "70": 6, + "71": 2, + "73": 7, + "74": 4, + "75": 1, + "76": 2, + "77": 3, + "78": 3, + "79": 3, + "80": 5, + "81": 2, + "82": 1, + "83": 1, + "84": 2, + "85": 6, + "86": 3, + "87": 5, + "88": 7, + "89": 3, + "90": 3, + "91": 4, + "92": 4, + "94": 2, + "95": 1, + "96": 3, + "97": 1, + "98": 3, + "99": 5, + "100": 3, + "101": 2, + "102": 3, + "103": 6, + "104": 1, + "105": 4, + "106": 2, + "107": 2, + "108": 6, + "109": 4, + "110": 4, + "111": 1, + "112": 4, + "113": 4, + "114": 3, + "115": 4, + "116": 2, + "117": 2, + "119": 3, + "120": 3, + "121": 3, + "122": 3, + "123": 2, + "124": 2, + "126": 2, + "127": 2, + "130": 1, + "131": 2, + "132": 1, + "133": 6, + "134": 2, + "135": 1, + "136": 3, + "137": 4, + "138": 1, + "139": 1, + "140": 1, + "141": 4, + "142": 2, + "143": 2, + "144": 1, + "145": 2, + "146": 1, + "147": 4, + "149": 2, + "151": 2, + "152": 4, + "154": 1, + "155": 1, + "156": 3, + "157": 2, + "159": 4, + "160": 1, + "161": 2, + "162": 2, + "164": 1, + "166": 4, + "167": 2, + "168": 1, + "169": 2, + "170": 1, + "171": 2, + "172": 2, + "173": 2, + "174": 3, + "175": 2, + "176": 2, + "177": 2, + "179": 1, + "180": 2, + "181": 1, + "182": 1, + "183": 2, + "184": 1, + "185": 3, + "186": 2, + "187": 2, + "188": 2, + "189": 4, + "190": 4, + "191": 6, + "192": 3, + "193": 2, + "194": 2, + "195": 1, + "196": 2, + "197": 3, + "198": 3, + "199": 2, + "200": 2, + "201": 1, + "202": 1, + "203": 3, + "204": 4, + "205": 6, + "206": 3, + "207": 2, + "208": 4, + "209": 3, + "210": 2, + "211": 1, + "212": 4, + "213": 3, + "214": 2, + "215": 5, + "216": 6, + "217": 1, + "218": 3, + "219": 1, + "220": 4, + "221": 6, + "222": 3, + "223": 2, + "224": 4, + "225": 3, + "226": 4, + "227": 3, + "228": 4, + "229": 3, + "230": 4, + "231": 3, + "232": 4, + "233": 6, + "234": 5, + "235": 3, + "236": 2, + "237": 7, + "238": 9, + "239": 5, + "240": 7, + "241": 2, + "242": 10, + "243": 4, + "244": 4, + "245": 8, + "246": 6, + "248": 7, + "249": 13, + "250": 4, + "251": 11, + "252": 7, + "253": 10, + "254": 10, + "255": 10, + "256": 16, + "257": 13, + "258": 18, + "259": 14, + "260": 5116 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343034266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882dddb700ade33" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "dddb700a" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_1_14.html b/autobahn/client/tungstenite_case_13_1_14.html new file mode 100644 index 0000000..cff66e9 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_14.html @@ -0,0 +1,556 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.1.14 : Pass - 4097 ms @ 2020-09-07T18:52:21.332Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=405&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: MptUAk0UHjnr2uziCwdowA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: gLzrJsmrpNhhZYK0RxdkByxsjXM=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
229112291
229312293
229524590
229636888
229712297
229824596
229912299
230024600
230149204
2302716114
2303511515
2304818432
2305613830
230649224
2307613842
2308716156
23091841562
23101125410
2311920799
23122353176
23131637008
23142557850
23152353245
23162455584
23171432438
23181841724
23191841742
23201432480
23212455704
23222353406
23231432522
23241637184
23251330225
23261227912
23271023270
23281125608
2329511645
2330716310
2331716317
2332511660
2333511665
2334511670
233549340
233624672
233749348
2338818704
2339511695
2340818720
2341716387
2342818736
2343511715
23441125784
23451228140
23461637536
23471228164
23481739916
23491842282
23501842300
2351716457
2352921168
23531330589
235449416
2355511775
235612356
235737071
235824716
236012360
236124722
236224724
236624732
236712367
236812368
236924738
237012370
237112371
237224744
237324746
237537125
237649504
237737131
237824756
237924758
238112381
238312383
238512385
238612386
238824776
239012390
239212392
239324786
239437182
239524790
239612396
239724794
239824796
2399716793
2400716800
2401614406
240224804
2403614418
240437212
2405512025
240612406
240737221
240812408
240924818
241124822
2413512065
241449656
2415614490
241649664
24171536255
2418614508
2419716933
24201229040
24211433894
2422921798
24231536345
24241229088
2425614550
24262150946
24272048540
24282048560
24291229148
24301741310
24312151051
24321331616
2433921897
2434819472
2435614610
2436512180
243724874
243812438
244112441
244224884
244512445
245412454
Total10022360177
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
21734
32163
428112
525125
622132
726182
820160
934306
1020200
1114154
12896
139117
1417238
1516240
1617272
1716272
1810180
199171
205100
21363
22122
23369
24496
25250
28256
29129
31131
32132
33266
35135
36136
37274
393117
414164
42142
444176
453135
46292
48296
49149
50150
51151
52152
54154
60160
61161
642128
65165
66166
67167
682136
69169
702140
74174
77177
79179
813243
822164
832166
845420
858680
865430
877609
884352
898712
902180
913273
923276
935465
9410940
95111045
96161536
9710970
98111078
996594
100191900
101121212
1026612
1039927
104121248
105121260
106121272
1079963
1087756
1099981
1107770
1116666
1124448
1134452
1142228
1153345
1161116
1176702
118111298
1198952
120131560
121101210
12291098
1235615
1242248
1253375
1411141
2412482
2421242
2432486
24451220
2454980
24661476
24751235
24861488
249122988
250174250
251225522
252276804
253287084
254174318
255358925
256194864
257317967
258205160
259235957
260107192786940
Total117212897789
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
010719
11000
81
Total11720
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343035266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882eea5e939ed4d
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6565613565393339
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_1_14.json b/autobahn/client/tungstenite_case_13_1_14.json new file mode 100644 index 0000000..7cdb33c --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_14.json @@ -0,0 +1,403 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 405, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]", + "droppedByMe": true, + "duration": 4097, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=405&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: MptUAk0UHjnr2uziCwdowA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: gLzrJsmrpNhhZYK0RxdkByxsjXM=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "13.1.14", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "2291": 1, + "2293": 1, + "2295": 2, + "2296": 3, + "2297": 1, + "2298": 2, + "2299": 1, + "2300": 2, + "2301": 4, + "2302": 7, + "2303": 5, + "2304": 8, + "2305": 6, + "2306": 4, + "2307": 6, + "2308": 7, + "2309": 18, + "2310": 11, + "2311": 9, + "2312": 23, + "2313": 16, + "2314": 25, + "2315": 23, + "2316": 24, + "2317": 14, + "2318": 18, + "2319": 18, + "2320": 14, + "2321": 24, + "2322": 23, + "2323": 14, + "2324": 16, + "2325": 13, + "2326": 12, + "2327": 10, + "2328": 11, + "2329": 5, + "2330": 7, + "2331": 7, + "2332": 5, + "2333": 5, + "2334": 5, + "2335": 4, + "2336": 2, + "2337": 4, + "2338": 8, + "2339": 5, + "2340": 8, + "2341": 7, + "2342": 8, + "2343": 5, + "2344": 11, + "2345": 12, + "2346": 16, + "2347": 12, + "2348": 17, + "2349": 18, + "2350": 18, + "2351": 7, + "2352": 9, + "2353": 13, + "2354": 4, + "2355": 5, + "2356": 1, + "2357": 3, + "2358": 2, + "2360": 1, + "2361": 2, + "2362": 2, + "2366": 2, + "2367": 1, + "2368": 1, + "2369": 2, + "2370": 1, + "2371": 1, + "2372": 2, + "2373": 2, + "2375": 3, + "2376": 4, + "2377": 3, + "2378": 2, + "2379": 2, + "2381": 1, + "2383": 1, + "2385": 1, + "2386": 1, + "2388": 2, + "2390": 1, + "2392": 1, + "2393": 2, + "2394": 3, + "2395": 2, + "2396": 1, + "2397": 2, + "2398": 2, + "2399": 7, + "2400": 7, + "2401": 6, + "2402": 2, + "2403": 6, + "2404": 3, + "2405": 5, + "2406": 1, + "2407": 3, + "2408": 1, + "2409": 2, + "2411": 2, + "2413": 5, + "2414": 4, + "2415": 6, + "2416": 4, + "2417": 15, + "2418": 6, + "2419": 7, + "2420": 12, + "2421": 14, + "2422": 9, + "2423": 15, + "2424": 12, + "2425": 6, + "2426": 21, + "2427": 20, + "2428": 20, + "2429": 12, + "2430": 17, + "2431": 21, + "2432": 13, + "2433": 9, + "2434": 8, + "2435": 6, + "2436": 5, + "2437": 2, + "2438": 1, + "2441": 1, + "2442": 2, + "2445": 1, + "2454": 1 + }, + "started": "2020-09-07T18:52:21.332Z", + "trafficStats": { + "incomingCompressionRatio": 0.0358873291015625, + "incomingOctetsAppLevel": 65536000, + "incomingOctetsWebSocketLevel": 2351912, + "incomingOctetsWireLevel": 2359912, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.00340148781076843, + "outgoingCompressionRatio": 0.04351948547363281, + "outgoingOctetsAppLevel": 65536000, + "outgoingOctetsWebSocketLevel": 2852093, + "outgoingOctetsWireLevel": 2897533, + "outgoingWebSocketFrames": 11719, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.015932159294945854, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 10719, + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 17, + "3": 21, + "4": 28, + "5": 25, + "6": 22, + "7": 26, + "8": 20, + "9": 34, + "10": 20, + "11": 14, + "12": 8, + "13": 9, + "14": 17, + "15": 16, + "16": 17, + "17": 16, + "18": 10, + "19": 9, + "20": 5, + "21": 3, + "22": 1, + "23": 3, + "24": 4, + "25": 2, + "28": 2, + "29": 1, + "31": 1, + "32": 1, + "33": 2, + "35": 1, + "36": 1, + "37": 2, + "39": 3, + "41": 4, + "42": 1, + "44": 4, + "45": 3, + "46": 2, + "48": 2, + "49": 1, + "50": 1, + "51": 1, + "52": 1, + "54": 1, + "60": 1, + "61": 1, + "64": 2, + "65": 1, + "66": 1, + "67": 1, + "68": 2, + "69": 1, + "70": 2, + "74": 1, + "77": 1, + "79": 1, + "81": 3, + "82": 2, + "83": 2, + "84": 5, + "85": 8, + "86": 5, + "87": 7, + "88": 4, + "89": 8, + "90": 2, + "91": 3, + "92": 3, + "93": 5, + "94": 10, + "95": 11, + "96": 16, + "97": 10, + "98": 11, + "99": 6, + "100": 19, + "101": 12, + "102": 6, + "103": 9, + "104": 12, + "105": 12, + "106": 12, + "107": 9, + "108": 7, + "109": 9, + "110": 7, + "111": 6, + "112": 4, + "113": 4, + "114": 2, + "115": 3, + "116": 1, + "117": 6, + "118": 11, + "119": 8, + "120": 13, + "121": 10, + "122": 9, + "123": 5, + "124": 2, + "125": 3, + "141": 1, + "241": 2, + "242": 1, + "243": 2, + "244": 5, + "245": 4, + "246": 6, + "247": 5, + "248": 6, + "249": 12, + "250": 17, + "251": 22, + "252": 27, + "253": 28, + "254": 17, + "255": 35, + "256": 19, + "257": 31, + "258": 20, + "259": 23, + "260": 10719 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343035266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882eea5e939ed4d" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "eea5e939" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_1_15.html b/autobahn/client/tungstenite_case_13_1_15.html new file mode 100644 index 0000000..3f1cc81 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_15.html @@ -0,0 +1,598 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.1.15 : Pass - 7986 ms @ 2020-09-07T18:52:25.429Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=406&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ioCvV82ggBSK2FuZZ2aBxQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: aSuJBjeskC3O+x0f6cHFfk7dWIc=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
457229144
457529150
457614576
457729154
4578313734
4580313740
4581313743
45821464148
4583836664
4584732088
4585836680
45861150446
4587522935
45881045880
4589627534
45901150490
4591732137
4592836736
459314593
4594418376
4595418380
45961045960
4597418388
459829196
4599836792
460029200
4601732207
4602627612
4603627618
4604732228
4605627630
4606732242
460714607
460829216
4609732263
46101046100
46111150721
46121046120
46131359969
46141150754
4615627690
46161046160
4617523085
461829236
4619418476
4620418480
462129242
4622418488
4623313869
462429248
462514625
463114631
463314633
463414634
463714637
463814638
463929278
464029280
464114641
4643313929
464514645
464814648
464929298
465029300
4651418604
4652418608
465314653
4654418616
465514655
465629312
465714657
465929318
466014660
466129322
4663313989
466429328
4665313995
4666313998
4667523335
4668418672
4669523345
4670732690
4671942039
4672418688
4673418692
4674837392
46751046750
4676314028
46771046770
4678837424
4679942111
46801151480
4681837448
46821151502
46831465562
46841256208
46851360905
46861151546
46871989053
4688732816
46891570335
46901675040
46911779747
46921675072
469323107939
46941570410
46951361035
46961989224
46971465758
46981989262
46991151689
47001465800
47011884618
47021884636
47031047030
47041256448
47051256460
47061151766
470729414
470814708
4709732963
471029420
471114711
4712628272
471329426
471414714
4715418860
471629432
4717628302
4718523590
4719523595
47201256640
4721837768
4722523610
4723314169
4724628344
472514725
4726628356
47271047270
47281885104
47291570935
47302199330
47311047310
4732942588
4733314199
4734523670
473529470
473614736
473714737
474914749
477014770
4771419084
477214772
477314773
477629552
Total10024668715
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
326
4416
515
6212
7214
818
9218
10110
11333
12112
13339
14684
15230
16232
17234
23123
30130
31262
33133
34134
36136
37274
393117
40140
41141
42284
433129
449396
455225
463138
4710470
4810480
4915735
50201000
5114714
5216832
5314742
54211134
55261430
5617952
5711627
58251450
59211239
60241440
6116976
62251550
63241512
64241536
6512780
66171122
67191273
6813884
699621
70251750
71251775
72161152
7312876
7411814
758600
7610760
77131001
784312
796474
803240
81181
822164
832166
845420
853255
863258
875435
884352
89121068
9010900
917637
92111012
939837
942188
953285
972194
983294
99199
1121112
1131113
1141114
1163348
1172234
1191119
1271127
1302260
1992398
2001200
2011201
2021202
2032406
20451020
20571435
20651030
2074828
2081208
20961254
21081680
21161266
2124848
213112343
21481712
21571505
21661296
21761302
2184872
2194876
22051100
22151105
22271554
223173791
224163584
225143150
226132938
22761362
22861368
229102290
230163680
231133003
23292088
23361398
23461404
23561410
2362472
2374948
23851190
2394956
24061440
2413723
2432486
2442488
2462492
2481248
2491249
2513753
2521252
2533759
2542508
2561256
2582516
2591259
260217025642520
Total227045753762
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
021702
11000
81
Total22703
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343036266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882d2a5ff4cd14d
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6432613566663463
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_1_15.json b/autobahn/client/tungstenite_case_13_1_15.json new file mode 100644 index 0000000..e6bcd67 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_15.json @@ -0,0 +1,445 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 406, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]", + "droppedByMe": true, + "duration": 7986, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=406&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ioCvV82ggBSK2FuZZ2aBxQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: aSuJBjeskC3O+x0f6cHFfk7dWIc=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "13.1.15", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "4572": 2, + "4575": 2, + "4576": 1, + "4577": 2, + "4578": 3, + "4580": 3, + "4581": 3, + "4582": 14, + "4583": 8, + "4584": 7, + "4585": 8, + "4586": 11, + "4587": 5, + "4588": 10, + "4589": 6, + "4590": 11, + "4591": 7, + "4592": 8, + "4593": 1, + "4594": 4, + "4595": 4, + "4596": 10, + "4597": 4, + "4598": 2, + "4599": 8, + "4600": 2, + "4601": 7, + "4602": 6, + "4603": 6, + "4604": 7, + "4605": 6, + "4606": 7, + "4607": 1, + "4608": 2, + "4609": 7, + "4610": 10, + "4611": 11, + "4612": 10, + "4613": 13, + "4614": 11, + "4615": 6, + "4616": 10, + "4617": 5, + "4618": 2, + "4619": 4, + "4620": 4, + "4621": 2, + "4622": 4, + "4623": 3, + "4624": 2, + "4625": 1, + "4631": 1, + "4633": 1, + "4634": 1, + "4637": 1, + "4638": 1, + "4639": 2, + "4640": 2, + "4641": 1, + "4643": 3, + "4645": 1, + "4648": 1, + "4649": 2, + "4650": 2, + "4651": 4, + "4652": 4, + "4653": 1, + "4654": 4, + "4655": 1, + "4656": 2, + "4657": 1, + "4659": 2, + "4660": 1, + "4661": 2, + "4663": 3, + "4664": 2, + "4665": 3, + "4666": 3, + "4667": 5, + "4668": 4, + "4669": 5, + "4670": 7, + "4671": 9, + "4672": 4, + "4673": 4, + "4674": 8, + "4675": 10, + "4676": 3, + "4677": 10, + "4678": 8, + "4679": 9, + "4680": 11, + "4681": 8, + "4682": 11, + "4683": 14, + "4684": 12, + "4685": 13, + "4686": 11, + "4687": 19, + "4688": 7, + "4689": 15, + "4690": 16, + "4691": 17, + "4692": 16, + "4693": 23, + "4694": 15, + "4695": 13, + "4696": 19, + "4697": 14, + "4698": 19, + "4699": 11, + "4700": 14, + "4701": 18, + "4702": 18, + "4703": 10, + "4704": 12, + "4705": 12, + "4706": 11, + "4707": 2, + "4708": 1, + "4709": 7, + "4710": 2, + "4711": 1, + "4712": 6, + "4713": 2, + "4714": 1, + "4715": 4, + "4716": 2, + "4717": 6, + "4718": 5, + "4719": 5, + "4720": 12, + "4721": 8, + "4722": 5, + "4723": 3, + "4724": 6, + "4725": 1, + "4726": 6, + "4727": 10, + "4728": 18, + "4729": 15, + "4730": 21, + "4731": 10, + "4732": 9, + "4733": 3, + "4734": 5, + "4735": 2, + "4736": 1, + "4737": 1, + "4749": 1, + "4770": 1, + "4771": 4, + "4772": 1, + "4773": 1, + "4776": 2 + }, + "started": "2020-09-07T18:52:25.429Z", + "trafficStats": { + "incomingCompressionRatio": 0.03555641174316406, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 4660450, + "incomingOctetsWireLevel": 4668450, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0017165724339924255, + "outgoingCompressionRatio": 0.04321363830566406, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 5664098, + "outgoingOctetsWireLevel": 5753506, + "outgoingWebSocketFrames": 22702, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.01578503761764009, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 21702, + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "3": 2, + "4": 4, + "5": 1, + "6": 2, + "7": 2, + "8": 1, + "9": 2, + "10": 1, + "11": 3, + "12": 1, + "13": 3, + "14": 6, + "15": 2, + "16": 2, + "17": 2, + "23": 1, + "30": 1, + "31": 2, + "33": 1, + "34": 1, + "36": 1, + "37": 2, + "39": 3, + "40": 1, + "41": 1, + "42": 2, + "43": 3, + "44": 9, + "45": 5, + "46": 3, + "47": 10, + "48": 10, + "49": 15, + "50": 20, + "51": 14, + "52": 16, + "53": 14, + "54": 21, + "55": 26, + "56": 17, + "57": 11, + "58": 25, + "59": 21, + "60": 24, + "61": 16, + "62": 25, + "63": 24, + "64": 24, + "65": 12, + "66": 17, + "67": 19, + "68": 13, + "69": 9, + "70": 25, + "71": 25, + "72": 16, + "73": 12, + "74": 11, + "75": 8, + "76": 10, + "77": 13, + "78": 4, + "79": 6, + "80": 3, + "81": 1, + "82": 2, + "83": 2, + "84": 5, + "85": 3, + "86": 3, + "87": 5, + "88": 4, + "89": 12, + "90": 10, + "91": 7, + "92": 11, + "93": 9, + "94": 2, + "95": 3, + "97": 2, + "98": 3, + "99": 1, + "112": 1, + "113": 1, + "114": 1, + "116": 3, + "117": 2, + "119": 1, + "127": 1, + "130": 2, + "199": 2, + "200": 1, + "201": 1, + "202": 1, + "203": 2, + "204": 5, + "205": 7, + "206": 5, + "207": 4, + "208": 1, + "209": 6, + "210": 8, + "211": 6, + "212": 4, + "213": 11, + "214": 8, + "215": 7, + "216": 6, + "217": 6, + "218": 4, + "219": 4, + "220": 5, + "221": 5, + "222": 7, + "223": 17, + "224": 16, + "225": 14, + "226": 13, + "227": 6, + "228": 6, + "229": 10, + "230": 16, + "231": 13, + "232": 9, + "233": 6, + "234": 6, + "235": 6, + "236": 2, + "237": 4, + "238": 5, + "239": 4, + "240": 6, + "241": 3, + "243": 2, + "244": 2, + "246": 2, + "248": 1, + "249": 1, + "251": 3, + "252": 1, + "253": 3, + "254": 2, + "256": 1, + "258": 2, + "259": 1, + "260": 21702 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343036266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882d2a5ff4cd14d" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "d2a5ff4c" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_1_16.html b/autobahn/client/tungstenite_case_13_1_16.html new file mode 100644 index 0000000..fd24721 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_16.html @@ -0,0 +1,599 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.1.16 : Pass - 7501 ms @ 2020-09-07T18:52:33.416Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=407&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ABUSNchUnLnwiAVquPFoEw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: UrNEzg2mEEdd5a8+1bWrW8+dbSc=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
457229144
457529150
457614576
457729154
4578313734
4580313740
4581313743
45821464148
4583836664
4584732088
4585836680
45861150446
4587522935
45881045880
4589627534
45901150490
4591732137
4592836736
459314593
4594418376
4595418380
45961045960
4597418388
459829196
4599836792
460029200
4601732207
4602627612
4603627618
4604732228
4605627630
4606732242
460714607
460829216
4609732263
46101046100
46111150721
46121046120
46131359969
46141150754
4615627690
46161046160
4617523085
461829236
4619418476
4620418480
462129242
4622418488
4623313869
462429248
462514625
463114631
463314633
463414634
463714637
463814638
463929278
464029280
464114641
4643313929
464514645
464814648
464929298
465029300
4651418604
4652418608
465314653
4654418616
465514655
465629312
465714657
465929318
466014660
466129322
4663313989
466429328
4665313995
4666313998
4667523335
4668418672
4669523345
4670732690
4671942039
4672418688
4673418692
4674837392
46751046750
4676314028
46771046770
4678837424
4679942111
46801151480
4681837448
46821151502
46831465562
46841256208
46851360905
46861151546
46871989053
4688732816
46891570335
46901675040
46911779747
46921675072
469323107939
46941570410
46951361035
46961989224
46971465758
46981989262
46991151689
47001465800
47011884618
47021884636
47031047030
47041256448
47051256460
47061151766
470729414
470814708
4709732963
471029420
471114711
4712628272
471329426
471414714
4715418860
471629432
4717628302
4718523590
4719523595
47201256640
4721837768
4722523610
4723314169
4724628344
472514725
4726628356
47271047270
47281885104
47291570935
47302199330
47311047310
4732942588
4733314199
4734523670
473529470
473614736
473714737
474914749
477014770
4771419084
477214772
477314773
477629552
Total10024668715
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
4552910
4561456
4571457
4581458
4592918
46052300
46173227
46252310
46341852
4641464
46562790
46683728
46762802
46841872
469115159
47083760
47173297
47262832
47362838
47441896
47541900
47652380
47752385
47873346
479178143
480167680
481146734
482136266
48362898
48462904
485104850
486167776
487136331
48894392
48962934
49062940
49162946
4922984
49341972
49452470
49541980
49662976
49731491
4992998
50021000
50221004
5041504
5051505
50731521
50931527
51021020
5121512
51421028
5151515
51721034
51831554
5191519
52021040
52121042
5221522
52321046
5241524
52531575
5261526
52731581
52863168
52921058
53021060
53121062
5371537
5441544
54521090
5471547
5481548
5501550
55121102
55331659
5541554
5551555
55621112
55731671
55895022
55952795
56031680
561105610
562105620
563158445
5642011280
565147910
566169056
567147938
5682111928
5692614794
570179690
571116281
5722514300
5732112033
5742413776
575169200
5762514400
5772413848
5782413872
579126948
580179860
5811911039
582137566
58395247
5842514600
5852514625
586169376
587127044
588116468
58984712
590105900
591137683
59242368
59363558
59431782
5951595
59621192
59721194
59852990
59931797
60031800
60153005
60242408
603127236
604106040
60574235
606116666
60795463
60821216
60931827
61121222
61231836
6131613
6261626
6271627
6281628
63031890
63121262
6331633
6411641
64221284
102850005140000
Total60025688354
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
05000
11000
81
Total6001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343037266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88826fc135f46c29
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3666633133356634
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_1_16.json b/autobahn/client/tungstenite_case_13_1_16.json new file mode 100644 index 0000000..e874754 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_16.json @@ -0,0 +1,446 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 407, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]", + "droppedByMe": true, + "duration": 7501, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=407&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ABUSNchUnLnwiAVquPFoEw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: UrNEzg2mEEdd5a8+1bWrW8+dbSc=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "13.1.16", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "4572": 2, + "4575": 2, + "4576": 1, + "4577": 2, + "4578": 3, + "4580": 3, + "4581": 3, + "4582": 14, + "4583": 8, + "4584": 7, + "4585": 8, + "4586": 11, + "4587": 5, + "4588": 10, + "4589": 6, + "4590": 11, + "4591": 7, + "4592": 8, + "4593": 1, + "4594": 4, + "4595": 4, + "4596": 10, + "4597": 4, + "4598": 2, + "4599": 8, + "4600": 2, + "4601": 7, + "4602": 6, + "4603": 6, + "4604": 7, + "4605": 6, + "4606": 7, + "4607": 1, + "4608": 2, + "4609": 7, + "4610": 10, + "4611": 11, + "4612": 10, + "4613": 13, + "4614": 11, + "4615": 6, + "4616": 10, + "4617": 5, + "4618": 2, + "4619": 4, + "4620": 4, + "4621": 2, + "4622": 4, + "4623": 3, + "4624": 2, + "4625": 1, + "4631": 1, + "4633": 1, + "4634": 1, + "4637": 1, + "4638": 1, + "4639": 2, + "4640": 2, + "4641": 1, + "4643": 3, + "4645": 1, + "4648": 1, + "4649": 2, + "4650": 2, + "4651": 4, + "4652": 4, + "4653": 1, + "4654": 4, + "4655": 1, + "4656": 2, + "4657": 1, + "4659": 2, + "4660": 1, + "4661": 2, + "4663": 3, + "4664": 2, + "4665": 3, + "4666": 3, + "4667": 5, + "4668": 4, + "4669": 5, + "4670": 7, + "4671": 9, + "4672": 4, + "4673": 4, + "4674": 8, + "4675": 10, + "4676": 3, + "4677": 10, + "4678": 8, + "4679": 9, + "4680": 11, + "4681": 8, + "4682": 11, + "4683": 14, + "4684": 12, + "4685": 13, + "4686": 11, + "4687": 19, + "4688": 7, + "4689": 15, + "4690": 16, + "4691": 17, + "4692": 16, + "4693": 23, + "4694": 15, + "4695": 13, + "4696": 19, + "4697": 14, + "4698": 19, + "4699": 11, + "4700": 14, + "4701": 18, + "4702": 18, + "4703": 10, + "4704": 12, + "4705": 12, + "4706": 11, + "4707": 2, + "4708": 1, + "4709": 7, + "4710": 2, + "4711": 1, + "4712": 6, + "4713": 2, + "4714": 1, + "4715": 4, + "4716": 2, + "4717": 6, + "4718": 5, + "4719": 5, + "4720": 12, + "4721": 8, + "4722": 5, + "4723": 3, + "4724": 6, + "4725": 1, + "4726": 6, + "4727": 10, + "4728": 18, + "4729": 15, + "4730": 21, + "4731": 10, + "4732": 9, + "4733": 3, + "4734": 5, + "4735": 2, + "4736": 1, + "4737": 1, + "4749": 1, + "4770": 1, + "4771": 4, + "4772": 1, + "4773": 1, + "4776": 2 + }, + "started": "2020-09-07T18:52:33.416Z", + "trafficStats": { + "incomingCompressionRatio": 0.03555641174316406, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 4660450, + "incomingOctetsWireLevel": 4668450, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0017165724339924255, + "outgoingCompressionRatio": 0.04321363830566406, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 5664098, + "outgoingOctetsWireLevel": 5688098, + "outgoingWebSocketFrames": 6000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0042372148222011696, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 5000, + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "455": 2, + "456": 1, + "457": 1, + "458": 1, + "459": 2, + "460": 5, + "461": 7, + "462": 5, + "463": 4, + "464": 1, + "465": 6, + "466": 8, + "467": 6, + "468": 4, + "469": 11, + "470": 8, + "471": 7, + "472": 6, + "473": 6, + "474": 4, + "475": 4, + "476": 5, + "477": 5, + "478": 7, + "479": 17, + "480": 16, + "481": 14, + "482": 13, + "483": 6, + "484": 6, + "485": 10, + "486": 16, + "487": 13, + "488": 9, + "489": 6, + "490": 6, + "491": 6, + "492": 2, + "493": 4, + "494": 5, + "495": 4, + "496": 6, + "497": 3, + "499": 2, + "500": 2, + "502": 2, + "504": 1, + "505": 1, + "507": 3, + "509": 3, + "510": 2, + "512": 1, + "514": 2, + "515": 1, + "517": 2, + "518": 3, + "519": 1, + "520": 2, + "521": 2, + "522": 1, + "523": 2, + "524": 1, + "525": 3, + "526": 1, + "527": 3, + "528": 6, + "529": 2, + "530": 2, + "531": 2, + "537": 1, + "544": 1, + "545": 2, + "547": 1, + "548": 1, + "550": 1, + "551": 2, + "553": 3, + "554": 1, + "555": 1, + "556": 2, + "557": 3, + "558": 9, + "559": 5, + "560": 3, + "561": 10, + "562": 10, + "563": 15, + "564": 20, + "565": 14, + "566": 16, + "567": 14, + "568": 21, + "569": 26, + "570": 17, + "571": 11, + "572": 25, + "573": 21, + "574": 24, + "575": 16, + "576": 25, + "577": 24, + "578": 24, + "579": 12, + "580": 17, + "581": 19, + "582": 13, + "583": 9, + "584": 25, + "585": 25, + "586": 16, + "587": 12, + "588": 11, + "589": 8, + "590": 10, + "591": 13, + "592": 4, + "593": 6, + "594": 3, + "595": 1, + "596": 2, + "597": 2, + "598": 5, + "599": 3, + "600": 3, + "601": 5, + "602": 4, + "603": 12, + "604": 10, + "605": 7, + "606": 11, + "607": 9, + "608": 2, + "609": 3, + "611": 2, + "612": 3, + "613": 1, + "626": 1, + "627": 1, + "628": 1, + "630": 3, + "631": 2, + "633": 1, + "641": 1, + "642": 2, + "1028": 5000 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343037266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88826fc135f46c29" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "6fc135f4" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_1_17.html b/autobahn/client/tungstenite_case_13_1_17.html new file mode 100644 index 0000000..0792cdb --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_17.html @@ -0,0 +1,599 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.1.17 : Pass - 6925 ms @ 2020-09-07T18:52:40.918Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=408&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: CZuYYitq/H3sBPshYFr/yA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 8qFU2csfsnGtZuoy5nPID0hhH24=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
457229144
457529150
457614576
457729154
4578313734
4580313740
4581313743
45821464148
4583836664
4584732088
4585836680
45861150446
4587522935
45881045880
4589627534
45901150490
4591732137
4592836736
459314593
4594418376
4595418380
45961045960
4597418388
459829196
4599836792
460029200
4601732207
4602627612
4603627618
4604732228
4605627630
4606732242
460714607
460829216
4609732263
46101046100
46111150721
46121046120
46131359969
46141150754
4615627690
46161046160
4617523085
461829236
4619418476
4620418480
462129242
4622418488
4623313869
462429248
462514625
463114631
463314633
463414634
463714637
463814638
463929278
464029280
464114641
4643313929
464514645
464814648
464929298
465029300
4651418604
4652418608
465314653
4654418616
465514655
465629312
465714657
465929318
466014660
466129322
4663313989
466429328
4665313995
4666313998
4667523335
4668418672
4669523345
4670732690
4671942039
4672418688
4673418692
4674837392
46751046750
4676314028
46771046770
4678837424
4679942111
46801151480
4681837448
46821151502
46831465562
46841256208
46851360905
46861151546
46871989053
4688732816
46891570335
46901675040
46911779747
46921675072
469323107939
46941570410
46951361035
46961989224
46971465758
46981989262
46991151689
47001465800
47011884618
47021884636
47031047030
47041256448
47051256460
47061151766
470729414
470814708
4709732963
471029420
471114711
4712628272
471329426
471414714
4715418860
471629432
4717628302
4718523590
4719523595
47201256640
4721837768
4722523610
4723314169
4724628344
472514725
4726628356
47271047270
47281885104
47291570935
47302199330
47311047310
4732942588
4733314199
4734523670
473529470
473614736
473714737
474914749
477014770
4771419084
477214772
477314773
477629552
Total10024668715
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
147922958
148011480
148111481
148211482
148322966
148457420
1485710395
148657430
148745948
148811488
148968934
1490811920
149168946
149245968
14931116423
1494811952
1495710465
149668976
149768982
149845992
149945996
150057500
150157505
1502710514
15031725551
15041624064
15051421070
15061319578
150769042
150869048
15091015090
15101624160
15111319643
1512913608
151369078
151469084
151569090
151623032
151746068
151857590
151946076
152069120
152134563
152323046
152423048
152623052
152811528
152911529
153134593
153334599
153423068
153611536
153823076
153911539
154123082
154234626
154311543
154423088
154523090
154611546
154723094
154811548
154934647
155011550
155134653
155269312
155323106
155423108
155523110
156111561
156811568
156923138
157111571
157211572
157411574
157523150
157734731
157811578
157911579
158023160
158134743
1582914238
158357915
158434752
15851015850
15861015860
15871523805
15882031760
15891422246
15901625440
15911422274
15922133432
15932641418
15941727098
15951117545
15962539900
15972133537
15982438352
15991625584
16002540000
16012438424
16022438448
16031219236
16041727268
16051930495
16061320878
1607914463
16082540200
16092540225
16101625760
16111219332
16121117732
1613812904
16141016140
16151320995
161646464
161769702
161834854
161911619
162023240
162123242
162258110
162334869
162434872
162558125
162646504
16271219524
16281016280
1629711403
16301117930
1631914679
163223264
163334899
163523270
163634908
163711637
165011650
165111651
165211652
165434962
165523310
165711657
166511665
166623332
410010004100000
Total20025672354
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
01000
11000
81
Total2001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343038266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882d341382bd0a9
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6433343133383262
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_1_17.json b/autobahn/client/tungstenite_case_13_1_17.json new file mode 100644 index 0000000..b3dcbe9 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_17.json @@ -0,0 +1,446 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 408, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]", + "droppedByMe": true, + "duration": 6925, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=408&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: CZuYYitq/H3sBPshYFr/yA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 8qFU2csfsnGtZuoy5nPID0hhH24=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "13.1.17", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "4572": 2, + "4575": 2, + "4576": 1, + "4577": 2, + "4578": 3, + "4580": 3, + "4581": 3, + "4582": 14, + "4583": 8, + "4584": 7, + "4585": 8, + "4586": 11, + "4587": 5, + "4588": 10, + "4589": 6, + "4590": 11, + "4591": 7, + "4592": 8, + "4593": 1, + "4594": 4, + "4595": 4, + "4596": 10, + "4597": 4, + "4598": 2, + "4599": 8, + "4600": 2, + "4601": 7, + "4602": 6, + "4603": 6, + "4604": 7, + "4605": 6, + "4606": 7, + "4607": 1, + "4608": 2, + "4609": 7, + "4610": 10, + "4611": 11, + "4612": 10, + "4613": 13, + "4614": 11, + "4615": 6, + "4616": 10, + "4617": 5, + "4618": 2, + "4619": 4, + "4620": 4, + "4621": 2, + "4622": 4, + "4623": 3, + "4624": 2, + "4625": 1, + "4631": 1, + "4633": 1, + "4634": 1, + "4637": 1, + "4638": 1, + "4639": 2, + "4640": 2, + "4641": 1, + "4643": 3, + "4645": 1, + "4648": 1, + "4649": 2, + "4650": 2, + "4651": 4, + "4652": 4, + "4653": 1, + "4654": 4, + "4655": 1, + "4656": 2, + "4657": 1, + "4659": 2, + "4660": 1, + "4661": 2, + "4663": 3, + "4664": 2, + "4665": 3, + "4666": 3, + "4667": 5, + "4668": 4, + "4669": 5, + "4670": 7, + "4671": 9, + "4672": 4, + "4673": 4, + "4674": 8, + "4675": 10, + "4676": 3, + "4677": 10, + "4678": 8, + "4679": 9, + "4680": 11, + "4681": 8, + "4682": 11, + "4683": 14, + "4684": 12, + "4685": 13, + "4686": 11, + "4687": 19, + "4688": 7, + "4689": 15, + "4690": 16, + "4691": 17, + "4692": 16, + "4693": 23, + "4694": 15, + "4695": 13, + "4696": 19, + "4697": 14, + "4698": 19, + "4699": 11, + "4700": 14, + "4701": 18, + "4702": 18, + "4703": 10, + "4704": 12, + "4705": 12, + "4706": 11, + "4707": 2, + "4708": 1, + "4709": 7, + "4710": 2, + "4711": 1, + "4712": 6, + "4713": 2, + "4714": 1, + "4715": 4, + "4716": 2, + "4717": 6, + "4718": 5, + "4719": 5, + "4720": 12, + "4721": 8, + "4722": 5, + "4723": 3, + "4724": 6, + "4725": 1, + "4726": 6, + "4727": 10, + "4728": 18, + "4729": 15, + "4730": 21, + "4731": 10, + "4732": 9, + "4733": 3, + "4734": 5, + "4735": 2, + "4736": 1, + "4737": 1, + "4749": 1, + "4770": 1, + "4771": 4, + "4772": 1, + "4773": 1, + "4776": 2 + }, + "started": "2020-09-07T18:52:40.918Z", + "trafficStats": { + "incomingCompressionRatio": 0.03555641174316406, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 4660450, + "incomingOctetsWireLevel": 4668450, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0017165724339924255, + "outgoingCompressionRatio": 0.04321363830566406, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 5664098, + "outgoingOctetsWireLevel": 5672098, + "outgoingWebSocketFrames": 2000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0014124049407337233, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "0": 1000, + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "1479": 2, + "1480": 1, + "1481": 1, + "1482": 1, + "1483": 2, + "1484": 5, + "1485": 7, + "1486": 5, + "1487": 4, + "1488": 1, + "1489": 6, + "1490": 8, + "1491": 6, + "1492": 4, + "1493": 11, + "1494": 8, + "1495": 7, + "1496": 6, + "1497": 6, + "1498": 4, + "1499": 4, + "1500": 5, + "1501": 5, + "1502": 7, + "1503": 17, + "1504": 16, + "1505": 14, + "1506": 13, + "1507": 6, + "1508": 6, + "1509": 10, + "1510": 16, + "1511": 13, + "1512": 9, + "1513": 6, + "1514": 6, + "1515": 6, + "1516": 2, + "1517": 4, + "1518": 5, + "1519": 4, + "1520": 6, + "1521": 3, + "1523": 2, + "1524": 2, + "1526": 2, + "1528": 1, + "1529": 1, + "1531": 3, + "1533": 3, + "1534": 2, + "1536": 1, + "1538": 2, + "1539": 1, + "1541": 2, + "1542": 3, + "1543": 1, + "1544": 2, + "1545": 2, + "1546": 1, + "1547": 2, + "1548": 1, + "1549": 3, + "1550": 1, + "1551": 3, + "1552": 6, + "1553": 2, + "1554": 2, + "1555": 2, + "1561": 1, + "1568": 1, + "1569": 2, + "1571": 1, + "1572": 1, + "1574": 1, + "1575": 2, + "1577": 3, + "1578": 1, + "1579": 1, + "1580": 2, + "1581": 3, + "1582": 9, + "1583": 5, + "1584": 3, + "1585": 10, + "1586": 10, + "1587": 15, + "1588": 20, + "1589": 14, + "1590": 16, + "1591": 14, + "1592": 21, + "1593": 26, + "1594": 17, + "1595": 11, + "1596": 25, + "1597": 21, + "1598": 24, + "1599": 16, + "1600": 25, + "1601": 24, + "1602": 24, + "1603": 12, + "1604": 17, + "1605": 19, + "1606": 13, + "1607": 9, + "1608": 25, + "1609": 25, + "1610": 16, + "1611": 12, + "1612": 11, + "1613": 8, + "1614": 10, + "1615": 13, + "1616": 4, + "1617": 6, + "1618": 3, + "1619": 1, + "1620": 2, + "1621": 2, + "1622": 5, + "1623": 3, + "1624": 3, + "1625": 5, + "1626": 4, + "1627": 12, + "1628": 10, + "1629": 7, + "1630": 11, + "1631": 9, + "1632": 2, + "1633": 3, + "1635": 2, + "1636": 3, + "1637": 1, + "1650": 1, + "1651": 1, + "1652": 1, + "1654": 3, + "1655": 2, + "1657": 1, + "1665": 1, + "1666": 2, + "4100": 1000 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343038266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882d341382bd0a9" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "d341382b" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_1_18.html b/autobahn/client/tungstenite_case_13_1_18.html new file mode 100644 index 0000000..8c3441e --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_18.html @@ -0,0 +1,597 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.1.18 : Pass - 7103 ms @ 2020-09-07T18:52:47.843Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=409&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: bZnJjz8twEFnOtlzdWCELQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: S/JrDX/mG2Ie3UVduQs5AahFuHo=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
457229144
457529150
457614576
457729154
4578313734
4580313740
4581313743
45821464148
4583836664
4584732088
4585836680
45861150446
4587522935
45881045880
4589627534
45901150490
4591732137
4592836736
459314593
4594418376
4595418380
45961045960
4597418388
459829196
4599836792
460029200
4601732207
4602627612
4603627618
4604732228
4605627630
4606732242
460714607
460829216
4609732263
46101046100
46111150721
46121046120
46131359969
46141150754
4615627690
46161046160
4617523085
461829236
4619418476
4620418480
462129242
4622418488
4623313869
462429248
462514625
463114631
463314633
463414634
463714637
463814638
463929278
464029280
464114641
4643313929
464514645
464814648
464929298
465029300
4651418604
4652418608
465314653
4654418616
465514655
465629312
465714657
465929318
466014660
466129322
4663313989
466429328
4665313995
4666313998
4667523335
4668418672
4669523345
4670732690
4671942039
4672418688
4673418692
4674837392
46751046750
4676314028
46771046770
4678837424
4679942111
46801151480
4681837448
46821151502
46831465562
46841256208
46851360905
46861151546
46871989053
4688732816
46891570335
46901675040
46911779747
46921675072
469323107939
46941570410
46951361035
46961989224
46971465758
46981989262
46991151689
47001465800
47011884618
47021884636
47031047030
47041256448
47051256460
47061151766
470729414
470814708
4709732963
471029420
471114711
4712628272
471329426
471414714
4715418860
471629432
4717628302
4718523590
4719523595
47201256640
4721837768
4722523610
4723314169
4724628344
472514725
4726628356
47271047270
47281885104
47291570935
47302199330
47311047310
4732942588
4733314199
4734523670
473529470
473614736
473714737
474914749
477014770
4771419084
477214772
477314773
477629552
Total10024668715
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
5575211150
557615576
557715577
557815578
5579211158
5580527900
5581739067
5582527910
5583422332
558415584
5585633510
5586844688
5587633522
5588422352
55891161479
5590844720
5591739137
5592633552
5593633558
5594422376
5595422380
5596527980
5597527985
5598739186
55991795183
56001689600
56011478414
56021372826
5603633618
5604633624
56051056050
56061689696
56071372891
5608950472
5609633654
5610633660
5611633666
5612211224
5613422452
5614528070
5615422460
5616633696
5617316851
5619211238
5620211240
5622211244
562415624
562515625
5627316881
5629316887
5630211260
563215632
5634211268
563515635
5637211274
5638316914
563915639
5640211280
5641211282
564215642
5643211286
564415644
5645316935
564615646
5647316941
5648633888
5649211298
5650211300
5651211302
565715657
566415664
5665211330
566715667
566815668
567015670
5671211342
5673317019
567415674
567515675
5676211352
5677317031
5678951102
5679528395
5680317040
56811056810
56821056820
56831585245
568420113680
56851479590
56861690976
56871479618
568821119448
568926147914
56901796730
56911162601
569225142300
569321119553
569424136656
56951691120
569625142400
569724136728
569824136752
56991268388
57001796900
570119108319
57021374126
5703951327
570425142600
570525142625
57061691296
57071268484
57081162788
5709845672
57101057100
57111374243
5712422848
5713634278
5714317142
571515715
5716211432
5717211434
5718528590
5719317157
5720317160
5721528605
5722422888
57231268676
57241057240
5725740075
57261162986
5727951543
5728211456
5729317187
5731211462
5732317196
573315733
574615746
574715747
574815748
5750317250
5751211502
575315753
576115761
5762211524
Total10025668354
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343039266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888257bd42075455
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3537626434323037
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_1_18.json b/autobahn/client/tungstenite_case_13_1_18.json new file mode 100644 index 0000000..d818590 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_18.json @@ -0,0 +1,444 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 409, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]", + "droppedByMe": true, + "duration": 7103, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=409&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: bZnJjz8twEFnOtlzdWCELQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: S/JrDX/mG2Ie3UVduQs5AahFuHo=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "13.1.18", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "4572": 2, + "4575": 2, + "4576": 1, + "4577": 2, + "4578": 3, + "4580": 3, + "4581": 3, + "4582": 14, + "4583": 8, + "4584": 7, + "4585": 8, + "4586": 11, + "4587": 5, + "4588": 10, + "4589": 6, + "4590": 11, + "4591": 7, + "4592": 8, + "4593": 1, + "4594": 4, + "4595": 4, + "4596": 10, + "4597": 4, + "4598": 2, + "4599": 8, + "4600": 2, + "4601": 7, + "4602": 6, + "4603": 6, + "4604": 7, + "4605": 6, + "4606": 7, + "4607": 1, + "4608": 2, + "4609": 7, + "4610": 10, + "4611": 11, + "4612": 10, + "4613": 13, + "4614": 11, + "4615": 6, + "4616": 10, + "4617": 5, + "4618": 2, + "4619": 4, + "4620": 4, + "4621": 2, + "4622": 4, + "4623": 3, + "4624": 2, + "4625": 1, + "4631": 1, + "4633": 1, + "4634": 1, + "4637": 1, + "4638": 1, + "4639": 2, + "4640": 2, + "4641": 1, + "4643": 3, + "4645": 1, + "4648": 1, + "4649": 2, + "4650": 2, + "4651": 4, + "4652": 4, + "4653": 1, + "4654": 4, + "4655": 1, + "4656": 2, + "4657": 1, + "4659": 2, + "4660": 1, + "4661": 2, + "4663": 3, + "4664": 2, + "4665": 3, + "4666": 3, + "4667": 5, + "4668": 4, + "4669": 5, + "4670": 7, + "4671": 9, + "4672": 4, + "4673": 4, + "4674": 8, + "4675": 10, + "4676": 3, + "4677": 10, + "4678": 8, + "4679": 9, + "4680": 11, + "4681": 8, + "4682": 11, + "4683": 14, + "4684": 12, + "4685": 13, + "4686": 11, + "4687": 19, + "4688": 7, + "4689": 15, + "4690": 16, + "4691": 17, + "4692": 16, + "4693": 23, + "4694": 15, + "4695": 13, + "4696": 19, + "4697": 14, + "4698": 19, + "4699": 11, + "4700": 14, + "4701": 18, + "4702": 18, + "4703": 10, + "4704": 12, + "4705": 12, + "4706": 11, + "4707": 2, + "4708": 1, + "4709": 7, + "4710": 2, + "4711": 1, + "4712": 6, + "4713": 2, + "4714": 1, + "4715": 4, + "4716": 2, + "4717": 6, + "4718": 5, + "4719": 5, + "4720": 12, + "4721": 8, + "4722": 5, + "4723": 3, + "4724": 6, + "4725": 1, + "4726": 6, + "4727": 10, + "4728": 18, + "4729": 15, + "4730": 21, + "4731": 10, + "4732": 9, + "4733": 3, + "4734": 5, + "4735": 2, + "4736": 1, + "4737": 1, + "4749": 1, + "4770": 1, + "4771": 4, + "4772": 1, + "4773": 1, + "4776": 2 + }, + "started": "2020-09-07T18:52:47.843Z", + "trafficStats": { + "incomingCompressionRatio": 0.03555641174316406, + "incomingOctetsAppLevel": 131072000, + "incomingOctetsWebSocketLevel": 4660450, + "incomingOctetsWireLevel": 4668450, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0017165724339924255, + "outgoingCompressionRatio": 0.04321363830566406, + "outgoingOctetsAppLevel": 131072000, + "outgoingOctetsWebSocketLevel": 5664098, + "outgoingOctetsWireLevel": 5668098, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0007062024703668616, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "5575": 2, + "5576": 1, + "5577": 1, + "5578": 1, + "5579": 2, + "5580": 5, + "5581": 7, + "5582": 5, + "5583": 4, + "5584": 1, + "5585": 6, + "5586": 8, + "5587": 6, + "5588": 4, + "5589": 11, + "5590": 8, + "5591": 7, + "5592": 6, + "5593": 6, + "5594": 4, + "5595": 4, + "5596": 5, + "5597": 5, + "5598": 7, + "5599": 17, + "5600": 16, + "5601": 14, + "5602": 13, + "5603": 6, + "5604": 6, + "5605": 10, + "5606": 16, + "5607": 13, + "5608": 9, + "5609": 6, + "5610": 6, + "5611": 6, + "5612": 2, + "5613": 4, + "5614": 5, + "5615": 4, + "5616": 6, + "5617": 3, + "5619": 2, + "5620": 2, + "5622": 2, + "5624": 1, + "5625": 1, + "5627": 3, + "5629": 3, + "5630": 2, + "5632": 1, + "5634": 2, + "5635": 1, + "5637": 2, + "5638": 3, + "5639": 1, + "5640": 2, + "5641": 2, + "5642": 1, + "5643": 2, + "5644": 1, + "5645": 3, + "5646": 1, + "5647": 3, + "5648": 6, + "5649": 2, + "5650": 2, + "5651": 2, + "5657": 1, + "5664": 1, + "5665": 2, + "5667": 1, + "5668": 1, + "5670": 1, + "5671": 2, + "5673": 3, + "5674": 1, + "5675": 1, + "5676": 2, + "5677": 3, + "5678": 9, + "5679": 5, + "5680": 3, + "5681": 10, + "5682": 10, + "5683": 15, + "5684": 20, + "5685": 14, + "5686": 16, + "5687": 14, + "5688": 21, + "5689": 26, + "5690": 17, + "5691": 11, + "5692": 25, + "5693": 21, + "5694": 24, + "5695": 16, + "5696": 25, + "5697": 24, + "5698": 24, + "5699": 12, + "5700": 17, + "5701": 19, + "5702": 13, + "5703": 9, + "5704": 25, + "5705": 25, + "5706": 16, + "5707": 12, + "5708": 11, + "5709": 8, + "5710": 10, + "5711": 13, + "5712": 4, + "5713": 6, + "5714": 3, + "5715": 1, + "5716": 2, + "5717": 2, + "5718": 5, + "5719": 3, + "5720": 3, + "5721": 5, + "5722": 4, + "5723": 12, + "5724": 10, + "5725": 7, + "5726": 11, + "5727": 9, + "5728": 2, + "5729": 3, + "5731": 2, + "5732": 3, + "5733": 1, + "5746": 1, + "5747": 1, + "5748": 1, + "5750": 3, + "5751": 2, + "5753": 1, + "5761": 1, + "5762": 2 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343039266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888257bd42075455" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "57bd4207" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_1_2.html b/autobahn/client/tungstenite_case_13_1_2.html new file mode 100644 index 0000000..7162eb2 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_2.html @@ -0,0 +1,328 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.1.2 : Pass - 814 ms @ 2020-09-07T18:51:53.457Z

+

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=393&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 1MwLplyk30rG3+XKheFlXQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: y5WeQDiOQQXwjoLvJ9Ep/Aslypc=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
114635093
129108
131311703
141732422
1539585
1654864
171081836
1813234
19476
22122
28128
36136
41141
42142
55155
2571257
Total100213410
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
74413087
81080
91431287
101741740
1136396
1268816
13781014
1428392
1516240
19119
24124
32132
37137
38138
51151
2521252
Total10029509
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333933266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888227baadfc2452
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3237626161646663
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_1_2.json b/autobahn/client/tungstenite_case_13_1_2.json new file mode 100644 index 0000000..629b32c --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_2.json @@ -0,0 +1,175 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 393, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]", + "droppedByMe": true, + "duration": 814, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=393&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 1MwLplyk30rG3+XKheFlXQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: y5WeQDiOQQXwjoLvJ9Ep/Aslypc=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "13.1.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "11": 463, + "12": 9, + "13": 131, + "14": 173, + "15": 39, + "16": 54, + "17": 108, + "18": 13, + "19": 4, + "22": 1, + "28": 1, + "36": 1, + "41": 1, + "42": 1, + "55": 1, + "257": 1 + }, + "started": "2020-09-07T18:51:53.457Z", + "trafficStats": { + "incomingCompressionRatio": 0.111640625, + "incomingOctetsAppLevel": 64000, + "incomingOctetsWebSocketLevel": 7145, + "incomingOctetsWireLevel": 13145, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.8397480755773268, + "outgoingCompressionRatio": 0.113328125, + "outgoingOctetsAppLevel": 64000, + "outgoingOctetsWebSocketLevel": 7253, + "outgoingOctetsWireLevel": 9253, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.2757479663587481, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "7": 441, + "8": 10, + "9": 143, + "10": 174, + "11": 36, + "12": 68, + "13": 78, + "14": 28, + "15": 16, + "19": 1, + "24": 1, + "32": 1, + "37": 1, + "38": 1, + "51": 1, + "252": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333933266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888227baadfc2452" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "27baadfc" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_1_3.html b/autobahn/client/tungstenite_case_13_1_3.html new file mode 100644 index 0000000..446ff7e --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_3.html @@ -0,0 +1,355 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.1.3 : Pass - 871 ms @ 2020-09-07T18:51:54.271Z

+

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=394&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: UuFcwz/JPQJO8+td7S7KnA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 179ERy0xCDsxsk+BaGJE9EjqGpE=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
1739663
182223996
19811539
20521040
211473087
221022244
23701610
24771848
25671675
26461196
2733891
2827756
2915435
304120
31131
32396
34268
35270
37137
39278
41141
42142
43143
46146
65165
70170
1511151
2571257
Total100222203
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
1342546
1470980
1542630
161382208
171051785
18991782
191252375
20721440
21761596
22541188
23531219
2438912
2529725
2622572
2710270
284112
295145
30130
31262
32132
33266
34134
36136
37137
39139
41282
43143
61161
66166
1471147
2521252
Total100219476
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333934266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 120.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88820fe050a30c08
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3066653035306133
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_1_3.json b/autobahn/client/tungstenite_case_13_1_3.json new file mode 100644 index 0000000..4a65fdf --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_3.json @@ -0,0 +1,202 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 394, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]", + "droppedByMe": true, + "duration": 871, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=394&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: UuFcwz/JPQJO8+td7S7KnA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 179ERy0xCDsxsk+BaGJE9EjqGpE=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "13.1.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "17": 39, + "18": 222, + "19": 81, + "20": 52, + "21": 147, + "22": 102, + "23": 70, + "24": 77, + "25": 67, + "26": 46, + "27": 33, + "28": 27, + "29": 15, + "30": 4, + "31": 1, + "32": 3, + "34": 2, + "35": 2, + "37": 1, + "39": 2, + "41": 1, + "42": 1, + "43": 1, + "46": 1, + "65": 1, + "70": 1, + "151": 1, + "257": 1 + }, + "started": "2020-09-07T18:51:54.271Z", + "trafficStats": { + "incomingCompressionRatio": 0.06225, + "incomingOctetsAppLevel": 256000, + "incomingOctetsWebSocketLevel": 15936, + "incomingOctetsWireLevel": 21938, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.3766315261044177, + "outgoingCompressionRatio": 0.0672578125, + "outgoingOctetsAppLevel": 256000, + "outgoingOctetsWebSocketLevel": 17218, + "outgoingOctetsWireLevel": 19220, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.11627366709257754, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "13": 42, + "14": 70, + "15": 42, + "16": 138, + "17": 105, + "18": 99, + "19": 125, + "20": 72, + "21": 76, + "22": 54, + "23": 53, + "24": 38, + "25": 29, + "26": 22, + "27": 10, + "28": 4, + "29": 5, + "30": 1, + "31": 2, + "32": 1, + "33": 2, + "34": 1, + "36": 1, + "37": 1, + "39": 1, + "41": 2, + "43": 1, + "61": 1, + "66": 1, + "147": 1, + "252": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333934266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 120 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88820fe050a30c08" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "0fe050a3" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_1_4.html b/autobahn/client/tungstenite_case_13_1_4.html new file mode 100644 index 0000000..2f0c39c --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_4.html @@ -0,0 +1,418 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.1.4 : Pass - 728 ms @ 2020-09-07T18:51:55.143Z

+

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=395&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: rBKlC6NgF1Mv3il1Y8qsjg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: w3i6n5MtYvj6Lee5kIX5wyZ6FTo=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
43143
446264
4513585
4614644
47241128
48693312
49562744
50562800
51633213
52663432
53512703
54784212
55442420
56502800
57241368
58331914
59402360
6014840
6113793
6216992
6312756
6410640
6512780
66181188
67171139
68241632
69201380
70251750
71312201
72141008
73141022
7412888
758600
7610760
773231
785390
79179
80180
81181
832166
842168
853255
883264
89189
90190
924368
952190
97197
1001100
1021102
1051105
1062212
1073321
1122224
1161116
1741174
2571257
Total100258478
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
39139
40140
414164
445220
45145
464184
479423
48221056
49331617
50321600
51391989
52683536
53482544
54633402
55603300
56673752
57663762
58271566
59492891
60291740
61181098
6216992
63311953
64181152
65161040
668528
67191273
68211428
69161104
70292030
71181278
72282016
73312263
7410740
7511825
76181368
7710770
788624
794316
803240
82182
832166
843252
863258
87187
88188
893267
912182
922184
944376
96196
97197
992198
1001100
1011101
1041104
1052210
1061106
1071107
1081108
1092218
1101110
1141114
1701170
2521252
Total100260945
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333935266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 240.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882e882a45feb6a
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6538383261343566
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_1_4.json b/autobahn/client/tungstenite_case_13_1_4.json new file mode 100644 index 0000000..1e00a87 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_4.json @@ -0,0 +1,265 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 395, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]", + "droppedByMe": true, + "duration": 728, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=395&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: rBKlC6NgF1Mv3il1Y8qsjg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: w3i6n5MtYvj6Lee5kIX5wyZ6FTo=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "13.1.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "43": 1, + "44": 6, + "45": 13, + "46": 14, + "47": 24, + "48": 69, + "49": 56, + "50": 56, + "51": 63, + "52": 66, + "53": 51, + "54": 78, + "55": 44, + "56": 50, + "57": 24, + "58": 33, + "59": 40, + "60": 14, + "61": 13, + "62": 16, + "63": 12, + "64": 10, + "65": 12, + "66": 18, + "67": 17, + "68": 24, + "69": 20, + "70": 25, + "71": 31, + "72": 14, + "73": 14, + "74": 12, + "75": 8, + "76": 10, + "77": 3, + "78": 5, + "79": 1, + "80": 1, + "81": 1, + "83": 2, + "84": 2, + "85": 3, + "88": 3, + "89": 1, + "90": 1, + "92": 4, + "95": 2, + "97": 1, + "100": 1, + "102": 1, + "105": 1, + "106": 2, + "107": 3, + "112": 2, + "116": 1, + "174": 1, + "257": 1 + }, + "started": "2020-09-07T18:51:55.143Z", + "trafficStats": { + "incomingCompressionRatio": 0.0509873046875, + "incomingOctetsAppLevel": 1024000, + "incomingOctetsWebSocketLevel": 52211, + "incomingOctetsWireLevel": 58213, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.11495661833713203, + "outgoingCompressionRatio": 0.0573115234375, + "outgoingOctetsAppLevel": 1024000, + "outgoingOctetsWebSocketLevel": 58687, + "outgoingOctetsWireLevel": 60689, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.034113176683081434, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "39": 1, + "40": 1, + "41": 4, + "44": 5, + "45": 1, + "46": 4, + "47": 9, + "48": 22, + "49": 33, + "50": 32, + "51": 39, + "52": 68, + "53": 48, + "54": 63, + "55": 60, + "56": 67, + "57": 66, + "58": 27, + "59": 49, + "60": 29, + "61": 18, + "62": 16, + "63": 31, + "64": 18, + "65": 16, + "66": 8, + "67": 19, + "68": 21, + "69": 16, + "70": 29, + "71": 18, + "72": 28, + "73": 31, + "74": 10, + "75": 11, + "76": 18, + "77": 10, + "78": 8, + "79": 4, + "80": 3, + "82": 1, + "83": 2, + "84": 3, + "86": 3, + "87": 1, + "88": 1, + "89": 3, + "91": 2, + "92": 2, + "94": 4, + "96": 1, + "97": 1, + "99": 2, + "100": 1, + "101": 1, + "104": 1, + "105": 2, + "106": 1, + "107": 1, + "108": 1, + "109": 2, + "110": 1, + "114": 1, + "170": 1, + "252": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333935266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 240 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882e882a45feb6a" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "e882a45f" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_1_5.html b/autobahn/client/tungstenite_case_13_1_5.html new file mode 100644 index 0000000..12efe9e --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_5.html @@ -0,0 +1,535 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.1.5 : Pass - 1010 ms @ 2020-09-07T18:51:55.872Z

+

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=396&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: iXCV/3nGCU5a8ILsRavKLg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: U2dAf6yq5753KCj/4fE7cxcZJrY=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
1302260
1342268
1366816
1374548
138121656
139111529
140141960
1417987
142111562
143182574
144121728
14591305
146121752
14791323
148121776
149172533
150182700
151274077
152263952
153304590
154355390
155213255
156243744
157213297
1586948
159111749
16071120
161101610
162132106
163121956
164193116
165101650
166111826
167111837
168172856
169142366
170142380
171111881
172122064
173152595
174111914
175193325
17681408
17781416
17891602
179101790
1805900
1813543
1825910
18371281
184162944
1852370
186112046
1874748
1883564
18991701
190132470
191112101
19271344
19391737
194101940
19571365
1965980
197132561
19891782
199173383
200173400
201142814
202204040
203183654
204122448
205122460
20671442
20761242
20861248
2091209
2103630
2114844
2132426
2142428
2151215
2162432
2172434
2182436
21961314
2203660
2211221
2241224
2251225
2261226
2272454
2281228
2303690
2323696
23351165
2344936
2354940
23651180
2373711
2382476
2393717
2403720
2412482
2424968
2432486
2442488
2454980
2462492
2473741
2483744
2491249
2513753
2522504
2542508
2552510
2571257
2581258
3081308
Total1002176088
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
1481148
1492298
1502300
1514604
1533459
1542308
1552310
1563468
1571157
1582316
1591159
1606960
1615805
1621162
16371141
16471148
165101650
166132158
167101670
168132184
169142366
170193230
171203420
172162752
173284844
174203480
175244200
176234048
177234071
178234094
179285012
180203600
181193439
182173094
183122196
184224048
185264810
186122232
187132431
188152820
189112079
190112090
191163056
192112112
19391737
19471358
195101950
1963588
19791773
198112178
1995995
2004800
201102010
202102020
2034812
20471428
2051205
2063618
20751035
20851040
20951045
210102100
211112321
212102120
213122556
214102140
21571505
2164864
21791953
218112398
219102190
220173740
22161326
222122664
223143122
22471568
225132925
226112486
22792043
228112508
229153435
230122760
231163696
23271624
23361398
2343702
2352470
2361236
2402480
24251210
2432486
2444976
2452490
2464984
2471247
2484992
2491249
2512502
25241008
25341012
2541254
2551255
25641024
2572514
2583774
2591259
26061560
2613783
26261572
26351315
26451320
26592385
26651330
26741068
2681268
2693807
2701270
2721272
2811281
2851285
3061306
Total1002198913
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333936266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888216a98ffc1541
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3136613938666663
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_1_5.json b/autobahn/client/tungstenite_case_13_1_5.json new file mode 100644 index 0000000..5d8389a --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_5.json @@ -0,0 +1,382 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 396, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]", + "droppedByMe": true, + "duration": 1010, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=396&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: iXCV/3nGCU5a8ILsRavKLg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: U2dAf6yq5753KCj/4fE7cxcZJrY=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "13.1.5", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "130": 2, + "134": 2, + "136": 6, + "137": 4, + "138": 12, + "139": 11, + "140": 14, + "141": 7, + "142": 11, + "143": 18, + "144": 12, + "145": 9, + "146": 12, + "147": 9, + "148": 12, + "149": 17, + "150": 18, + "151": 27, + "152": 26, + "153": 30, + "154": 35, + "155": 21, + "156": 24, + "157": 21, + "158": 6, + "159": 11, + "160": 7, + "161": 10, + "162": 13, + "163": 12, + "164": 19, + "165": 10, + "166": 11, + "167": 11, + "168": 17, + "169": 14, + "170": 14, + "171": 11, + "172": 12, + "173": 15, + "174": 11, + "175": 19, + "176": 8, + "177": 8, + "178": 9, + "179": 10, + "180": 5, + "181": 3, + "182": 5, + "183": 7, + "184": 16, + "185": 2, + "186": 11, + "187": 4, + "188": 3, + "189": 9, + "190": 13, + "191": 11, + "192": 7, + "193": 9, + "194": 10, + "195": 7, + "196": 5, + "197": 13, + "198": 9, + "199": 17, + "200": 17, + "201": 14, + "202": 20, + "203": 18, + "204": 12, + "205": 12, + "206": 7, + "207": 6, + "208": 6, + "209": 1, + "210": 3, + "211": 4, + "213": 2, + "214": 2, + "215": 1, + "216": 2, + "217": 2, + "218": 2, + "219": 6, + "220": 3, + "221": 1, + "224": 1, + "225": 1, + "226": 1, + "227": 2, + "228": 1, + "230": 3, + "232": 3, + "233": 5, + "234": 4, + "235": 4, + "236": 5, + "237": 3, + "238": 2, + "239": 3, + "240": 3, + "241": 2, + "242": 4, + "243": 2, + "244": 2, + "245": 4, + "246": 2, + "247": 3, + "248": 3, + "249": 1, + "251": 3, + "252": 2, + "254": 2, + "255": 2, + "257": 1, + "258": 1, + "308": 1 + }, + "started": "2020-09-07T18:51:55.872Z", + "trafficStats": { + "incomingCompressionRatio": 0.040973388671875, + "incomingOctetsAppLevel": 4096000, + "incomingOctetsWebSocketLevel": 167827, + "incomingOctetsWireLevel": 175823, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.047644300380749224, + "outgoingCompressionRatio": 0.047523681640625, + "outgoingOctetsAppLevel": 4096000, + "outgoingOctetsWebSocketLevel": 194657, + "outgoingOctetsWireLevel": 198657, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.02054896561644328, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "148": 1, + "149": 2, + "150": 2, + "151": 4, + "153": 3, + "154": 2, + "155": 2, + "156": 3, + "157": 1, + "158": 2, + "159": 1, + "160": 6, + "161": 5, + "162": 1, + "163": 7, + "164": 7, + "165": 10, + "166": 13, + "167": 10, + "168": 13, + "169": 14, + "170": 19, + "171": 20, + "172": 16, + "173": 28, + "174": 20, + "175": 24, + "176": 23, + "177": 23, + "178": 23, + "179": 28, + "180": 20, + "181": 19, + "182": 17, + "183": 12, + "184": 22, + "185": 26, + "186": 12, + "187": 13, + "188": 15, + "189": 11, + "190": 11, + "191": 16, + "192": 11, + "193": 9, + "194": 7, + "195": 10, + "196": 3, + "197": 9, + "198": 11, + "199": 5, + "200": 4, + "201": 10, + "202": 10, + "203": 4, + "204": 7, + "205": 1, + "206": 3, + "207": 5, + "208": 5, + "209": 5, + "210": 10, + "211": 11, + "212": 10, + "213": 12, + "214": 10, + "215": 7, + "216": 4, + "217": 9, + "218": 11, + "219": 10, + "220": 17, + "221": 6, + "222": 12, + "223": 14, + "224": 7, + "225": 13, + "226": 11, + "227": 9, + "228": 11, + "229": 15, + "230": 12, + "231": 16, + "232": 7, + "233": 6, + "234": 3, + "235": 2, + "236": 1, + "240": 2, + "242": 5, + "243": 2, + "244": 4, + "245": 2, + "246": 4, + "247": 1, + "248": 4, + "249": 1, + "251": 2, + "252": 4, + "253": 4, + "254": 1, + "255": 1, + "256": 4, + "257": 2, + "258": 3, + "259": 1, + "260": 6, + "261": 3, + "262": 6, + "263": 5, + "264": 5, + "265": 9, + "266": 5, + "267": 4, + "268": 1, + "269": 3, + "270": 1, + "272": 1, + "281": 1, + "285": 1, + "306": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333936266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888216a98ffc1541" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "16a98ffc" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_1_6.html b/autobahn/client/tungstenite_case_13_1_6.html new file mode 100644 index 0000000..d14f175 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_6.html @@ -0,0 +1,645 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.1.6 : Pass - 1287 ms @ 2020-09-07T18:51:56.883Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=397&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: IKnW3Uyv8O20JyQFwjMacQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Keq+XIucvlYcpMV9+Oyas06HNbI=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2481248
2494996
2503750
2511251
25241008
25371771
2543762
25561530
25661536
25751285
258102580
259133367
26071820
26182088
26241048
26382104
26471848
26551325
26651330
26751335
268112948
26961614
27051350
27192439
272154080
273102730
274133562
275143850
276123312
277133601
278123336
279102790
280174760
281143934
28292538
283123396
28482272
28592565
28672002
28792583
288102880
289102890
29082320
29141164
292164672
2933879
29461764
29592655
29641184
29782376
29892682
299113289
30082400
30151505
3022604
30351515
304123648
30592745
306123672
307113377
30861848
30982472
31072170
31151555
31292808
313103130
314103140
31561890
316154740
31761902
31851590
319103190
320103200
321123852
3223966
32351615
32461944
3253975
32661956
32782616
32861968
32941316
330113630
33182648
332134316
3333999
33451670
33551675
33682688
33762022
3382676
3392678
34051700
34141364
34241368
34351715
34451720
34541380
34631038
3471347
35041400
35162106
3522704
3541354
35831074
35951795
36051800
36131083
3622724
36351815
36451820
36541460
36662196
3672734
36862208
36931107
37062220
37172597
37241488
37351865
3741374
3752750
3772754
3781378
3841384
3872774
3881388
3891389
39072730
39162346
3922784
39362358
39431182
3952790
39651980
39783176
39872786
39941596
400104000
40183208
40231206
40372821
40493636
40562430
40631218
40741628
40862448
40952045
41052050
41162466
41231236
41341652
41431242
41562490
4171417
4181418
41941676
4201420
4211421
4222844
4242848
42552125
42631278
4271427
4282856
4321432
4691469
Total1002320226
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
30151505
30261812
3032606
30451520
30561830
306113366
307103070
3083924
3091309
31051550
3111311
3123936
3131313
31451570
31572205
31641264
31761902
318123816
31941276
320123840
321113531
322103220
323134199
324103240
325185850
326165216
327154905
328103280
329216909
330216930
331196289
332134316
333165328
33472338
33572345
336124032
337113707
338103380
33951695
34072380
34141364
34251710
34351715
34431032
3451345
34651730
34751735
34862088
34993141
35093150
35193159
35282816
353103530
35482832
355144970
35693204
357103570
358124296
35993231
36082880
361124332
36282896
363103630
36441456
36562190
36662196
3672734
3682736
369114059
37072590
3712742
372114092
37372611
37482992
37531125
37672632
37783016
37862268
379103790
38062280
38141524
3822764
38372681
3842768
38531155
38631158
38741548
38831164
38931167
39051950
3912782
39241568
39331179
39441576
39531185
39631188
39762382
39841592
39931197
4001400
4011401
40241608
40331209
40431212
4051405
40641624
40783256
40831224
4092818
41072870
41162466
4122824
4131413
4141414
41541660
416124992
41752085
41831254
41931257
4202840
4212842
42272954
42341692
42431272
42531275
42652130
4272854
42931287
43031290
43131293
4321432
4331433
43431302
4361436
4371437
4412882
4421442
44331329
4451445
4471447
44831344
4491449
45031350
45131353
4521452
45394077
45483632
4552910
45673192
457104570
45894122
4592918
46073220
461135993
46262772
46383704
46452320
46583720
46694194
46762802
46883744
4692938
47041880
4711471
4722944
4732946
4741474
4751475
4762952
4771477
4781478
47931437
4801480
4821482
4841484
4872974
4881488
48931467
4901490
4921492
4931493
Total1002373530
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333937266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888247125b9644fa
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3437313235623936
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_1_6.json b/autobahn/client/tungstenite_case_13_1_6.json new file mode 100644 index 0000000..f7919d9 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_6.json @@ -0,0 +1,492 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 397, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]", + "droppedByMe": true, + "duration": 1287, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=397&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: IKnW3Uyv8O20JyQFwjMacQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Keq+XIucvlYcpMV9+Oyas06HNbI=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "13.1.6", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "248": 1, + "249": 4, + "250": 3, + "251": 1, + "252": 4, + "253": 7, + "254": 3, + "255": 6, + "256": 6, + "257": 5, + "258": 10, + "259": 13, + "260": 7, + "261": 8, + "262": 4, + "263": 8, + "264": 7, + "265": 5, + "266": 5, + "267": 5, + "268": 11, + "269": 6, + "270": 5, + "271": 9, + "272": 15, + "273": 10, + "274": 13, + "275": 14, + "276": 12, + "277": 13, + "278": 12, + "279": 10, + "280": 17, + "281": 14, + "282": 9, + "283": 12, + "284": 8, + "285": 9, + "286": 7, + "287": 9, + "288": 10, + "289": 10, + "290": 8, + "291": 4, + "292": 16, + "293": 3, + "294": 6, + "295": 9, + "296": 4, + "297": 8, + "298": 9, + "299": 11, + "300": 8, + "301": 5, + "302": 2, + "303": 5, + "304": 12, + "305": 9, + "306": 12, + "307": 11, + "308": 6, + "309": 8, + "310": 7, + "311": 5, + "312": 9, + "313": 10, + "314": 10, + "315": 6, + "316": 15, + "317": 6, + "318": 5, + "319": 10, + "320": 10, + "321": 12, + "322": 3, + "323": 5, + "324": 6, + "325": 3, + "326": 6, + "327": 8, + "328": 6, + "329": 4, + "330": 11, + "331": 8, + "332": 13, + "333": 3, + "334": 5, + "335": 5, + "336": 8, + "337": 6, + "338": 2, + "339": 2, + "340": 5, + "341": 4, + "342": 4, + "343": 5, + "344": 5, + "345": 4, + "346": 3, + "347": 1, + "350": 4, + "351": 6, + "352": 2, + "354": 1, + "358": 3, + "359": 5, + "360": 5, + "361": 3, + "362": 2, + "363": 5, + "364": 5, + "365": 4, + "366": 6, + "367": 2, + "368": 6, + "369": 3, + "370": 6, + "371": 7, + "372": 4, + "373": 5, + "374": 1, + "375": 2, + "377": 2, + "378": 1, + "384": 1, + "387": 2, + "388": 1, + "389": 1, + "390": 7, + "391": 6, + "392": 2, + "393": 6, + "394": 3, + "395": 2, + "396": 5, + "397": 8, + "398": 7, + "399": 4, + "400": 10, + "401": 8, + "402": 3, + "403": 7, + "404": 9, + "405": 6, + "406": 3, + "407": 4, + "408": 6, + "409": 5, + "410": 5, + "411": 6, + "412": 3, + "413": 4, + "414": 3, + "415": 6, + "417": 1, + "418": 1, + "419": 4, + "420": 1, + "421": 1, + "422": 2, + "424": 2, + "425": 5, + "426": 3, + "427": 1, + "428": 2, + "432": 1, + "469": 1 + }, + "started": "2020-09-07T18:51:56.883Z", + "trafficStats": { + "incomingCompressionRatio": 0.0380811767578125, + "incomingOctetsAppLevel": 8192000, + "incomingOctetsWebSocketLevel": 311961, + "incomingOctetsWireLevel": 319961, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.025644231169921882, + "outgoingCompressionRatio": 0.045077392578125, + "outgoingOctetsAppLevel": 8192000, + "outgoingOctetsWebSocketLevel": 369274, + "outgoingOctetsWireLevel": 373274, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.010832065079046995, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "301": 5, + "302": 6, + "303": 2, + "304": 5, + "305": 6, + "306": 11, + "307": 10, + "308": 3, + "309": 1, + "310": 5, + "311": 1, + "312": 3, + "313": 1, + "314": 5, + "315": 7, + "316": 4, + "317": 6, + "318": 12, + "319": 4, + "320": 12, + "321": 11, + "322": 10, + "323": 13, + "324": 10, + "325": 18, + "326": 16, + "327": 15, + "328": 10, + "329": 21, + "330": 21, + "331": 19, + "332": 13, + "333": 16, + "334": 7, + "335": 7, + "336": 12, + "337": 11, + "338": 10, + "339": 5, + "340": 7, + "341": 4, + "342": 5, + "343": 5, + "344": 3, + "345": 1, + "346": 5, + "347": 5, + "348": 6, + "349": 9, + "350": 9, + "351": 9, + "352": 8, + "353": 10, + "354": 8, + "355": 14, + "356": 9, + "357": 10, + "358": 12, + "359": 9, + "360": 8, + "361": 12, + "362": 8, + "363": 10, + "364": 4, + "365": 6, + "366": 6, + "367": 2, + "368": 2, + "369": 11, + "370": 7, + "371": 2, + "372": 11, + "373": 7, + "374": 8, + "375": 3, + "376": 7, + "377": 8, + "378": 6, + "379": 10, + "380": 6, + "381": 4, + "382": 2, + "383": 7, + "384": 2, + "385": 3, + "386": 3, + "387": 4, + "388": 3, + "389": 3, + "390": 5, + "391": 2, + "392": 4, + "393": 3, + "394": 4, + "395": 3, + "396": 3, + "397": 6, + "398": 4, + "399": 3, + "400": 1, + "401": 1, + "402": 4, + "403": 3, + "404": 3, + "405": 1, + "406": 4, + "407": 8, + "408": 3, + "409": 2, + "410": 7, + "411": 6, + "412": 2, + "413": 1, + "414": 1, + "415": 4, + "416": 12, + "417": 5, + "418": 3, + "419": 3, + "420": 2, + "421": 2, + "422": 7, + "423": 4, + "424": 3, + "425": 3, + "426": 5, + "427": 2, + "429": 3, + "430": 3, + "431": 3, + "432": 1, + "433": 1, + "434": 3, + "436": 1, + "437": 1, + "441": 2, + "442": 1, + "443": 3, + "445": 1, + "447": 1, + "448": 3, + "449": 1, + "450": 3, + "451": 3, + "452": 1, + "453": 9, + "454": 8, + "455": 2, + "456": 7, + "457": 10, + "458": 9, + "459": 2, + "460": 7, + "461": 13, + "462": 6, + "463": 8, + "464": 5, + "465": 8, + "466": 9, + "467": 6, + "468": 8, + "469": 2, + "470": 4, + "471": 1, + "472": 2, + "473": 2, + "474": 1, + "475": 1, + "476": 2, + "477": 1, + "478": 1, + "479": 3, + "480": 1, + "482": 1, + "484": 1, + "487": 2, + "488": 1, + "489": 3, + "490": 1, + "492": 1, + "493": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333937266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888247125b9644fa" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "47125b96" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_1_7.html b/autobahn/client/tungstenite_case_13_1_7.html new file mode 100644 index 0000000..7a91585 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_7.html @@ -0,0 +1,842 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.1.7 : Pass - 1633 ms @ 2020-09-07T18:51:58.170Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=398&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: oLgqLlV0chzZc01vsniyuA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: h1ZkgwFLl8AVzBGSVrFYaQstDHo=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
4922984
4932986
4942988
4952990
49652480
49741988
49852490
49931497
50031500
501105010
502126024
50352515
50494536
50584040
50684048
50731521
50863048
509105090
51084080
51173577
51273584
51342052
5141514
51531545
51621032
51742068
51842072
51931557
52021040
52121042
52252610
52342092
52463144
525115775
52694734
527105270
528105280
529115819
53094770
531126372
532115852
53373731
53494806
53584280
536126432
53752685
53852690
53973773
54052700
5411541
54231626
54331629
5441544
54521090
54663276
54721094
54821096
54963294
55142204
55221104
5531553
55421108
55542220
55663336
55752785
55842232
55984472
560126720
561105610
562158430
563137319
56452820
56595085
56663396
56763402
56863408
5701570
57131713
57242288
57321146
57421148
57531725
5761576
57763462
57852890
57942316
58042320
58142324
58221164
58342332
5841584
5851585
58631758
58831764
58921178
59021180
59142364
59221184
59321186
59421188
59521190
5961596
59721194
59842392
59942396
60042400
60184808
60231806
60342412
60442416
60542420
60642424
60763642
60831824
61021220
61131833
61231836
61342452
61474298
61542460
61631848
61731851
6181618
61921238
62031860
6211621
62221244
62321246
62421248
62521250
6261626
62921258
63021260
63131893
63231896
63331899
6341634
63531905
6371637
63831914
63921278
64031920
64142564
64321286
64431932
6451645
64653230
6471647
64842592
64921298
6501650
6521652
65321306
65421308
65521310
65721314
6581658
6591659
6601660
66121322
66321326
66642664
66742668
6681668
66942676
67032010
67132013
67221344
67332019
6741674
6751675
6761676
67721354
67821356
67921358
68064080
68153405
68253410
68332049
68453420
68553425
68753435
68821376
68932067
69021380
6911691
69221384
69332079
69421388
69532085
69632088
69732091
69842792
69921398
70021400
70121402
70274914
70321406
70432112
70574935
70642824
70732121
7081708
70932127
71053550
71121422
71232136
71385704
71442856
71532145
71621432
71753585
71853590
71942876
72042880
72132163
72232166
72385784
72442896
72553625
72675082
72732181
72875096
72942916
73042920
73142924
732118052
73342932
73464404
73532205
73642944
73742948
73832214
74053700
74132223
74232226
74321486
7441744
74521490
7461746
74742988
74842992
7491749
75053750
7511751
7521752
75321506
75421508
75532265
75632268
7571757
7601760
76221524
7781778
77932337
7811781
7831783
7851785
7861786
7871787
7881788
7891789
7901790
7921792
7941794
Total1002609789
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
60121202
60231806
6031603
60421208
6051605
6061606
6071607
6081608
6091609
61021220
61131833
61274284
61342452
61463684
615106150
61674312
61753085
61831854
619106190
62053100
6211621
62242488
62374361
62495616
62585000
626116886
62795643
628106280
629159435
63095670
631159465
63274424
63363798
63485072
63585080
63674452
63731911
63853190
63942556
64074480
64153205
64242568
64353215
64453220
64574515
64642584
64721294
6481648
64963894
65031950
65121302
65221304
65342612
65463924
65553275
65685248
65763942
65874606
65921318
66074620
66195949
662117282
663106630
664117304
66585320
66674662
66785336
66874676
66942676
67085360
67164026
67242688
67353365
67442696
67521350
67621352
67742708
6781678
67942716
68042720
68142724
68221364
6831683
68442736
68542740
6861686
68721374
68842752
68921378
69032070
69132073
6921692
69332079
69432082
69553475
69642784
69732091
69842792
69942796
70032100
70121402
70232106
70321406
70464224
70532115
70685648
70721414
7081708
7091709
71032130
71132133
7121712
7131713
71421428
71532145
71621432
71721434
71842872
71921438
72032160
72121442
72253610
72321446
72421448
72553625
72621452
72721454
7281728
7291729
73032190
73232196
7331733
73442936
73521470
73653680
73721474
73932217
74032220
74153705
74332229
74432232
74521490
74621492
7471747
7481748
74975243
7501750
7511751
7521752
7531753
7541754
75543020
75643024
75732271
75853790
75932277
76021520
76221524
76332289
76443056
7651765
7661766
76732301
7691769
7701770
77132313
7721772
77321546
7741774
77532325
7761776
7771777
7781778
7801780
7831783
78621572
78721574
78832364
7891789
79043160
79121582
79221584
7941794
79543180
79753985
79821596
8001800
80121602
80221604
8031803
8041804
80532415
80675642
80764842
80821616
80964854
81043240
81154055
81232436
81321626
81421628
81521630
81643264
81732451
81843272
81932457
82021640
82132463
82354115
82421648
82564950
82754135
82843312
82943316
83043320
83143324
83221664
8331833
83486672
83521670
83621672
83743348
83843352
83921678
84054200
84121682
84275894
84332529
84465064
84521690
8461846
84721694
84821696
8491849
85054250
851108510
85254260
85343412
85454270
85554275
8561856
85754285
85832574
85932577
86043440
86143444
86232586
86376041
86432592
86543460
86665196
86765202
86876076
86932607
87021740
8711871
8721872
87332619
87432622
87521750
87721754
8781878
8791879
88121762
88221764
88421768
88621772
8871887
88821776
8901890
8931893
8941894
8991899
9001900
9041904
9061906
90743628
9081908
9101910
Total1002725538
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333938266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882e1c7268ce22f
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6531633732363863
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_1_7.json b/autobahn/client/tungstenite_case_13_1_7.json new file mode 100644 index 0000000..7c18f2b --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_7.json @@ -0,0 +1,689 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 398, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]", + "droppedByMe": true, + "duration": 1633, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=398&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: oLgqLlV0chzZc01vsniyuA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: h1ZkgwFLl8AVzBGSVrFYaQstDHo=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "13.1.7", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "492": 2, + "493": 2, + "494": 2, + "495": 2, + "496": 5, + "497": 4, + "498": 5, + "499": 3, + "500": 3, + "501": 10, + "502": 12, + "503": 5, + "504": 9, + "505": 8, + "506": 8, + "507": 3, + "508": 6, + "509": 10, + "510": 8, + "511": 7, + "512": 7, + "513": 4, + "514": 1, + "515": 3, + "516": 2, + "517": 4, + "518": 4, + "519": 3, + "520": 2, + "521": 2, + "522": 5, + "523": 4, + "524": 6, + "525": 11, + "526": 9, + "527": 10, + "528": 10, + "529": 11, + "530": 9, + "531": 12, + "532": 11, + "533": 7, + "534": 9, + "535": 8, + "536": 12, + "537": 5, + "538": 5, + "539": 7, + "540": 5, + "541": 1, + "542": 3, + "543": 3, + "544": 1, + "545": 2, + "546": 6, + "547": 2, + "548": 2, + "549": 6, + "551": 4, + "552": 2, + "553": 1, + "554": 2, + "555": 4, + "556": 6, + "557": 5, + "558": 4, + "559": 8, + "560": 12, + "561": 10, + "562": 15, + "563": 13, + "564": 5, + "565": 9, + "566": 6, + "567": 6, + "568": 6, + "570": 1, + "571": 3, + "572": 4, + "573": 2, + "574": 2, + "575": 3, + "576": 1, + "577": 6, + "578": 5, + "579": 4, + "580": 4, + "581": 4, + "582": 2, + "583": 4, + "584": 1, + "585": 1, + "586": 3, + "588": 3, + "589": 2, + "590": 2, + "591": 4, + "592": 2, + "593": 2, + "594": 2, + "595": 2, + "596": 1, + "597": 2, + "598": 4, + "599": 4, + "600": 4, + "601": 8, + "602": 3, + "603": 4, + "604": 4, + "605": 4, + "606": 4, + "607": 6, + "608": 3, + "610": 2, + "611": 3, + "612": 3, + "613": 4, + "614": 7, + "615": 4, + "616": 3, + "617": 3, + "618": 1, + "619": 2, + "620": 3, + "621": 1, + "622": 2, + "623": 2, + "624": 2, + "625": 2, + "626": 1, + "629": 2, + "630": 2, + "631": 3, + "632": 3, + "633": 3, + "634": 1, + "635": 3, + "637": 1, + "638": 3, + "639": 2, + "640": 3, + "641": 4, + "643": 2, + "644": 3, + "645": 1, + "646": 5, + "647": 1, + "648": 4, + "649": 2, + "650": 1, + "652": 1, + "653": 2, + "654": 2, + "655": 2, + "657": 2, + "658": 1, + "659": 1, + "660": 1, + "661": 2, + "663": 2, + "666": 4, + "667": 4, + "668": 1, + "669": 4, + "670": 3, + "671": 3, + "672": 2, + "673": 3, + "674": 1, + "675": 1, + "676": 1, + "677": 2, + "678": 2, + "679": 2, + "680": 6, + "681": 5, + "682": 5, + "683": 3, + "684": 5, + "685": 5, + "687": 5, + "688": 2, + "689": 3, + "690": 2, + "691": 1, + "692": 2, + "693": 3, + "694": 2, + "695": 3, + "696": 3, + "697": 3, + "698": 4, + "699": 2, + "700": 2, + "701": 2, + "702": 7, + "703": 2, + "704": 3, + "705": 7, + "706": 4, + "707": 3, + "708": 1, + "709": 3, + "710": 5, + "711": 2, + "712": 3, + "713": 8, + "714": 4, + "715": 3, + "716": 2, + "717": 5, + "718": 5, + "719": 4, + "720": 4, + "721": 3, + "722": 3, + "723": 8, + "724": 4, + "725": 5, + "726": 7, + "727": 3, + "728": 7, + "729": 4, + "730": 4, + "731": 4, + "732": 11, + "733": 4, + "734": 6, + "735": 3, + "736": 4, + "737": 4, + "738": 3, + "740": 5, + "741": 3, + "742": 3, + "743": 2, + "744": 1, + "745": 2, + "746": 1, + "747": 4, + "748": 4, + "749": 1, + "750": 5, + "751": 1, + "752": 1, + "753": 2, + "754": 2, + "755": 3, + "756": 3, + "757": 1, + "760": 1, + "762": 2, + "778": 1, + "779": 3, + "781": 1, + "783": 1, + "785": 1, + "786": 1, + "787": 1, + "788": 1, + "789": 1, + "790": 1, + "792": 1, + "794": 1 + }, + "started": "2020-09-07T18:51:58.170Z", + "trafficStats": { + "incomingCompressionRatio": 0.036714111328125, + "incomingOctetsAppLevel": 16384000, + "incomingOctetsWebSocketLevel": 601524, + "incomingOctetsWireLevel": 609524, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.013299552470059383, + "outgoingCompressionRatio": 0.0440235595703125, + "outgoingOctetsAppLevel": 16384000, + "outgoingOctetsWebSocketLevel": 721282, + "outgoingOctetsWireLevel": 725282, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.005545681162152944, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "601": 2, + "602": 3, + "603": 1, + "604": 2, + "605": 1, + "606": 1, + "607": 1, + "608": 1, + "609": 1, + "610": 2, + "611": 3, + "612": 7, + "613": 4, + "614": 6, + "615": 10, + "616": 7, + "617": 5, + "618": 3, + "619": 10, + "620": 5, + "621": 1, + "622": 4, + "623": 7, + "624": 9, + "625": 8, + "626": 11, + "627": 9, + "628": 10, + "629": 15, + "630": 9, + "631": 15, + "632": 7, + "633": 6, + "634": 8, + "635": 8, + "636": 7, + "637": 3, + "638": 5, + "639": 4, + "640": 7, + "641": 5, + "642": 4, + "643": 5, + "644": 5, + "645": 7, + "646": 4, + "647": 2, + "648": 1, + "649": 6, + "650": 3, + "651": 2, + "652": 2, + "653": 4, + "654": 6, + "655": 5, + "656": 8, + "657": 6, + "658": 7, + "659": 2, + "660": 7, + "661": 9, + "662": 11, + "663": 10, + "664": 11, + "665": 8, + "666": 7, + "667": 8, + "668": 7, + "669": 4, + "670": 8, + "671": 6, + "672": 4, + "673": 5, + "674": 4, + "675": 2, + "676": 2, + "677": 4, + "678": 1, + "679": 4, + "680": 4, + "681": 4, + "682": 2, + "683": 1, + "684": 4, + "685": 4, + "686": 1, + "687": 2, + "688": 4, + "689": 2, + "690": 3, + "691": 3, + "692": 1, + "693": 3, + "694": 3, + "695": 5, + "696": 4, + "697": 3, + "698": 4, + "699": 4, + "700": 3, + "701": 2, + "702": 3, + "703": 2, + "704": 6, + "705": 3, + "706": 8, + "707": 2, + "708": 1, + "709": 1, + "710": 3, + "711": 3, + "712": 1, + "713": 1, + "714": 2, + "715": 3, + "716": 2, + "717": 2, + "718": 4, + "719": 2, + "720": 3, + "721": 2, + "722": 5, + "723": 2, + "724": 2, + "725": 5, + "726": 2, + "727": 2, + "728": 1, + "729": 1, + "730": 3, + "732": 3, + "733": 1, + "734": 4, + "735": 2, + "736": 5, + "737": 2, + "739": 3, + "740": 3, + "741": 5, + "743": 3, + "744": 3, + "745": 2, + "746": 2, + "747": 1, + "748": 1, + "749": 7, + "750": 1, + "751": 1, + "752": 1, + "753": 1, + "754": 1, + "755": 4, + "756": 4, + "757": 3, + "758": 5, + "759": 3, + "760": 2, + "762": 2, + "763": 3, + "764": 4, + "765": 1, + "766": 1, + "767": 3, + "769": 1, + "770": 1, + "771": 3, + "772": 1, + "773": 2, + "774": 1, + "775": 3, + "776": 1, + "777": 1, + "778": 1, + "780": 1, + "783": 1, + "786": 2, + "787": 2, + "788": 3, + "789": 1, + "790": 4, + "791": 2, + "792": 2, + "794": 1, + "795": 4, + "797": 5, + "798": 2, + "800": 1, + "801": 2, + "802": 2, + "803": 1, + "804": 1, + "805": 3, + "806": 7, + "807": 6, + "808": 2, + "809": 6, + "810": 4, + "811": 5, + "812": 3, + "813": 2, + "814": 2, + "815": 2, + "816": 4, + "817": 3, + "818": 4, + "819": 3, + "820": 2, + "821": 3, + "823": 5, + "824": 2, + "825": 6, + "827": 5, + "828": 4, + "829": 4, + "830": 4, + "831": 4, + "832": 2, + "833": 1, + "834": 8, + "835": 2, + "836": 2, + "837": 4, + "838": 4, + "839": 2, + "840": 5, + "841": 2, + "842": 7, + "843": 3, + "844": 6, + "845": 2, + "846": 1, + "847": 2, + "848": 2, + "849": 1, + "850": 5, + "851": 10, + "852": 5, + "853": 4, + "854": 5, + "855": 5, + "856": 1, + "857": 5, + "858": 3, + "859": 3, + "860": 4, + "861": 4, + "862": 3, + "863": 7, + "864": 3, + "865": 4, + "866": 6, + "867": 6, + "868": 7, + "869": 3, + "870": 2, + "871": 1, + "872": 1, + "873": 3, + "874": 3, + "875": 2, + "877": 2, + "878": 1, + "879": 1, + "881": 2, + "882": 2, + "884": 2, + "886": 2, + "887": 1, + "888": 2, + "890": 1, + "893": 1, + "894": 1, + "899": 1, + "900": 1, + "904": 1, + "906": 1, + "907": 4, + "908": 1, + "910": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333938266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882e1c7268ce22f" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "e1c7268c" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_1_8.html b/autobahn/client/tungstenite_case_13_1_8.html new file mode 100644 index 0000000..9693597 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_8.html @@ -0,0 +1,1001 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.1.8 : Pass - 2747 ms @ 2020-09-07T18:51:59.804Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=399&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: p1/7dmVgRpKoC9z2YlKlXQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Aha4SUt2Tqo1drC5vula8oOTrwM=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
9951995
9971997
9981998
9991999
100011000
100122002
100233006
100355015
100411004
100511005
100611006
100822016
101033030
101222024
101611016
101711017
101922038
102022040
102111021
102233066
102311023
102455120
102577175
102655130
102711027
102844112
102922058
103055150
103122062
103266192
103311033
103444136
103522070
103655180
103711037
103822076
103922078
104044160
104311043
104411044
104522090
104622092
104766282
104844192
104922098
105066300
105155255
105266312
105399477
105466324
105577385
105677392
105777399
105855290
105966354
106055300
106144244
106233186
106344252
106466384
106566390
106622132
106711067
106855340
106933207
107055350
107133213
107266432
107388584
107433222
107566450
107677532
107755385
107877546
107977553
108033240
108166486
108255410
108322166
108444336
108511085
108611086
108733261
108822176
108966534
109044360
109255460
109322186
109422188
109511095
109744388
109866588
109911099
110044400
110222204
110322206
110422208
110511105
110622212
110722214
110811108
110922218
111033330
111211112
111333339
111433342
111622232
111711117
112022240
112111121
112211122
112422248
112511125
112611126
112711127
112922258
113022260
113111131
113233396
113311133
113411134
113511135
113644544
113722274
113822276
113933417
114222284
114311143
114622292
114722294
114911149
115011150
115122302
115233456
115422308
115511155
115611156
115733471
115822316
116011160
116122322
116244648
116322326
116422328
116511165
116622332
116733501
116933507
117011170
117111171
117233516
117344692
117422348
117511175
117655880
117733531
117822356
117911179
118022360
118155905
118222364
118322366
118433552
118633558
118733561
118822376
118911189
119033570
119222384
119355965
119411194
119522390
119633588
119711197
119811198
119911199
120033600
120222404
120311203
120411204
120533615
120611206
120711207
120811208
120933627
121022420
121111211
121211212
121322426
121444856
121533645
121644864
121733651
121833654
121933657
122011220
122122442
122211222
122433672
122511225
122633678
122822456
122922458
123033690
123111231
123211232
123333699
123511235
123633708
123733711
123833714
123911239
124033720
124122482
124233726
124322486
124422488
124522490
124656230
124722494
124844992
125011250
125178757
125233756
125333759
125422508
125533765
125633768
125722514
125945036
126033780
126133783
126211262
126356315
126433792
126533795
126611266
126745068
126856340
126956345
127045080
127122542
127222544
127333819
127433822
127545100
127656380
127722554
127822556
127956395
128011280
128167686
128278974
128345132
1284810272
128556425
128622572
128767722
128833864
128967734
129045160
129179037
129256460
129379051
129422588
129533885
129611296
129722594
129879086
129956495
130045200
130145204
1302810416
1303911727
130445216
13051418270
13061114366
1307810456
130867848
130979163
131067860
131156555
131233936
131333939
131445256
131556575
131622632
131811318
131911319
132011320
132122642
132245288
132311323
132411324
132511325
132622652
133611336
135611356
136022720
136411364
136511365
136611366
136711367
136822736
136945476
137056850
137134113
137222744
137345492
137434122
137568250
137622752
137722754
137911379
138211382
138411384
138522770
138611386
138822776
139011390
139411394
139511395
139611396
139722794
139834194
140022800
140111401
140211402
140311403
140411404
140511405
140611406
140811408
140979863
141079870
141122822
141222824
141434242
141545660
141622832
141722834
141911419
142011420
Total10021192856
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
123611236
123922478
124011240
124111241
124211242
124311243
124411244
124544980
124611246
124822496
125022500
125122502
125211252
125311253
125433762
125511255
125645024
125711257
125833774
125911259
126011260
126133783
126256310
126322526
126433792
126522530
126645064
126745068
126822536
126978883
127056350
127245088
1273810184
127445096
1275911475
127633828
1277911493
127867668
127967674
12801114080
1281810248
1282911538
1283911547
128445136
128545140
1286810288
128756435
128856440
128956445
129022580
129145164
129211292
129333879
129456470
129545180
129633888
129745188
129856490
129956495
130033900
130167806
130267812
130345212
130445216
130511305
130611306
130745228
130822616
130933927
131022620
131133933
131245248
131322626
131411314
131622632
131722634
131811318
131945276
132133963
132211322
132311323
132422648
132522650
132745308
132822656
132911329
133011330
133122662
133222664
133311333
133422668
133634008
133711337
133922678
134034020
134122682
134211342
134322686
134422688
134545380
134622692
134768082
134811348
134911349
135156755
135245408
135322706
135556775
135645424
135811358
135934077
136034080
136122722
136211362
136322726
136411364
136622732
136745468
136811368
136945476
137011370
137222744
137322746
137434122
137711377
137822756
137911379
138011380
138134143
138234146
138311383
138434152
138534155
138611386
138711387
138922778
139134173
139222784
139311393
139422788
139522790
139611396
139722794
139811398
140111401
140222804
140311403
140411404
140511405
140622812
140922818
141011410
141122822
141211412
141368478
141422828
141511415
141634248
141745668
141811418
141911419
142011420
142145684
142222844
142322846
142411424
142522850
142611426
142745708
142922858
143122862
143245728
143411434
143511435
143634308
143722874
143945756
144011440
144122882
144222884
144411444
144645784
144722894
144811448
144922898
145011450
145122902
145222904
145322906
145434362
145522910
145622912
145722914
145911459
146022920
146111461
146211462
146322926
146411464
146534395
146622932
146722934
146822936
146945876
147045880
147168826
147234416
147322946
147422948
147511475
147622952
147734431
147834434
147922958
148022960
148111481
148211482
148334449
148445936
148568910
148634458
148722974
148845952
148934467
149022980
149111491
149234476
149334479
149422988
149534485
149657480
149822996
150034500
150123002
150223004
150323006
150423008
150534515
150623012
150711507
150834524
150923018
151011510
151123022
151357565
151423028
151523030
151611516
151746068
151846072
151934557
152046080
152269132
152423048
152511525
152611526
152834584
152957645
153123062
153234596
153311533
153446136
153546140
153657680
153757685
1538913842
153957695
154069240
1541710787
154269252
154334629
154457720
154511545
154634638
1547710829
154823096
154923098
155034650
155169306
155257760
155369318
155434662
155534665
155669336
155757785
1558812464
1559710913
15601117160
1561710927
1562710934
156323126
156469384
156557825
156657830
156757835
156823136
156934707
157057850
157157855
157234716
157334719
157411574
157511575
157623152
157723154
157811578
158034740
158123162
158234746
158323166
158511585
158623172
158723174
158823176
158923178
159023180
159123182
159211592
159311593
159711597
160411604
160711607
160823216
161123222
161311613
161411614
161711617
161846472
162111621
162323246
162423248
162511625
162669756
162734881
162811628
162923258
163011630
163223264
163411634
163623272
163723274
163911639
164134923
164334929
164423288
164669876
164711647
164823296
165023300
165123302
165223304
165323306
165411654
165523310
165723314
165811658
165923318
166023320
166111661
166423328
Total10021435121
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333939266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88825809cf585be1
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3538303963663538
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_1_8.json b/autobahn/client/tungstenite_case_13_1_8.json new file mode 100644 index 0000000..8bd50c6 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_8.json @@ -0,0 +1,848 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 399, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]", + "droppedByMe": true, + "duration": 2747, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=399&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: p1/7dmVgRpKoC9z2YlKlXQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Aha4SUt2Tqo1drC5vula8oOTrwM=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "13.1.8", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "995": 1, + "997": 1, + "998": 1, + "999": 1, + "1000": 1, + "1001": 2, + "1002": 3, + "1003": 5, + "1004": 1, + "1005": 1, + "1006": 1, + "1008": 2, + "1010": 3, + "1012": 2, + "1016": 1, + "1017": 1, + "1019": 2, + "1020": 2, + "1021": 1, + "1022": 3, + "1023": 1, + "1024": 5, + "1025": 7, + "1026": 5, + "1027": 1, + "1028": 4, + "1029": 2, + "1030": 5, + "1031": 2, + "1032": 6, + "1033": 1, + "1034": 4, + "1035": 2, + "1036": 5, + "1037": 1, + "1038": 2, + "1039": 2, + "1040": 4, + "1043": 1, + "1044": 1, + "1045": 2, + "1046": 2, + "1047": 6, + "1048": 4, + "1049": 2, + "1050": 6, + "1051": 5, + "1052": 6, + "1053": 9, + "1054": 6, + "1055": 7, + "1056": 7, + "1057": 7, + "1058": 5, + "1059": 6, + "1060": 5, + "1061": 4, + "1062": 3, + "1063": 4, + "1064": 6, + "1065": 6, + "1066": 2, + "1067": 1, + "1068": 5, + "1069": 3, + "1070": 5, + "1071": 3, + "1072": 6, + "1073": 8, + "1074": 3, + "1075": 6, + "1076": 7, + "1077": 5, + "1078": 7, + "1079": 7, + "1080": 3, + "1081": 6, + "1082": 5, + "1083": 2, + "1084": 4, + "1085": 1, + "1086": 1, + "1087": 3, + "1088": 2, + "1089": 6, + "1090": 4, + "1092": 5, + "1093": 2, + "1094": 2, + "1095": 1, + "1097": 4, + "1098": 6, + "1099": 1, + "1100": 4, + "1102": 2, + "1103": 2, + "1104": 2, + "1105": 1, + "1106": 2, + "1107": 2, + "1108": 1, + "1109": 2, + "1110": 3, + "1112": 1, + "1113": 3, + "1114": 3, + "1116": 2, + "1117": 1, + "1120": 2, + "1121": 1, + "1122": 1, + "1124": 2, + "1125": 1, + "1126": 1, + "1127": 1, + "1129": 2, + "1130": 2, + "1131": 1, + "1132": 3, + "1133": 1, + "1134": 1, + "1135": 1, + "1136": 4, + "1137": 2, + "1138": 2, + "1139": 3, + "1142": 2, + "1143": 1, + "1146": 2, + "1147": 2, + "1149": 1, + "1150": 1, + "1151": 2, + "1152": 3, + "1154": 2, + "1155": 1, + "1156": 1, + "1157": 3, + "1158": 2, + "1160": 1, + "1161": 2, + "1162": 4, + "1163": 2, + "1164": 2, + "1165": 1, + "1166": 2, + "1167": 3, + "1169": 3, + "1170": 1, + "1171": 1, + "1172": 3, + "1173": 4, + "1174": 2, + "1175": 1, + "1176": 5, + "1177": 3, + "1178": 2, + "1179": 1, + "1180": 2, + "1181": 5, + "1182": 2, + "1183": 2, + "1184": 3, + "1186": 3, + "1187": 3, + "1188": 2, + "1189": 1, + "1190": 3, + "1192": 2, + "1193": 5, + "1194": 1, + "1195": 2, + "1196": 3, + "1197": 1, + "1198": 1, + "1199": 1, + "1200": 3, + "1202": 2, + "1203": 1, + "1204": 1, + "1205": 3, + "1206": 1, + "1207": 1, + "1208": 1, + "1209": 3, + "1210": 2, + "1211": 1, + "1212": 1, + "1213": 2, + "1214": 4, + "1215": 3, + "1216": 4, + "1217": 3, + "1218": 3, + "1219": 3, + "1220": 1, + "1221": 2, + "1222": 1, + "1224": 3, + "1225": 1, + "1226": 3, + "1228": 2, + "1229": 2, + "1230": 3, + "1231": 1, + "1232": 1, + "1233": 3, + "1235": 1, + "1236": 3, + "1237": 3, + "1238": 3, + "1239": 1, + "1240": 3, + "1241": 2, + "1242": 3, + "1243": 2, + "1244": 2, + "1245": 2, + "1246": 5, + "1247": 2, + "1248": 4, + "1250": 1, + "1251": 7, + "1252": 3, + "1253": 3, + "1254": 2, + "1255": 3, + "1256": 3, + "1257": 2, + "1259": 4, + "1260": 3, + "1261": 3, + "1262": 1, + "1263": 5, + "1264": 3, + "1265": 3, + "1266": 1, + "1267": 4, + "1268": 5, + "1269": 5, + "1270": 4, + "1271": 2, + "1272": 2, + "1273": 3, + "1274": 3, + "1275": 4, + "1276": 5, + "1277": 2, + "1278": 2, + "1279": 5, + "1280": 1, + "1281": 6, + "1282": 7, + "1283": 4, + "1284": 8, + "1285": 5, + "1286": 2, + "1287": 6, + "1288": 3, + "1289": 6, + "1290": 4, + "1291": 7, + "1292": 5, + "1293": 7, + "1294": 2, + "1295": 3, + "1296": 1, + "1297": 2, + "1298": 7, + "1299": 5, + "1300": 4, + "1301": 4, + "1302": 8, + "1303": 9, + "1304": 4, + "1305": 14, + "1306": 11, + "1307": 8, + "1308": 6, + "1309": 7, + "1310": 6, + "1311": 5, + "1312": 3, + "1313": 3, + "1314": 4, + "1315": 5, + "1316": 2, + "1318": 1, + "1319": 1, + "1320": 1, + "1321": 2, + "1322": 4, + "1323": 1, + "1324": 1, + "1325": 1, + "1326": 2, + "1336": 1, + "1356": 1, + "1360": 2, + "1364": 1, + "1365": 1, + "1366": 1, + "1367": 1, + "1368": 2, + "1369": 4, + "1370": 5, + "1371": 3, + "1372": 2, + "1373": 4, + "1374": 3, + "1375": 6, + "1376": 2, + "1377": 2, + "1379": 1, + "1382": 1, + "1384": 1, + "1385": 2, + "1386": 1, + "1388": 2, + "1390": 1, + "1394": 1, + "1395": 1, + "1396": 1, + "1397": 2, + "1398": 3, + "1400": 2, + "1401": 1, + "1402": 1, + "1403": 1, + "1404": 1, + "1405": 1, + "1406": 1, + "1408": 1, + "1409": 7, + "1410": 7, + "1411": 2, + "1412": 2, + "1414": 3, + "1415": 4, + "1416": 2, + "1417": 2, + "1419": 1, + "1420": 1 + }, + "started": "2020-09-07T18:51:59.804Z", + "trafficStats": { + "incomingCompressionRatio": 0.03615084838867187, + "incomingOctetsAppLevel": 32768000, + "incomingOctetsWebSocketLevel": 1184591, + "incomingOctetsWireLevel": 1192591, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.0067533857677459985, + "outgoingCompressionRatio": 0.043666534423828125, + "outgoingOctetsAppLevel": 32768000, + "outgoingOctetsWebSocketLevel": 1430865, + "outgoingOctetsWireLevel": 1434865, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0027955118057957948, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "1236": 1, + "1239": 2, + "1240": 1, + "1241": 1, + "1242": 1, + "1243": 1, + "1244": 1, + "1245": 4, + "1246": 1, + "1248": 2, + "1250": 2, + "1251": 2, + "1252": 1, + "1253": 1, + "1254": 3, + "1255": 1, + "1256": 4, + "1257": 1, + "1258": 3, + "1259": 1, + "1260": 1, + "1261": 3, + "1262": 5, + "1263": 2, + "1264": 3, + "1265": 2, + "1266": 4, + "1267": 4, + "1268": 2, + "1269": 7, + "1270": 5, + "1272": 4, + "1273": 8, + "1274": 4, + "1275": 9, + "1276": 3, + "1277": 9, + "1278": 6, + "1279": 6, + "1280": 11, + "1281": 8, + "1282": 9, + "1283": 9, + "1284": 4, + "1285": 4, + "1286": 8, + "1287": 5, + "1288": 5, + "1289": 5, + "1290": 2, + "1291": 4, + "1292": 1, + "1293": 3, + "1294": 5, + "1295": 4, + "1296": 3, + "1297": 4, + "1298": 5, + "1299": 5, + "1300": 3, + "1301": 6, + "1302": 6, + "1303": 4, + "1304": 4, + "1305": 1, + "1306": 1, + "1307": 4, + "1308": 2, + "1309": 3, + "1310": 2, + "1311": 3, + "1312": 4, + "1313": 2, + "1314": 1, + "1316": 2, + "1317": 2, + "1318": 1, + "1319": 4, + "1321": 3, + "1322": 1, + "1323": 1, + "1324": 2, + "1325": 2, + "1327": 4, + "1328": 2, + "1329": 1, + "1330": 1, + "1331": 2, + "1332": 2, + "1333": 1, + "1334": 2, + "1336": 3, + "1337": 1, + "1339": 2, + "1340": 3, + "1341": 2, + "1342": 1, + "1343": 2, + "1344": 2, + "1345": 4, + "1346": 2, + "1347": 6, + "1348": 1, + "1349": 1, + "1351": 5, + "1352": 4, + "1353": 2, + "1355": 5, + "1356": 4, + "1358": 1, + "1359": 3, + "1360": 3, + "1361": 2, + "1362": 1, + "1363": 2, + "1364": 1, + "1366": 2, + "1367": 4, + "1368": 1, + "1369": 4, + "1370": 1, + "1372": 2, + "1373": 2, + "1374": 3, + "1377": 1, + "1378": 2, + "1379": 1, + "1380": 1, + "1381": 3, + "1382": 3, + "1383": 1, + "1384": 3, + "1385": 3, + "1386": 1, + "1387": 1, + "1389": 2, + "1391": 3, + "1392": 2, + "1393": 1, + "1394": 2, + "1395": 2, + "1396": 1, + "1397": 2, + "1398": 1, + "1401": 1, + "1402": 2, + "1403": 1, + "1404": 1, + "1405": 1, + "1406": 2, + "1409": 2, + "1410": 1, + "1411": 2, + "1412": 1, + "1413": 6, + "1414": 2, + "1415": 1, + "1416": 3, + "1417": 4, + "1418": 1, + "1419": 1, + "1420": 1, + "1421": 4, + "1422": 2, + "1423": 2, + "1424": 1, + "1425": 2, + "1426": 1, + "1427": 4, + "1429": 2, + "1431": 2, + "1432": 4, + "1434": 1, + "1435": 1, + "1436": 3, + "1437": 2, + "1439": 4, + "1440": 1, + "1441": 2, + "1442": 2, + "1444": 1, + "1446": 4, + "1447": 2, + "1448": 1, + "1449": 2, + "1450": 1, + "1451": 2, + "1452": 2, + "1453": 2, + "1454": 3, + "1455": 2, + "1456": 2, + "1457": 2, + "1459": 1, + "1460": 2, + "1461": 1, + "1462": 1, + "1463": 2, + "1464": 1, + "1465": 3, + "1466": 2, + "1467": 2, + "1468": 2, + "1469": 4, + "1470": 4, + "1471": 6, + "1472": 3, + "1473": 2, + "1474": 2, + "1475": 1, + "1476": 2, + "1477": 3, + "1478": 3, + "1479": 2, + "1480": 2, + "1481": 1, + "1482": 1, + "1483": 3, + "1484": 4, + "1485": 6, + "1486": 3, + "1487": 2, + "1488": 4, + "1489": 3, + "1490": 2, + "1491": 1, + "1492": 3, + "1493": 3, + "1494": 2, + "1495": 3, + "1496": 5, + "1498": 2, + "1500": 3, + "1501": 2, + "1502": 2, + "1503": 2, + "1504": 2, + "1505": 3, + "1506": 2, + "1507": 1, + "1508": 3, + "1509": 2, + "1510": 1, + "1511": 2, + "1513": 5, + "1514": 2, + "1515": 2, + "1516": 1, + "1517": 4, + "1518": 4, + "1519": 3, + "1520": 4, + "1522": 6, + "1524": 2, + "1525": 1, + "1526": 1, + "1528": 3, + "1529": 5, + "1531": 2, + "1532": 3, + "1533": 1, + "1534": 4, + "1535": 4, + "1536": 5, + "1537": 5, + "1538": 9, + "1539": 5, + "1540": 6, + "1541": 7, + "1542": 6, + "1543": 3, + "1544": 5, + "1545": 1, + "1546": 3, + "1547": 7, + "1548": 2, + "1549": 2, + "1550": 3, + "1551": 6, + "1552": 5, + "1553": 6, + "1554": 3, + "1555": 3, + "1556": 6, + "1557": 5, + "1558": 8, + "1559": 7, + "1560": 11, + "1561": 7, + "1562": 7, + "1563": 2, + "1564": 6, + "1565": 5, + "1566": 5, + "1567": 5, + "1568": 2, + "1569": 3, + "1570": 5, + "1571": 5, + "1572": 3, + "1573": 3, + "1574": 1, + "1575": 1, + "1576": 2, + "1577": 2, + "1578": 1, + "1580": 3, + "1581": 2, + "1582": 3, + "1583": 2, + "1585": 1, + "1586": 2, + "1587": 2, + "1588": 2, + "1589": 2, + "1590": 2, + "1591": 2, + "1592": 1, + "1593": 1, + "1597": 1, + "1604": 1, + "1607": 1, + "1608": 2, + "1611": 2, + "1613": 1, + "1614": 1, + "1617": 1, + "1618": 4, + "1621": 1, + "1623": 2, + "1624": 2, + "1625": 1, + "1626": 6, + "1627": 3, + "1628": 1, + "1629": 2, + "1630": 1, + "1632": 2, + "1634": 1, + "1636": 2, + "1637": 2, + "1639": 1, + "1641": 3, + "1643": 3, + "1644": 2, + "1646": 6, + "1647": 1, + "1648": 2, + "1650": 2, + "1651": 2, + "1652": 2, + "1653": 2, + "1654": 1, + "1655": 2, + "1657": 2, + "1658": 1, + "1659": 2, + "1660": 2, + "1661": 1, + "1664": 2 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333939266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88825809cf585be1" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "5809cf58" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_1_9.html b/autobahn/client/tungstenite_case_13_1_9.html new file mode 100644 index 0000000..dfdc275 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_9.html @@ -0,0 +1,556 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.1.9 : Pass - 4318 ms @ 2020-09-07T18:52:02.551Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=400&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: vD5O2oUR5hLW9g2lE2S5HQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: bIQbqmy/nUBhafIy0yWwzb/S/yc=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
2571257
229112291
229312293
229524590
229636888
229712297
229824596
229912299
230024600
230149204
2302716114
2303511515
2304818432
2305613830
230649224
2307613842
2308716156
23091841562
23101125410
2311920799
23122353176
23131637008
23142557850
23152353245
23162455584
23171432438
23181841724
23191841742
23201432480
23212455704
23222353406
23231432522
23241637184
23251330225
23261227912
23271023270
23281125608
2329511645
2330716310
2331716317
2332511660
2333511665
2334511670
233549340
233624672
233749348
2338818704
2339511695
2340818720
2341716387
2342818736
2343511715
23441125784
23451228140
23461637536
23471228164
23481739916
23491842282
23501842300
2351716457
2352921168
23531330589
235449416
2355511775
235612356
235737071
235824716
236012360
236124722
236224724
236624732
236712367
236812368
236924738
237012370
237112371
237224744
237324746
237537125
237649504
237737131
237824756
237924758
238112381
238312383
238512385
238612386
238824776
239012390
239212392
239324786
239437182
239524790
239612396
239724794
239824796
2399716793
2400716800
2401614406
240224804
2403614418
240437212
2405512025
240612406
240737221
240812408
240924818
241124822
2413512065
241449656
2415614490
241649664
24171536255
2418614508
2419716933
24201229040
24211433894
2422921798
24231536345
24241229088
2425614550
24262150946
24272048540
24282048560
24291229148
24301741310
24312151051
24321331616
2433921897
2434819472
2435614610
2436512180
243724874
243812438
244112441
244224884
244512445
245412454
Total10022360177
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
2521252
280125602
280212802
280325606
2804514020
2805411220
2806616836
2807514035
2808616848
28091233708
28101747770
28112261842
28122673112
28132878764
28141747838
28153598525
28161953504
28173187327
28182056360
28192364837
28201747940
28212159241
28222776194
28232570575
28242262128
28252673450
28262056520
28273496118
28282056560
28291439606
2830822640
2831925479
28321748144
28331645328
28341748178
28351645360
28361028360
2837925533
2838514190
283938517
284012840
284138523
2842411368
284325686
284625692
284712847
284912849
285012850
285125702
285312853
285412854
285525710
285738571
2859411436
286012860
2862411448
286338589
286425728
286625732
286712867
286812868
286912869
287012870
287212872
287812878
287912879
288225764
288312883
288412884
288512885
288625772
288712887
288825776
289212892
289512895
289712897
289938697
290025800
290125802
2902514510
2903823224
2904514520
2905720335
2906411624
2907823256
290825816
290938727
291038730
2911514555
29121029120
29131132043
29141646624
29151029150
29161132076
2917617502
29181955442
29191235028
2920617520
2921926289
29221235064
29231235076
29241235088
2925926325
2926720482
2927926343
2928720496
2929617574
2930411720
2931411724
293225864
293338799
293412934
2935617610
29361132296
2937823496
29381338194
29391029390
2940926460
2941514705
294225884
294338829
295712957
Total10022856349
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343030266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882593e08675ad6
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3539336530383637
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_1_9.json b/autobahn/client/tungstenite_case_13_1_9.json new file mode 100644 index 0000000..d36d9c2 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_1_9.json @@ -0,0 +1,403 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 400, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 0)]", + "droppedByMe": true, + "duration": 4318, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=400&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: vD5O2oUR5hLW9g2lE2S5HQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: bIQbqmy/nUBhafIy0yWwzb/S/yc=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "13.1.9", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "2291": 1, + "2293": 1, + "2295": 2, + "2296": 3, + "2297": 1, + "2298": 2, + "2299": 1, + "2300": 2, + "2301": 4, + "2302": 7, + "2303": 5, + "2304": 8, + "2305": 6, + "2306": 4, + "2307": 6, + "2308": 7, + "2309": 18, + "2310": 11, + "2311": 9, + "2312": 23, + "2313": 16, + "2314": 25, + "2315": 23, + "2316": 24, + "2317": 14, + "2318": 18, + "2319": 18, + "2320": 14, + "2321": 24, + "2322": 23, + "2323": 14, + "2324": 16, + "2325": 13, + "2326": 12, + "2327": 10, + "2328": 11, + "2329": 5, + "2330": 7, + "2331": 7, + "2332": 5, + "2333": 5, + "2334": 5, + "2335": 4, + "2336": 2, + "2337": 4, + "2338": 8, + "2339": 5, + "2340": 8, + "2341": 7, + "2342": 8, + "2343": 5, + "2344": 11, + "2345": 12, + "2346": 16, + "2347": 12, + "2348": 17, + "2349": 18, + "2350": 18, + "2351": 7, + "2352": 9, + "2353": 13, + "2354": 4, + "2355": 5, + "2356": 1, + "2357": 3, + "2358": 2, + "2360": 1, + "2361": 2, + "2362": 2, + "2366": 2, + "2367": 1, + "2368": 1, + "2369": 2, + "2370": 1, + "2371": 1, + "2372": 2, + "2373": 2, + "2375": 3, + "2376": 4, + "2377": 3, + "2378": 2, + "2379": 2, + "2381": 1, + "2383": 1, + "2385": 1, + "2386": 1, + "2388": 2, + "2390": 1, + "2392": 1, + "2393": 2, + "2394": 3, + "2395": 2, + "2396": 1, + "2397": 2, + "2398": 2, + "2399": 7, + "2400": 7, + "2401": 6, + "2402": 2, + "2403": 6, + "2404": 3, + "2405": 5, + "2406": 1, + "2407": 3, + "2408": 1, + "2409": 2, + "2411": 2, + "2413": 5, + "2414": 4, + "2415": 6, + "2416": 4, + "2417": 15, + "2418": 6, + "2419": 7, + "2420": 12, + "2421": 14, + "2422": 9, + "2423": 15, + "2424": 12, + "2425": 6, + "2426": 21, + "2427": 20, + "2428": 20, + "2429": 12, + "2430": 17, + "2431": 21, + "2432": 13, + "2433": 9, + "2434": 8, + "2435": 6, + "2436": 5, + "2437": 2, + "2438": 1, + "2441": 1, + "2442": 2, + "2445": 1, + "2454": 1 + }, + "started": "2020-09-07T18:52:02.551Z", + "trafficStats": { + "incomingCompressionRatio": 0.0358873291015625, + "incomingOctetsAppLevel": 65536000, + "incomingOctetsWebSocketLevel": 2351912, + "incomingOctetsWireLevel": 2359912, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.00340148781076843, + "outgoingCompressionRatio": 0.04351948547363281, + "outgoingOctetsAppLevel": 65536000, + "outgoingOctetsWebSocketLevel": 2852093, + "outgoingOctetsWireLevel": 2856093, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.0014024788111748109, + "preopenIncomingOctetsWireLevel": 257, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "252": 1, + "2801": 2, + "2802": 1, + "2803": 2, + "2804": 5, + "2805": 4, + "2806": 6, + "2807": 5, + "2808": 6, + "2809": 12, + "2810": 17, + "2811": 22, + "2812": 26, + "2813": 28, + "2814": 17, + "2815": 35, + "2816": 19, + "2817": 31, + "2818": 20, + "2819": 23, + "2820": 17, + "2821": 21, + "2822": 27, + "2823": 25, + "2824": 22, + "2825": 26, + "2826": 20, + "2827": 34, + "2828": 20, + "2829": 14, + "2830": 8, + "2831": 9, + "2832": 17, + "2833": 16, + "2834": 17, + "2835": 16, + "2836": 10, + "2837": 9, + "2838": 5, + "2839": 3, + "2840": 1, + "2841": 3, + "2842": 4, + "2843": 2, + "2846": 2, + "2847": 1, + "2849": 1, + "2850": 1, + "2851": 2, + "2853": 1, + "2854": 1, + "2855": 2, + "2857": 3, + "2859": 4, + "2860": 1, + "2862": 4, + "2863": 3, + "2864": 2, + "2866": 2, + "2867": 1, + "2868": 1, + "2869": 1, + "2870": 1, + "2872": 1, + "2878": 1, + "2879": 1, + "2882": 2, + "2883": 1, + "2884": 1, + "2885": 1, + "2886": 2, + "2887": 1, + "2888": 2, + "2892": 1, + "2895": 1, + "2897": 1, + "2899": 3, + "2900": 2, + "2901": 2, + "2902": 5, + "2903": 8, + "2904": 5, + "2905": 7, + "2906": 4, + "2907": 8, + "2908": 2, + "2909": 3, + "2910": 3, + "2911": 5, + "2912": 10, + "2913": 11, + "2914": 16, + "2915": 10, + "2916": 11, + "2917": 6, + "2918": 19, + "2919": 12, + "2920": 6, + "2921": 9, + "2922": 12, + "2923": 12, + "2924": 12, + "2925": 9, + "2926": 7, + "2927": 9, + "2928": 7, + "2929": 6, + "2930": 4, + "2931": 4, + "2932": 2, + "2933": 3, + "2934": 1, + "2935": 6, + "2936": 11, + "2937": 8, + "2938": 13, + "2939": 10, + "2940": 9, + "2941": 5, + "2942": 2, + "2943": 3, + "2957": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343030266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882593e08675ad6" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "593e0867" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_2_1.html b/autobahn/client/tungstenite_case_13_2_1.html new file mode 100644 index 0000000..3b4ed85 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_1.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.2.1 : Fail - 1 ms @ 2020-09-07T18:52:54.947Z

+

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Case did not finish within 60 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=410&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 8kCHBdLe55sESz1UA2QdDg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: TR3BZgV3J0yWhQlXApP+NHZaOzE=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
20120
2801280
Total2300
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343130266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_2_1.json b/autobahn/client/tungstenite_case_13_2_1.json new file mode 100644 index 0000000..008377a --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_1.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 410, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=410&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 8kCHBdLe55sESz1UA2QdDg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: TR3BZgV3J0yWhQlXApP+NHZaOzE=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover\r\n\r\n", + "id": "13.2.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 60 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.947Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "20": 1, + "280": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343130266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 280, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_2_10.html b/autobahn/client/tungstenite_case_13_2_10.html new file mode 100644 index 0000000..0dd38a1 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_10.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.2.10 : Fail - 2 ms @ 2020-09-07T18:52:54.958Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=419&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: pC8KgXnfh6QJv94gqPQ1GA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: y+InyTp9zdrdZgi02yLIRyy/H44=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
2801280
570815708
Total25988
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343139266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_2_10.json b/autobahn/client/tungstenite_case_13_2_10.json new file mode 100644 index 0000000..4d388ea --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_10.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 419, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=419&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: pC8KgXnfh6QJv94gqPQ1GA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: y+InyTp9zdrdZgi02yLIRyy/H44=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover\r\n\r\n", + "id": "13.2.10", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.958Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "280": 1, + "5708": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343139266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 280, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_2_11.html b/autobahn/client/tungstenite_case_13_2_11.html new file mode 100644 index 0000000..b0355ec --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_11.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.2.11 : Fail - 1 ms @ 2020-09-07T18:52:54.960Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=420&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: hXC0y0vE2kBFFQb7FqEK1g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: S+6vgBCpUMd7zoa7GxuUDc5v8Lw=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
2361236
2601260
2801280
Total3776
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
01
11
Total2
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343230266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_2_11.json b/autobahn/client/tungstenite_case_13_2_11.json new file mode 100644 index 0000000..a9a3b56 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_11.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 420, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=420&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: hXC0y0vE2kBFFQb7FqEK1g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: S+6vgBCpUMd7zoa7GxuUDc5v8Lw=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover\r\n\r\n", + "id": "13.2.11", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.960Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1 + }, + "txOctetStats": { + "236": 1, + "260": 1, + "280": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343230266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 280, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_2_12.html b/autobahn/client/tungstenite_case_13_2_12.html new file mode 100644 index 0000000..258d6ff --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_12.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.2.12 : Fail - 1 ms @ 2020-09-07T18:52:54.961Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=421&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: dp7YlM64ku2+gsAd0vCLRA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: TcCoLJtgaBftwa4xL7nU1aDD0iY=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
68168
2603780
2801280
Total51128
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
03
11
Total4
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343231266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_2_12.json b/autobahn/client/tungstenite_case_13_2_12.json new file mode 100644 index 0000000..b323eab --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_12.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 421, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=421&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dp7YlM64ku2+gsAd0vCLRA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: TcCoLJtgaBftwa4xL7nU1aDD0iY=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover\r\n\r\n", + "id": "13.2.12", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.961Z", + "trafficStats": null, + "txFrameStats": { + "0": 3, + "1": 1 + }, + "txOctetStats": { + "68": 1, + "260": 3, + "280": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343231266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 280, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_2_13.html b/autobahn/client/tungstenite_case_13_2_13.html new file mode 100644 index 0000000..89c6a2f --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_13.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.2.13 : Fail - 1 ms @ 2020-09-07T18:52:54.963Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=422&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: gVD7GzwXcFb67yGxAwsXVA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: KVI9gBOEajmZALEEa9tYdzs9uGA=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
1971197
26051300
2801280
Total71777
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
05
11
Total6
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343232266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_2_13.json b/autobahn/client/tungstenite_case_13_2_13.json new file mode 100644 index 0000000..93f75b0 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_13.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 422, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=422&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: gVD7GzwXcFb67yGxAwsXVA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: KVI9gBOEajmZALEEa9tYdzs9uGA=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover\r\n\r\n", + "id": "13.2.13", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.963Z", + "trafficStats": null, + "txFrameStats": { + "0": 5, + "1": 1 + }, + "txOctetStats": { + "197": 1, + "260": 5, + "280": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343232266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 280, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_2_14.html b/autobahn/client/tungstenite_case_13_2_14.html new file mode 100644 index 0000000..c8d11f8 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_14.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.2.14 : Fail - 1 ms @ 2020-09-07T18:52:54.964Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=423&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 7FbkvyKKPkybnlqhdgjCAw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: d4fxGS+fJO1KsZNVyVq0nheJW/8=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
1061106
260112860
2801280
Total133246
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
011
11
Total12
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343233266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_2_14.json b/autobahn/client/tungstenite_case_13_2_14.json new file mode 100644 index 0000000..0dfed2b --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_14.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 423, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=423&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 7FbkvyKKPkybnlqhdgjCAw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: d4fxGS+fJO1KsZNVyVq0nheJW/8=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover\r\n\r\n", + "id": "13.2.14", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.964Z", + "trafficStats": null, + "txFrameStats": { + "0": 11, + "1": 1 + }, + "txOctetStats": { + "106": 1, + "260": 11, + "280": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343233266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 280, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_2_15.html b/autobahn/client/tungstenite_case_13_2_15.html new file mode 100644 index 0000000..0aee47f --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_15.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.2.15 : Fail - 2 ms @ 2020-09-07T18:52:54.966Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=424&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: YPgAlX3u4ABZWL0ZHFdyHg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: bd6JJTf6U4sQs50Ifj3xupTzr9A=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
74174
260225720
2801280
Total246074
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
022
11
Total23
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343234266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_2_15.json b/autobahn/client/tungstenite_case_13_2_15.json new file mode 100644 index 0000000..3ceed07 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_15.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 424, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=424&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: YPgAlX3u4ABZWL0ZHFdyHg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: bd6JJTf6U4sQs50Ifj3xupTzr9A=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover\r\n\r\n", + "id": "13.2.15", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.966Z", + "trafficStats": null, + "txFrameStats": { + "0": 22, + "1": 1 + }, + "txOctetStats": { + "74": 1, + "260": 22, + "280": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343234266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 280, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_2_16.html b/autobahn/client/tungstenite_case_13_2_16.html new file mode 100644 index 0000000..548bc47 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_16.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.2.16 : Fail - 2 ms @ 2020-09-07T18:52:54.968Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=425&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: EpmxZ2VL9hGvWsiRwD0MFA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: E1x5Lz7sVOuGF9mIb3gf2uj6yRc=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
2801280
5881588
102855140
Total76008
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
05
11
Total6
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343235266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_2_16.json b/autobahn/client/tungstenite_case_13_2_16.json new file mode 100644 index 0000000..0f80023 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_16.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 425, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=425&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: EpmxZ2VL9hGvWsiRwD0MFA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: E1x5Lz7sVOuGF9mIb3gf2uj6yRc=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover\r\n\r\n", + "id": "13.2.16", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.968Z", + "trafficStats": null, + "txFrameStats": { + "0": 5, + "1": 1 + }, + "txOctetStats": { + "280": 1, + "588": 1, + "1028": 5 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343235266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 280, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_2_17.html b/autobahn/client/tungstenite_case_13_2_17.html new file mode 100644 index 0000000..30e0915 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_17.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.2.17 : Fail - 2 ms @ 2020-09-07T18:52:54.971Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=426&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: E3nmoEm/UWzyHB5ia41fvQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 9MZm9QORacZ6/kn57sxToURdF8g=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
2801280
161211612
410014100
Total35992
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
01
11
Total2
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343236266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_2_17.json b/autobahn/client/tungstenite_case_13_2_17.json new file mode 100644 index 0000000..fca7de8 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_17.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 426, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=426&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: E3nmoEm/UWzyHB5ia41fvQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 9MZm9QORacZ6/kn57sxToURdF8g=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover\r\n\r\n", + "id": "13.2.17", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.971Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1 + }, + "txOctetStats": { + "280": 1, + "1612": 1, + "4100": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343236266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 280, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_2_18.html b/autobahn/client/tungstenite_case_13_2_18.html new file mode 100644 index 0000000..473feaf --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_18.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.2.18 : Fail - 4 ms @ 2020-09-07T18:52:54.973Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=427&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: YHpUYE8fNmLvKidAvkhrSQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: fGciHZ4S9JwbTO+x72Qnsncql40=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
2801280
570815708
Total25988
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343237266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_2_18.json b/autobahn/client/tungstenite_case_13_2_18.json new file mode 100644 index 0000000..b2874ee --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_18.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 427, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]", + "droppedByMe": false, + "duration": 4, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=427&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: YHpUYE8fNmLvKidAvkhrSQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: fGciHZ4S9JwbTO+x72Qnsncql40=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover\r\n\r\n", + "id": "13.2.18", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.973Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "280": 1, + "5708": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343237266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 280, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_2_2.html b/autobahn/client/tungstenite_case_13_2_2.html new file mode 100644 index 0000000..c2180b9 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_2.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.2.2 : Fail - 1 ms @ 2020-09-07T18:52:54.948Z

+

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Case did not finish within 60 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=411&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 5aria0prWxU1OT4TzFnrbw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: tAckpGlxZNJEAFJejIzaJ7ArJug=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
51151
2801280
Total2331
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343131266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_2_2.json b/autobahn/client/tungstenite_case_13_2_2.json new file mode 100644 index 0000000..e1242bc --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_2.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 411, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=411&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 5aria0prWxU1OT4TzFnrbw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: tAckpGlxZNJEAFJejIzaJ7ArJug=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover\r\n\r\n", + "id": "13.2.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 60 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.948Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "51": 1, + "280": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343131266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 280, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_2_3.html b/autobahn/client/tungstenite_case_13_2_3.html new file mode 100644 index 0000000..d313948 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_3.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.2.3 : Fail - 1 ms @ 2020-09-07T18:52:54.949Z

+

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+ +

+ Case Outcome

Case did not finish within 120 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=412&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: P7cW7QgzxxokEFvKPWcMgw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 4yqYWBp5zK9Mm4EZaQDo8If8rZU=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
1471147
2801280
Total2427
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343132266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 120.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_2_3.json b/autobahn/client/tungstenite_case_13_2_3.json new file mode 100644 index 0000000..cd3edc3 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_3.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 412, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=412&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: P7cW7QgzxxokEFvKPWcMgw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 4yqYWBp5zK9Mm4EZaQDo8If8rZU=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover\r\n\r\n", + "id": "13.2.3", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 120 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.949Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "147": 1, + "280": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343132266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 280, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 120 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_2_4.html b/autobahn/client/tungstenite_case_13_2_4.html new file mode 100644 index 0000000..36f974e --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_4.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.2.4 : Fail - 1 ms @ 2020-09-07T18:52:54.951Z

+

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+ +

+ Case Outcome

Case did not finish within 240 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=413&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: mOgiYkySqUheKhaJGWZPOQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: qCsWDC9P5CDwecSgb7rGbcyYgpA=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
1701170
2801280
Total2450
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343133266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 240.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_2_4.json b/autobahn/client/tungstenite_case_13_2_4.json new file mode 100644 index 0000000..f2fc47a --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_4.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 413, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=413&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: mOgiYkySqUheKhaJGWZPOQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: qCsWDC9P5CDwecSgb7rGbcyYgpA=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover\r\n\r\n", + "id": "13.2.4", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 240 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.951Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "170": 1, + "280": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343133266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 280, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 240 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_2_5.html b/autobahn/client/tungstenite_case_13_2_5.html new file mode 100644 index 0000000..f66f28a --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_5.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.2.5 : Fail - 1 ms @ 2020-09-07T18:52:54.952Z

+

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=414&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Q0bigeGsaYLqprzFADup+w==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: pMJ1nTw49M0ZgOcUwjuHugMRmdY=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
2801280
3061306
Total2586
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343134266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_2_5.json b/autobahn/client/tungstenite_case_13_2_5.json new file mode 100644 index 0000000..b1c4081 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_5.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 414, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=414&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Q0bigeGsaYLqprzFADup+w==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: pMJ1nTw49M0ZgOcUwjuHugMRmdY=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover\r\n\r\n", + "id": "13.2.5", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.952Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "280": 1, + "306": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343134266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 280, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_2_6.html b/autobahn/client/tungstenite_case_13_2_6.html new file mode 100644 index 0000000..06766da --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_6.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.2.6 : Fail - 1 ms @ 2020-09-07T18:52:54.953Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=415&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 2DrdxR17mNfSQ/sKu+piIQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: O1mFJwIA5WzOgyXyEFlSapvtOns=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
2801280
4921492
Total2772
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343135266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_2_6.json b/autobahn/client/tungstenite_case_13_2_6.json new file mode 100644 index 0000000..9cf1219 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_6.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 415, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=415&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 2DrdxR17mNfSQ/sKu+piIQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: O1mFJwIA5WzOgyXyEFlSapvtOns=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover\r\n\r\n", + "id": "13.2.6", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.953Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "280": 1, + "492": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343135266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 280, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_2_7.html b/autobahn/client/tungstenite_case_13_2_7.html new file mode 100644 index 0000000..ce11861 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_7.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.2.7 : Fail - 1 ms @ 2020-09-07T18:52:54.954Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=416&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: VJk1kCvSwCECDrZEcD4mGA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: b0qzQRYjhSA5qlSP3/yIxCgifHs=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
2801280
8381838
Total21118
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343136266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_2_7.json b/autobahn/client/tungstenite_case_13_2_7.json new file mode 100644 index 0000000..c9ba3ef --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_7.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 416, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=416&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: VJk1kCvSwCECDrZEcD4mGA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: b0qzQRYjhSA5qlSP3/yIxCgifHs=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover\r\n\r\n", + "id": "13.2.7", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.954Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "280": 1, + "838": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343136266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 280, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_2_8.html b/autobahn/client/tungstenite_case_13_2_8.html new file mode 100644 index 0000000..fcb4d7f --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_8.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.2.8 : Fail - 1 ms @ 2020-09-07T18:52:54.955Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=417&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 6FFE5TQZWjzv1BAYVrC3lg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: HencLIiCIXM+e/w7qlnslk1rQSs=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
2801280
147711477
Total21757
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343137266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_2_8.json b/autobahn/client/tungstenite_case_13_2_8.json new file mode 100644 index 0000000..bcee9b9 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_8.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 417, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=417&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 6FFE5TQZWjzv1BAYVrC3lg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: HencLIiCIXM+e/w7qlnslk1rQSs=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover\r\n\r\n", + "id": "13.2.8", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.955Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "280": 1, + "1477": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343137266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 280, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_2_9.html b/autobahn/client/tungstenite_case_13_2_9.html new file mode 100644 index 0000000..5cade3d --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_9.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.2.9 : Fail - 1 ms @ 2020-09-07T18:52:54.956Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=418&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: steqUyonir8tHzGT5U6MRA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: F9iKiTVmBNdv1RuFJvJXGKHRgUs=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
2801280
292412924
Total23204
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343138266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_2_9.json b/autobahn/client/tungstenite_case_13_2_9.json new file mode 100644 index 0000000..ef8065d --- /dev/null +++ b/autobahn/client/tungstenite_case_13_2_9.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 418, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=418&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: steqUyonir8tHzGT5U6MRA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: F9iKiTVmBNdv1RuFJvJXGKHRgUs=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover\r\n\r\n", + "id": "13.2.9", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.956Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "280": 1, + "2924": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343138266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 280, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_3_1.html b/autobahn/client/tungstenite_case_13_3_1.html new file mode 100644 index 0000000..ebd313f --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_1.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.3.1 : Fail - 1 ms @ 2020-09-07T18:52:54.979Z

+

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Case did not finish within 60 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=428&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: uSOIoFKAIpgfJZS3RNqJWw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: wZsInMbbyJeiGGupU7ffT272xgg=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
20120
2781278
Total2298
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343238266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_3_1.json b/autobahn/client/tungstenite_case_13_3_1.json new file mode 100644 index 0000000..0bec6b3 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_1.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 428, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=428&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: uSOIoFKAIpgfJZS3RNqJWw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: wZsInMbbyJeiGGupU7ffT272xgg=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8\r\n\r\n", + "id": "13.3.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 60 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.979Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "20": 1, + "278": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343238266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 278, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_3_10.html b/autobahn/client/tungstenite_case_13_3_10.html new file mode 100644 index 0000000..4db06bd --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_10.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.3.10 : Fail - 5 ms @ 2020-09-07T18:52:54.999Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=437&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: SUp928CRJxsp7AfRxBtKtQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 5fEOq6QINXw4MI0/lQHiGom+9mI=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
2781278
570815708
Total25986
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343337266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_3_10.json b/autobahn/client/tungstenite_case_13_3_10.json new file mode 100644 index 0000000..81b092f --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_10.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 437, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]", + "droppedByMe": false, + "duration": 5, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=437&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: SUp928CRJxsp7AfRxBtKtQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 5fEOq6QINXw4MI0/lQHiGom+9mI=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8\r\n\r\n", + "id": "13.3.10", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.999Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "278": 1, + "5708": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343337266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 278, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_3_11.html b/autobahn/client/tungstenite_case_13_3_11.html new file mode 100644 index 0000000..3a7494e --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_11.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.3.11 : Fail - 1 ms @ 2020-09-07T18:52:55.005Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=438&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: JVFZSNuBpEqjETYeTagbVg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: gWV5Uw/f5FAbRGrxXmRfMb02Cdo=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
2361236
2601260
2781278
Total3774
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
01
11
Total2
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343338266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_3_11.json b/autobahn/client/tungstenite_case_13_3_11.json new file mode 100644 index 0000000..cd9ac01 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_11.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 438, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=438&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: JVFZSNuBpEqjETYeTagbVg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: gWV5Uw/f5FAbRGrxXmRfMb02Cdo=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8\r\n\r\n", + "id": "13.3.11", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.005Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1 + }, + "txOctetStats": { + "236": 1, + "260": 1, + "278": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343338266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 278, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_3_12.html b/autobahn/client/tungstenite_case_13_3_12.html new file mode 100644 index 0000000..ac606fd --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_12.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.3.12 : Fail - 2 ms @ 2020-09-07T18:52:55.007Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=439&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: PV+A1l7iLAgOZMWhBi1rFg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: nTelRaR/q8x9i5VfYbvboMiyy7w=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
68168
2603780
2781278
Total51126
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
03
11
Total4
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343339266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_3_12.json b/autobahn/client/tungstenite_case_13_3_12.json new file mode 100644 index 0000000..b4ebd5a --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_12.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 439, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=439&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: PV+A1l7iLAgOZMWhBi1rFg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: nTelRaR/q8x9i5VfYbvboMiyy7w=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8\r\n\r\n", + "id": "13.3.12", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.007Z", + "trafficStats": null, + "txFrameStats": { + "0": 3, + "1": 1 + }, + "txOctetStats": { + "68": 1, + "260": 3, + "278": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343339266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 278, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_3_13.html b/autobahn/client/tungstenite_case_13_3_13.html new file mode 100644 index 0000000..6b3a07a --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_13.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.3.13 : Fail - 2 ms @ 2020-09-07T18:52:55.011Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=440&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: khei8FDwMY6TxIKZoVzl8A==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: DHlnh9MjANSEIg+uUd7R4h66vpQ=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
1971197
26051300
2781278
Total71775
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
05
11
Total6
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343430266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_3_13.json b/autobahn/client/tungstenite_case_13_3_13.json new file mode 100644 index 0000000..dd0c5cc --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_13.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 440, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=440&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: khei8FDwMY6TxIKZoVzl8A==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: DHlnh9MjANSEIg+uUd7R4h66vpQ=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8\r\n\r\n", + "id": "13.3.13", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.011Z", + "trafficStats": null, + "txFrameStats": { + "0": 5, + "1": 1 + }, + "txOctetStats": { + "197": 1, + "260": 5, + "278": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343430266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 278, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_3_14.html b/autobahn/client/tungstenite_case_13_3_14.html new file mode 100644 index 0000000..ea6884e --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_14.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.3.14 : Fail - 2 ms @ 2020-09-07T18:52:55.014Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=441&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: dg4IsrNQKgQGx60iMAW6NA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: cOoNI1qKSR375x8gsAdq2XMAirY=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
1061106
260112860
2781278
Total133244
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
011
11
Total12
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343431266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_3_14.json b/autobahn/client/tungstenite_case_13_3_14.json new file mode 100644 index 0000000..6ead03d --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_14.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 441, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=441&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dg4IsrNQKgQGx60iMAW6NA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: cOoNI1qKSR375x8gsAdq2XMAirY=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8\r\n\r\n", + "id": "13.3.14", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.014Z", + "trafficStats": null, + "txFrameStats": { + "0": 11, + "1": 1 + }, + "txOctetStats": { + "106": 1, + "260": 11, + "278": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343431266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 278, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_3_15.html b/autobahn/client/tungstenite_case_13_3_15.html new file mode 100644 index 0000000..b1326a7 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_15.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.3.15 : Fail - 3 ms @ 2020-09-07T18:52:55.016Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=442&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 3UdZ+nJw9fGuLZgENIN+2Q==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 6mqaRHqIbnf7+rkNI/obtlC63rQ=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
74174
260225720
2781278
Total246072
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
022
11
Total23
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343432266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_3_15.json b/autobahn/client/tungstenite_case_13_3_15.json new file mode 100644 index 0000000..14383fd --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_15.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 442, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]", + "droppedByMe": false, + "duration": 3, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=442&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 3UdZ+nJw9fGuLZgENIN+2Q==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 6mqaRHqIbnf7+rkNI/obtlC63rQ=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8\r\n\r\n", + "id": "13.3.15", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.016Z", + "trafficStats": null, + "txFrameStats": { + "0": 22, + "1": 1 + }, + "txOctetStats": { + "74": 1, + "260": 22, + "278": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343432266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 278, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_3_16.html b/autobahn/client/tungstenite_case_13_3_16.html new file mode 100644 index 0000000..a2d9ef9 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_16.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.3.16 : Fail - 4 ms @ 2020-09-07T18:52:55.022Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=443&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ApEyddo8d6qm2OtMn2T6KQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: sFfjnJlcIxZelp0Oc6BQw67k1Ls=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
2781278
5881588
102855140
Total76006
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
05
11
Total6
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343433266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_3_16.json b/autobahn/client/tungstenite_case_13_3_16.json new file mode 100644 index 0000000..4514a0a --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_16.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 443, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]", + "droppedByMe": false, + "duration": 4, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=443&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ApEyddo8d6qm2OtMn2T6KQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: sFfjnJlcIxZelp0Oc6BQw67k1Ls=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8\r\n\r\n", + "id": "13.3.16", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.022Z", + "trafficStats": null, + "txFrameStats": { + "0": 5, + "1": 1 + }, + "txOctetStats": { + "278": 1, + "588": 1, + "1028": 5 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343433266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 278, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_3_17.html b/autobahn/client/tungstenite_case_13_3_17.html new file mode 100644 index 0000000..e945395 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_17.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.3.17 : Fail - 2 ms @ 2020-09-07T18:52:55.026Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=444&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 4mI0Fh2MEPzrKeDuiVXbeA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: YpArlEwrnOp0pQttg0RqkVbzE+w=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
2781278
161211612
410014100
Total35990
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
01
11
Total2
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343434266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_3_17.json b/autobahn/client/tungstenite_case_13_3_17.json new file mode 100644 index 0000000..4ab21c1 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_17.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 444, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=444&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 4mI0Fh2MEPzrKeDuiVXbeA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: YpArlEwrnOp0pQttg0RqkVbzE+w=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8\r\n\r\n", + "id": "13.3.17", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.026Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1 + }, + "txOctetStats": { + "278": 1, + "1612": 1, + "4100": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343434266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 278, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_3_18.html b/autobahn/client/tungstenite_case_13_3_18.html new file mode 100644 index 0000000..e1c94f8 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_18.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.3.18 : Fail - 2 ms @ 2020-09-07T18:52:55.029Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=445&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ar06iJBtP/kv1YYqTxMZog==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: oFDWRuVV7GOXmfRNUcgk4U0thnE=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
2781278
570815708
Total25986
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343435266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_3_18.json b/autobahn/client/tungstenite_case_13_3_18.json new file mode 100644 index 0000000..51590d7 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_18.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 445, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=445&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ar06iJBtP/kv1YYqTxMZog==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: oFDWRuVV7GOXmfRNUcgk4U0thnE=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8\r\n\r\n", + "id": "13.3.18", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.029Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "278": 1, + "5708": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343435266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 278, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_3_2.html b/autobahn/client/tungstenite_case_13_3_2.html new file mode 100644 index 0000000..b019f49 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_2.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.3.2 : Fail - 1 ms @ 2020-09-07T18:52:54.982Z

+

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Case did not finish within 60 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=429&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: EDAbp2++yHUkChK9yMCxFA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 8A0t5KkcbPowb9XTvlllqRw5lPk=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
51151
2781278
Total2329
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343239266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_3_2.json b/autobahn/client/tungstenite_case_13_3_2.json new file mode 100644 index 0000000..a9ccce4 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_2.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 429, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=429&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: EDAbp2++yHUkChK9yMCxFA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 8A0t5KkcbPowb9XTvlllqRw5lPk=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8\r\n\r\n", + "id": "13.3.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 60 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.982Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "51": 1, + "278": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343239266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 278, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_3_3.html b/autobahn/client/tungstenite_case_13_3_3.html new file mode 100644 index 0000000..35a5bcd --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_3.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.3.3 : Fail - 1 ms @ 2020-09-07T18:52:54.984Z

+

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+ +

+ Case Outcome

Case did not finish within 120 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=430&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: I668z4HPQ4KXBTLuvA6+uA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: fA89epZwTBDiksvuW73LpSjDaQ0=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
1471147
2781278
Total2425
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343330266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 120.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_3_3.json b/autobahn/client/tungstenite_case_13_3_3.json new file mode 100644 index 0000000..d1b554d --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_3.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 430, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=430&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: I668z4HPQ4KXBTLuvA6+uA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: fA89epZwTBDiksvuW73LpSjDaQ0=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8\r\n\r\n", + "id": "13.3.3", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 120 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.984Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "147": 1, + "278": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343330266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 278, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 120 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_3_4.html b/autobahn/client/tungstenite_case_13_3_4.html new file mode 100644 index 0000000..765eff5 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_4.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.3.4 : Fail - 1 ms @ 2020-09-07T18:52:54.985Z

+

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+ +

+ Case Outcome

Case did not finish within 240 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=431&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: VzcQwpH1J4NoZBIW9HEg2g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 8aIG2GU3b0UcAiVx1aNFt7sSziQ=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
1701170
2781278
Total2448
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343331266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 240.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_3_4.json b/autobahn/client/tungstenite_case_13_3_4.json new file mode 100644 index 0000000..431f608 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_4.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 431, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=431&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: VzcQwpH1J4NoZBIW9HEg2g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 8aIG2GU3b0UcAiVx1aNFt7sSziQ=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8\r\n\r\n", + "id": "13.3.4", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 240 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.985Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "170": 1, + "278": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343331266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 278, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 240 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_3_5.html b/autobahn/client/tungstenite_case_13_3_5.html new file mode 100644 index 0000000..e1290a7 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_5.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.3.5 : Fail - 1 ms @ 2020-09-07T18:52:54.987Z

+

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=432&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Wtmt56ZEIO0bb0QH/o1hdQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: OpJ/MIw3wcssTdfot997ggKnrO8=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
2781278
3061306
Total2584
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343332266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_3_5.json b/autobahn/client/tungstenite_case_13_3_5.json new file mode 100644 index 0000000..17cffa3 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_5.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 432, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=432&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Wtmt56ZEIO0bb0QH/o1hdQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: OpJ/MIw3wcssTdfot997ggKnrO8=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8\r\n\r\n", + "id": "13.3.5", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.987Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "278": 1, + "306": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343332266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 278, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_3_6.html b/autobahn/client/tungstenite_case_13_3_6.html new file mode 100644 index 0000000..f5de461 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_6.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.3.6 : Fail - 1 ms @ 2020-09-07T18:52:54.988Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=433&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: rYfQvNkSCEuCutzJhomufg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: UG8leKgbPhWftJsCWdX4tokmTTQ=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
2781278
4921492
Total2770
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343333266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_3_6.json b/autobahn/client/tungstenite_case_13_3_6.json new file mode 100644 index 0000000..02dc299 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_6.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 433, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=433&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: rYfQvNkSCEuCutzJhomufg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: UG8leKgbPhWftJsCWdX4tokmTTQ=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8\r\n\r\n", + "id": "13.3.6", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.988Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "278": 1, + "492": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343333266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 278, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_3_7.html b/autobahn/client/tungstenite_case_13_3_7.html new file mode 100644 index 0000000..a3b2883 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_7.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.3.7 : Fail - 2 ms @ 2020-09-07T18:52:54.990Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=434&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: GOA+3ETNY/BpO8wPs/W6Ow==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: YOD4PsypSjYZotB0D0a5c0qSMyM=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
2781278
8381838
Total21116
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343334266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_3_7.json b/autobahn/client/tungstenite_case_13_3_7.json new file mode 100644 index 0000000..716f1ff --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_7.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 434, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=434&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: GOA+3ETNY/BpO8wPs/W6Ow==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: YOD4PsypSjYZotB0D0a5c0qSMyM=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8\r\n\r\n", + "id": "13.3.7", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.990Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "278": 1, + "838": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343334266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 278, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_3_8.html b/autobahn/client/tungstenite_case_13_3_8.html new file mode 100644 index 0000000..af3e937 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_8.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.3.8 : Fail - 1 ms @ 2020-09-07T18:52:54.992Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=435&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ONj0Eymg4kLqP2Mt3B12sg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: QwEm9siib0Y0V+dJdxi/UFFR+Xc=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
2781278
147711477
Total21755
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343335266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_3_8.json b/autobahn/client/tungstenite_case_13_3_8.json new file mode 100644 index 0000000..abbca70 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_8.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 435, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=435&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ONj0Eymg4kLqP2Mt3B12sg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: QwEm9siib0Y0V+dJdxi/UFFR+Xc=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8\r\n\r\n", + "id": "13.3.8", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.992Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "278": 1, + "1477": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343335266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 278, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_3_9.html b/autobahn/client/tungstenite_case_13_3_9.html new file mode 100644 index 0000000..0bbacb9 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_9.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.3.9 : Fail - 2 ms @ 2020-09-07T18:52:54.995Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=436&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: oWKTJ/Zli6BF3aGfT5oTrg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 2oY/vMm03B/leRa03DY0qhg5OWU=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
2781278
292412924
Total23202
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343336266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_3_9.json b/autobahn/client/tungstenite_case_13_3_9.json new file mode 100644 index 0000000..0ddd9d4 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_3_9.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 436, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 8)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=436&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: oWKTJ/Zli6BF3aGfT5oTrg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 2oY/vMm03B/leRa03DY0qhg5OWU=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=8\r\n\r\n", + "id": "13.3.9", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:54.995Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "278": 1, + "2924": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343336266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 278, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_4_1.html b/autobahn/client/tungstenite_case_13_4_1.html new file mode 100644 index 0000000..4b5fe8c --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_1.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.4.1 : Fail - 1 ms @ 2020-09-07T18:52:55.031Z

+

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Case did not finish within 60 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=446&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: bjoCbDKvtFAaD3FsqARKDA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: f50hLKA4zai1DwRVHXs/cgGYEOk=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
20120
2791279
Total2299
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343436266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_4_1.json b/autobahn/client/tungstenite_case_13_4_1.json new file mode 100644 index 0000000..9003475 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_1.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 446, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=446&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: bjoCbDKvtFAaD3FsqARKDA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: f50hLKA4zai1DwRVHXs/cgGYEOk=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15\r\n\r\n", + "id": "13.4.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 60 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.031Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "20": 1, + "279": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343436266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 279, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_4_10.html b/autobahn/client/tungstenite_case_13_4_10.html new file mode 100644 index 0000000..342f942 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_10.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.4.10 : Fail - 2 ms @ 2020-09-07T18:52:55.046Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=455&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: DhsKc5dFMqrHhsghMTjiQQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 9EkcCuJwnqmkbTO3zsfDrZNkruY=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
2791279
570815708
Total25987
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343535266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_4_10.json b/autobahn/client/tungstenite_case_13_4_10.json new file mode 100644 index 0000000..b6ee324 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_10.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 455, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=455&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: DhsKc5dFMqrHhsghMTjiQQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 9EkcCuJwnqmkbTO3zsfDrZNkruY=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15\r\n\r\n", + "id": "13.4.10", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.046Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "279": 1, + "5708": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343535266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 279, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_4_11.html b/autobahn/client/tungstenite_case_13_4_11.html new file mode 100644 index 0000000..0c2d254 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_11.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.4.11 : Fail - 1 ms @ 2020-09-07T18:52:55.049Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=456&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 7ZAQ2T0l5F+Jk8xv8+nzWA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: BjD+0jGoTYoxv2zFhYJMt+hve4E=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
2361236
2601260
2791279
Total3775
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
01
11
Total2
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343536266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_4_11.json b/autobahn/client/tungstenite_case_13_4_11.json new file mode 100644 index 0000000..7518a48 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_11.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 456, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=456&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 7ZAQ2T0l5F+Jk8xv8+nzWA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: BjD+0jGoTYoxv2zFhYJMt+hve4E=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15\r\n\r\n", + "id": "13.4.11", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.049Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1 + }, + "txOctetStats": { + "236": 1, + "260": 1, + "279": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343536266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 279, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_4_12.html b/autobahn/client/tungstenite_case_13_4_12.html new file mode 100644 index 0000000..23d0a00 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_12.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.4.12 : Fail - 1 ms @ 2020-09-07T18:52:55.050Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=457&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: M6mTqoGn0TLZphz2t/UjJA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 9U1fsfJxwDEO9nphoZU+TvpfYAM=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
68168
2603780
2791279
Total51127
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
03
11
Total4
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343537266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_4_12.json b/autobahn/client/tungstenite_case_13_4_12.json new file mode 100644 index 0000000..65fc867 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_12.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 457, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=457&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: M6mTqoGn0TLZphz2t/UjJA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 9U1fsfJxwDEO9nphoZU+TvpfYAM=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15\r\n\r\n", + "id": "13.4.12", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.050Z", + "trafficStats": null, + "txFrameStats": { + "0": 3, + "1": 1 + }, + "txOctetStats": { + "68": 1, + "260": 3, + "279": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343537266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 279, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_4_13.html b/autobahn/client/tungstenite_case_13_4_13.html new file mode 100644 index 0000000..95a9e1b --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_13.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.4.13 : Fail - 1 ms @ 2020-09-07T18:52:55.052Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=458&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: B0lNuGFISPsPG3+xYqXWUw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: IU/Ok1nIA1yEN0UYU0CBKPi4DaA=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
1971197
26051300
2791279
Total71776
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
05
11
Total6
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343538266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_4_13.json b/autobahn/client/tungstenite_case_13_4_13.json new file mode 100644 index 0000000..7d16a9f --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_13.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 458, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=458&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: B0lNuGFISPsPG3+xYqXWUw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: IU/Ok1nIA1yEN0UYU0CBKPi4DaA=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15\r\n\r\n", + "id": "13.4.13", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.052Z", + "trafficStats": null, + "txFrameStats": { + "0": 5, + "1": 1 + }, + "txOctetStats": { + "197": 1, + "260": 5, + "279": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343538266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 279, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_4_14.html b/autobahn/client/tungstenite_case_13_4_14.html new file mode 100644 index 0000000..545560f --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_14.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.4.14 : Fail - 1 ms @ 2020-09-07T18:52:55.054Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=459&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: rCCFNgAISYICUCnWHOteww==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: SIN4ZSqXRiLakBa2+SoITj1oyz0=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
1061106
260112860
2791279
Total133245
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
011
11
Total12
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343539266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_4_14.json b/autobahn/client/tungstenite_case_13_4_14.json new file mode 100644 index 0000000..b8e1173 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_14.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 459, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=459&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: rCCFNgAISYICUCnWHOteww==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: SIN4ZSqXRiLakBa2+SoITj1oyz0=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15\r\n\r\n", + "id": "13.4.14", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.054Z", + "trafficStats": null, + "txFrameStats": { + "0": 11, + "1": 1 + }, + "txOctetStats": { + "106": 1, + "260": 11, + "279": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343539266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 279, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_4_15.html b/autobahn/client/tungstenite_case_13_4_15.html new file mode 100644 index 0000000..0bd3f3d --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_15.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.4.15 : Fail - 2 ms @ 2020-09-07T18:52:55.055Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=460&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ONvzQdOOsrdeioVmR1Ykmw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 0u+f0Bwh/xLD4v5uj91SzQnUyFY=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
74174
260225720
2791279
Total246073
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
022
11
Total23
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343630266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_4_15.json b/autobahn/client/tungstenite_case_13_4_15.json new file mode 100644 index 0000000..5951300 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_15.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 460, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=460&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ONvzQdOOsrdeioVmR1Ykmw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 0u+f0Bwh/xLD4v5uj91SzQnUyFY=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15\r\n\r\n", + "id": "13.4.15", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.055Z", + "trafficStats": null, + "txFrameStats": { + "0": 22, + "1": 1 + }, + "txOctetStats": { + "74": 1, + "260": 22, + "279": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343630266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 279, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_4_16.html b/autobahn/client/tungstenite_case_13_4_16.html new file mode 100644 index 0000000..ac8adec --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_16.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.4.16 : Fail - 2 ms @ 2020-09-07T18:52:55.058Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=461&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 7vA2qtFvGhLjKXtn8gLF7Q==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: bLusSSl4AB2Y+3jJuY68EsskP+w=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
2791279
5881588
102855140
Total76007
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
05
11
Total6
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343631266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_4_16.json b/autobahn/client/tungstenite_case_13_4_16.json new file mode 100644 index 0000000..11872f7 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_16.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 461, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=461&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 7vA2qtFvGhLjKXtn8gLF7Q==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: bLusSSl4AB2Y+3jJuY68EsskP+w=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15\r\n\r\n", + "id": "13.4.16", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.058Z", + "trafficStats": null, + "txFrameStats": { + "0": 5, + "1": 1 + }, + "txOctetStats": { + "279": 1, + "588": 1, + "1028": 5 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343631266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 279, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_4_17.html b/autobahn/client/tungstenite_case_13_4_17.html new file mode 100644 index 0000000..ad68a85 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_17.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.4.17 : Fail - 3 ms @ 2020-09-07T18:52:55.060Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=462&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: za16vHn2hZfjuOdsth2meg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Jrn4eoP8zKqKJIlu26X4Fg5GBzQ=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
2791279
161211612
410014100
Total35991
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
01
11
Total2
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343632266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_4_17.json b/autobahn/client/tungstenite_case_13_4_17.json new file mode 100644 index 0000000..171e44b --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_17.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 462, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]", + "droppedByMe": false, + "duration": 3, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=462&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: za16vHn2hZfjuOdsth2meg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Jrn4eoP8zKqKJIlu26X4Fg5GBzQ=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15\r\n\r\n", + "id": "13.4.17", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.060Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1 + }, + "txOctetStats": { + "279": 1, + "1612": 1, + "4100": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343632266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 279, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_4_18.html b/autobahn/client/tungstenite_case_13_4_18.html new file mode 100644 index 0000000..d1fface --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_18.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.4.18 : Fail - 2 ms @ 2020-09-07T18:52:55.065Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=463&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 0A5lrkwd+Q9fNgS7X6Umsg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: o68+yJ5/FUt0GjXF04d63uVykFI=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
2791279
570815708
Total25987
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343633266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_4_18.json b/autobahn/client/tungstenite_case_13_4_18.json new file mode 100644 index 0000000..bde6f3d --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_18.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 463, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=463&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 0A5lrkwd+Q9fNgS7X6Umsg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: o68+yJ5/FUt0GjXF04d63uVykFI=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15\r\n\r\n", + "id": "13.4.18", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.065Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "279": 1, + "5708": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343633266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 279, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_4_2.html b/autobahn/client/tungstenite_case_13_4_2.html new file mode 100644 index 0000000..8a9a996 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_2.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.4.2 : Fail - 1 ms @ 2020-09-07T18:52:55.033Z

+

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Case did not finish within 60 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=447&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: nyFS282Q5cW1xxGDzC+Cmw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: KeQIJbjvZulR7AMms6kSo0teMrw=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
51151
2791279
Total2330
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343437266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_4_2.json b/autobahn/client/tungstenite_case_13_4_2.json new file mode 100644 index 0000000..3f247c5 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_2.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 447, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=447&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: nyFS282Q5cW1xxGDzC+Cmw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: KeQIJbjvZulR7AMms6kSo0teMrw=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15\r\n\r\n", + "id": "13.4.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 60 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.033Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "51": 1, + "279": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343437266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 279, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_4_3.html b/autobahn/client/tungstenite_case_13_4_3.html new file mode 100644 index 0000000..06478fc --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_3.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.4.3 : Fail - 1 ms @ 2020-09-07T18:52:55.034Z

+

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+ +

+ Case Outcome

Case did not finish within 120 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=448&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: lUAy2SctkEJJdlW2Ti4JSA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: hIsDwZUHKV9lVcHudl+GZf35WeU=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
1471147
2791279
Total2426
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343438266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 120.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_4_3.json b/autobahn/client/tungstenite_case_13_4_3.json new file mode 100644 index 0000000..a8f6b0f --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_3.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 448, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=448&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: lUAy2SctkEJJdlW2Ti4JSA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: hIsDwZUHKV9lVcHudl+GZf35WeU=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15\r\n\r\n", + "id": "13.4.3", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 120 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.034Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "147": 1, + "279": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343438266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 279, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 120 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_4_4.html b/autobahn/client/tungstenite_case_13_4_4.html new file mode 100644 index 0000000..7a91499 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_4.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.4.4 : Fail - 1 ms @ 2020-09-07T18:52:55.035Z

+

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+ +

+ Case Outcome

Case did not finish within 240 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=449&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: O/AWe4HHK+aWiXDIXbfFPQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 0432AO+coTW56PtbIL9UILYfWAc=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
1701170
2791279
Total2449
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343439266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 240.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_4_4.json b/autobahn/client/tungstenite_case_13_4_4.json new file mode 100644 index 0000000..9f84fa8 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_4.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 449, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=449&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: O/AWe4HHK+aWiXDIXbfFPQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 0432AO+coTW56PtbIL9UILYfWAc=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15\r\n\r\n", + "id": "13.4.4", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 240 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.035Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "170": 1, + "279": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343439266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 279, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 240 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_4_5.html b/autobahn/client/tungstenite_case_13_4_5.html new file mode 100644 index 0000000..c38bfcb --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_5.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.4.5 : Fail - 1 ms @ 2020-09-07T18:52:55.036Z

+

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=450&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: qIh6YNlbPmYVVK5/hcjrRQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: RIZt6ENy8D7bX1SiD+hVc4FA8Bc=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
2791279
3061306
Total2585
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343530266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_4_5.json b/autobahn/client/tungstenite_case_13_4_5.json new file mode 100644 index 0000000..6ac9103 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_5.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 450, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=450&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: qIh6YNlbPmYVVK5/hcjrRQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: RIZt6ENy8D7bX1SiD+hVc4FA8Bc=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15\r\n\r\n", + "id": "13.4.5", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.036Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "279": 1, + "306": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343530266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 279, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_4_6.html b/autobahn/client/tungstenite_case_13_4_6.html new file mode 100644 index 0000000..4f4fe88 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_6.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.4.6 : Fail - 1 ms @ 2020-09-07T18:52:55.037Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=451&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: XPyjfKF85dCggXrw8ROxyA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Vn0n3Idjjzfl3vRSemzFWBEZsCU=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
2791279
4921492
Total2771
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343531266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_4_6.json b/autobahn/client/tungstenite_case_13_4_6.json new file mode 100644 index 0000000..193f1c4 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_6.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 451, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=451&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: XPyjfKF85dCggXrw8ROxyA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Vn0n3Idjjzfl3vRSemzFWBEZsCU=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15\r\n\r\n", + "id": "13.4.6", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.037Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "279": 1, + "492": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343531266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 279, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_4_7.html b/autobahn/client/tungstenite_case_13_4_7.html new file mode 100644 index 0000000..6824132 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_7.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.4.7 : Fail - 1 ms @ 2020-09-07T18:52:55.039Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=452&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: UYdOqMjh4xljFLN0wo0aog==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 3Np5o6GssXH+KvSHFi9h5AFkdLQ=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
2791279
8381838
Total21117
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343532266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_4_7.json b/autobahn/client/tungstenite_case_13_4_7.json new file mode 100644 index 0000000..bd1568d --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_7.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 452, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=452&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: UYdOqMjh4xljFLN0wo0aog==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 3Np5o6GssXH+KvSHFi9h5AFkdLQ=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15\r\n\r\n", + "id": "13.4.7", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.039Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "279": 1, + "838": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343532266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 279, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_4_8.html b/autobahn/client/tungstenite_case_13_4_8.html new file mode 100644 index 0000000..77308de --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_8.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.4.8 : Fail - 1 ms @ 2020-09-07T18:52:55.040Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=453&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: RRGaOF7z9ifVqNv9JNr/mg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: TWEB2UFssEPpUOFrNY2m1eF98fk=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
2791279
147711477
Total21756
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343533266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_4_8.json b/autobahn/client/tungstenite_case_13_4_8.json new file mode 100644 index 0000000..2599323 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_8.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 453, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=453&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: RRGaOF7z9ifVqNv9JNr/mg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: TWEB2UFssEPpUOFrNY2m1eF98fk=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15\r\n\r\n", + "id": "13.4.8", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.040Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "279": 1, + "1477": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343533266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 279, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_4_9.html b/autobahn/client/tungstenite_case_13_4_9.html new file mode 100644 index 0000000..4bc24a0 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_9.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.4.9 : Fail - 4 ms @ 2020-09-07T18:52:55.042Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=454&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: uKbXlHaigdlx3wjJs2bJBw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: UmFgwuYSBEz2f4Yyo2DGyRJ2N0Y=
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
2791279
292412924
Total23203
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343534266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_4_9.json b/autobahn/client/tungstenite_case_13_4_9.json new file mode 100644 index 0000000..7d8ac09 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_4_9.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 454, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(False, 15)]", + "droppedByMe": false, + "duration": 4, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=454&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: uKbXlHaigdlx3wjJs2bJBw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: UmFgwuYSBEz2f4Yyo2DGyRJ2N0Y=\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15\r\n\r\n", + "id": "13.4.9", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.042Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "279": 1, + "2924": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343534266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 279, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_5_1.html b/autobahn/client/tungstenite_case_13_5_1.html new file mode 100644 index 0000000..5bb4777 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_1.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.5.1 : Fail - 1 ms @ 2020-09-07T18:52:55.067Z

+

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Case did not finish within 60 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=464&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: swmBml817aK49iSvXxXd+w==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: UNGRjBr19Qe8DUzLoUjP5Bwjnz4=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
20120
3061306
Total2326
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343634266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_5_1.json b/autobahn/client/tungstenite_case_13_5_1.json new file mode 100644 index 0000000..c789854 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_1.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 464, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=464&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: swmBml817aK49iSvXxXd+w==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: UNGRjBr19Qe8DUzLoUjP5Bwjnz4=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.5.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 60 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.067Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "20": 1, + "306": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343634266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_5_10.html b/autobahn/client/tungstenite_case_13_5_10.html new file mode 100644 index 0000000..e198797 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_10.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.5.10 : Fail - 2 ms @ 2020-09-07T18:52:55.083Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=473&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: +xxLtHRuvZw+f/BvFNX7rQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: YRSMEuDthsc2DLFIfDUmlyr4viE=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
3061306
570815708
Total26014
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343733266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_5_10.json b/autobahn/client/tungstenite_case_13_5_10.json new file mode 100644 index 0000000..b6f4258 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_10.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 473, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=473&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: +xxLtHRuvZw+f/BvFNX7rQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: YRSMEuDthsc2DLFIfDUmlyr4viE=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.5.10", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.083Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "306": 1, + "5708": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343733266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_5_11.html b/autobahn/client/tungstenite_case_13_5_11.html new file mode 100644 index 0000000..e1c9501 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_11.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.5.11 : Fail - 1 ms @ 2020-09-07T18:52:55.085Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=474&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 7qmUYVSxV61KwcrJaADr9g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: BKoAXGIMl4S/fMWkXjmKAyYGTtU=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
2361236
2601260
3061306
Total3802
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
01
11
Total2
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343734266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_5_11.json b/autobahn/client/tungstenite_case_13_5_11.json new file mode 100644 index 0000000..e2cc796 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_11.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 474, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=474&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 7qmUYVSxV61KwcrJaADr9g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: BKoAXGIMl4S/fMWkXjmKAyYGTtU=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.5.11", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.085Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1 + }, + "txOctetStats": { + "236": 1, + "260": 1, + "306": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343734266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_5_12.html b/autobahn/client/tungstenite_case_13_5_12.html new file mode 100644 index 0000000..91c0bb3 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_12.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.5.12 : Fail - 1 ms @ 2020-09-07T18:52:55.086Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=475&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: oU9K0NpGWuRDxGeW+6HXkQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: f8uyxlfDJMu0YotFthaF3lDeNnM=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
68168
2603780
3061306
Total51154
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
03
11
Total4
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343735266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_5_12.json b/autobahn/client/tungstenite_case_13_5_12.json new file mode 100644 index 0000000..3848caf --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_12.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 475, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=475&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: oU9K0NpGWuRDxGeW+6HXkQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: f8uyxlfDJMu0YotFthaF3lDeNnM=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.5.12", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.086Z", + "trafficStats": null, + "txFrameStats": { + "0": 3, + "1": 1 + }, + "txOctetStats": { + "68": 1, + "260": 3, + "306": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343735266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_5_13.html b/autobahn/client/tungstenite_case_13_5_13.html new file mode 100644 index 0000000..5c8703d --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_13.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.5.13 : Fail - 1 ms @ 2020-09-07T18:52:55.088Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=476&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: HslNvA0rCOeIL+ssSH+EHQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 0GHNZooTaFLc6J0Su0hk/X+uryw=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
1971197
26051300
3061306
Total71803
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
05
11
Total6
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343736266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_5_13.json b/autobahn/client/tungstenite_case_13_5_13.json new file mode 100644 index 0000000..a264061 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_13.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 476, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=476&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: HslNvA0rCOeIL+ssSH+EHQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 0GHNZooTaFLc6J0Su0hk/X+uryw=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.5.13", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.088Z", + "trafficStats": null, + "txFrameStats": { + "0": 5, + "1": 1 + }, + "txOctetStats": { + "197": 1, + "260": 5, + "306": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343736266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_5_14.html b/autobahn/client/tungstenite_case_13_5_14.html new file mode 100644 index 0000000..037cc2c --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_14.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.5.14 : Fail - 2 ms @ 2020-09-07T18:52:55.089Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=477&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: LxgRoXQD8t+OqHvuOPx4UQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: rpA8MSuInDz6MRimEf9mA5txUtk=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
1061106
260112860
3061306
Total133272
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
011
11
Total12
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343737266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_5_14.json b/autobahn/client/tungstenite_case_13_5_14.json new file mode 100644 index 0000000..94e5264 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_14.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 477, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=477&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: LxgRoXQD8t+OqHvuOPx4UQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: rpA8MSuInDz6MRimEf9mA5txUtk=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.5.14", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.089Z", + "trafficStats": null, + "txFrameStats": { + "0": 11, + "1": 1 + }, + "txOctetStats": { + "106": 1, + "260": 11, + "306": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343737266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_5_15.html b/autobahn/client/tungstenite_case_13_5_15.html new file mode 100644 index 0000000..7960847 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_15.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.5.15 : Fail - 2 ms @ 2020-09-07T18:52:55.094Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=478&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: m/HaS5WcCeV99+4EUJ2cHQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: XCdblqos0V0Ljw9+2i9RYw2rHn4=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
74174
260225720
3061306
Total246100
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
022
11
Total23
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343738266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_5_15.json b/autobahn/client/tungstenite_case_13_5_15.json new file mode 100644 index 0000000..fbda74c --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_15.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 478, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=478&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: m/HaS5WcCeV99+4EUJ2cHQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: XCdblqos0V0Ljw9+2i9RYw2rHn4=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.5.15", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.094Z", + "trafficStats": null, + "txFrameStats": { + "0": 22, + "1": 1 + }, + "txOctetStats": { + "74": 1, + "260": 22, + "306": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343738266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_5_16.html b/autobahn/client/tungstenite_case_13_5_16.html new file mode 100644 index 0000000..74c66a5 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_16.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.5.16 : Fail - 3 ms @ 2020-09-07T18:52:55.097Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=479&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ZlsznoP4cH658Qm990Zqsg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: sfCE69Mnx0/7yygof/B/IO/slpY=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
3061306
5881588
102855140
Total76034
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
05
11
Total6
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343739266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_5_16.json b/autobahn/client/tungstenite_case_13_5_16.json new file mode 100644 index 0000000..2dfacae --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_16.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 479, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]", + "droppedByMe": false, + "duration": 3, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=479&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ZlsznoP4cH658Qm990Zqsg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: sfCE69Mnx0/7yygof/B/IO/slpY=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.5.16", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.097Z", + "trafficStats": null, + "txFrameStats": { + "0": 5, + "1": 1 + }, + "txOctetStats": { + "306": 1, + "588": 1, + "1028": 5 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343739266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_5_17.html b/autobahn/client/tungstenite_case_13_5_17.html new file mode 100644 index 0000000..e151c9c --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_17.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.5.17 : Fail - 2 ms @ 2020-09-07T18:52:55.102Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=480&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 6sb7Ghp3pNz83gWKrjpm/w==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: dtp45OJ2RbQh4CuW2+OIcpbQUyE=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
3061306
161211612
410014100
Total36018
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
01
11
Total2
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343830266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_5_17.json b/autobahn/client/tungstenite_case_13_5_17.json new file mode 100644 index 0000000..873fd1e --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_17.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 480, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=480&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 6sb7Ghp3pNz83gWKrjpm/w==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: dtp45OJ2RbQh4CuW2+OIcpbQUyE=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.5.17", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.102Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1 + }, + "txOctetStats": { + "306": 1, + "1612": 1, + "4100": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343830266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_5_18.html b/autobahn/client/tungstenite_case_13_5_18.html new file mode 100644 index 0000000..dcdbe00 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_18.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.5.18 : Fail - 2 ms @ 2020-09-07T18:52:55.104Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=481&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: D3xmz2XFxDTWNZfAsExaBQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Zc+46LSf/x2M73Dnlqb5AGNXURg=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
3061306
570815708
Total26014
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343831266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_5_18.json b/autobahn/client/tungstenite_case_13_5_18.json new file mode 100644 index 0000000..3ccbb9d --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_18.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 481, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=481&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: D3xmz2XFxDTWNZfAsExaBQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Zc+46LSf/x2M73Dnlqb5AGNXURg=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.5.18", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.104Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "306": 1, + "5708": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343831266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_5_2.html b/autobahn/client/tungstenite_case_13_5_2.html new file mode 100644 index 0000000..57ec3bc --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_2.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.5.2 : Fail - 1 ms @ 2020-09-07T18:52:55.068Z

+

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Case did not finish within 60 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=465&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: vEah7V4YkxVw+IR4zEXeww==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: iq993IiI6Jd8Bu5QO4ykku/twfo=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
51151
3061306
Total2357
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343635266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_5_2.json b/autobahn/client/tungstenite_case_13_5_2.json new file mode 100644 index 0000000..3a15a02 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_2.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 465, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=465&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: vEah7V4YkxVw+IR4zEXeww==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: iq993IiI6Jd8Bu5QO4ykku/twfo=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.5.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 60 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.068Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "51": 1, + "306": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343635266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_5_3.html b/autobahn/client/tungstenite_case_13_5_3.html new file mode 100644 index 0000000..5fa4c7b --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_3.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.5.3 : Fail - 1 ms @ 2020-09-07T18:52:55.070Z

+

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+ +

+ Case Outcome

Case did not finish within 120 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=466&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: sVjQKug0rZiDM8jiuk+s+Q==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: S9Q+XqamgbHimtvk7JPYmebpufc=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
1471147
3061306
Total2453
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343636266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 120.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_5_3.json b/autobahn/client/tungstenite_case_13_5_3.json new file mode 100644 index 0000000..4b87fc2 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_3.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 466, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=466&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: sVjQKug0rZiDM8jiuk+s+Q==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: S9Q+XqamgbHimtvk7JPYmebpufc=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.5.3", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 120 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.070Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "147": 1, + "306": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343636266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 120 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_5_4.html b/autobahn/client/tungstenite_case_13_5_4.html new file mode 100644 index 0000000..435895d --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_4.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.5.4 : Fail - 1 ms @ 2020-09-07T18:57:51.869Z

+

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+ +

+ Case Outcome

Case did not finish within 240 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=467&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ONebXbGQ45mStOnTixnrRw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: z9rFiAgmySF4Y3LW2SOjvcAc8XI=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
1701170
3061306
Total2476
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343637266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 240.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_5_4.json b/autobahn/client/tungstenite_case_13_5_4.json new file mode 100644 index 0000000..5ccc5d4 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_4.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 467, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=467&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ONebXbGQ45mStOnTixnrRw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: z9rFiAgmySF4Y3LW2SOjvcAc8XI=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.5.4", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 240 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:57:51.869Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "170": 1, + "306": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343637266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 240 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_5_5.html b/autobahn/client/tungstenite_case_13_5_5.html new file mode 100644 index 0000000..24cc411 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_5.html @@ -0,0 +1,287 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.5.5 : Fail - 1 ms @ 2020-09-07T18:52:55.073Z

+

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=468&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: QBUhySiU6rUOpse5Uld77A==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: +w1Yi+SFEhxnF/fCW5F3AudD2p0=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + +
Chop SizeCountOctets
3062612
Total2612
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343638266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_5_5.json b/autobahn/client/tungstenite_case_13_5_5.json new file mode 100644 index 0000000..38353d1 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_5.json @@ -0,0 +1,77 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 468, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=468&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: QBUhySiU6rUOpse5Uld77A==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: +w1Yi+SFEhxnF/fCW5F3AudD2p0=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.5.5", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.073Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "306": 2 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343638266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_5_6.html b/autobahn/client/tungstenite_case_13_5_6.html new file mode 100644 index 0000000..9aa04d3 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_6.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.5.6 : Fail - 1 ms @ 2020-09-07T18:52:55.074Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=469&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: CvPt7S3Jb2szJ8KyhTdxQw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: MW30Cao0UEaSLMZ7wWQN6AlFIuo=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
3061306
4921492
Total2798
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343639266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_5_6.json b/autobahn/client/tungstenite_case_13_5_6.json new file mode 100644 index 0000000..b24a7d0 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_6.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 469, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=469&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: CvPt7S3Jb2szJ8KyhTdxQw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: MW30Cao0UEaSLMZ7wWQN6AlFIuo=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.5.6", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.074Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "306": 1, + "492": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343639266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_5_7.html b/autobahn/client/tungstenite_case_13_5_7.html new file mode 100644 index 0000000..6a49f6c --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_7.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.5.7 : Fail - 1 ms @ 2020-09-07T18:52:55.075Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=470&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 4ppKsxx1HnldYcHnbfxlsQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: EOYlyhgkezyH5JYb+XXcnJerCz8=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
3061306
8381838
Total21144
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343730266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_5_7.json b/autobahn/client/tungstenite_case_13_5_7.json new file mode 100644 index 0000000..9d8080d --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_7.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 470, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=470&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 4ppKsxx1HnldYcHnbfxlsQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: EOYlyhgkezyH5JYb+XXcnJerCz8=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.5.7", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.075Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "306": 1, + "838": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343730266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_5_8.html b/autobahn/client/tungstenite_case_13_5_8.html new file mode 100644 index 0000000..1319fe6 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_8.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.5.8 : Fail - 3 ms @ 2020-09-07T18:52:55.077Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=471&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: KV5bWcqwzvHNHRxFMTIbzg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: HP0RvsllBCGd2AybaRRFEkfBZRA=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
3061306
147711477
Total21783
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343731266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_5_8.json b/autobahn/client/tungstenite_case_13_5_8.json new file mode 100644 index 0000000..11f0cf5 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_8.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 471, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]", + "droppedByMe": false, + "duration": 3, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=471&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: KV5bWcqwzvHNHRxFMTIbzg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: HP0RvsllBCGd2AybaRRFEkfBZRA=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.5.8", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.077Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "306": 1, + "1477": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343731266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_5_9.html b/autobahn/client/tungstenite_case_13_5_9.html new file mode 100644 index 0000000..d0de835 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_9.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.5.9 : Fail - 1 ms @ 2020-09-07T18:52:55.081Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=472&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 4Vy1vAm0jvFVmmW9CNuFkg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: tZ3Dj6gTs1Skmz9pipCZnq78sa0=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
3061306
292412924
Total23230
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343732266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_5_9.json b/autobahn/client/tungstenite_case_13_5_9.json new file mode 100644 index 0000000..9af3a1e --- /dev/null +++ b/autobahn/client/tungstenite_case_13_5_9.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 472, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=472&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 4Vy1vAm0jvFVmmW9CNuFkg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: tZ3Dj6gTs1Skmz9pipCZnq78sa0=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.5.9", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.081Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "306": 1, + "2924": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343732266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_6_1.html b/autobahn/client/tungstenite_case_13_6_1.html new file mode 100644 index 0000000..2ec8aa0 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_1.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.6.1 : Fail - 1 ms @ 2020-09-07T18:52:55.106Z

+

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Case did not finish within 60 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=482&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Qmf+VviIGx+4gNwtXUDOeQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: PaQaAKrIBqQfTzBN+4i5qlCaoow=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
20120
3071307
Total2327
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343832266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_6_1.json b/autobahn/client/tungstenite_case_13_6_1.json new file mode 100644 index 0000000..5f312a0 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_1.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 482, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=482&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Qmf+VviIGx+4gNwtXUDOeQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: PaQaAKrIBqQfTzBN+4i5qlCaoow=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15\r\n\r\n", + "id": "13.6.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 60 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.106Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "20": 1, + "307": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343832266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 307, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_6_10.html b/autobahn/client/tungstenite_case_13_6_10.html new file mode 100644 index 0000000..b8add7b --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_10.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.6.10 : Fail - 2 ms @ 2020-09-07T18:52:55.117Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=491&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: SYRQgw4lMPDaNSLxyqJudA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: A0SDt/Kr/ldLC6+c6SvFxrj4OPE=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
3071307
570815708
Total26015
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343931266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_6_10.json b/autobahn/client/tungstenite_case_13_6_10.json new file mode 100644 index 0000000..9998170 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_10.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 491, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=491&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: SYRQgw4lMPDaNSLxyqJudA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: A0SDt/Kr/ldLC6+c6SvFxrj4OPE=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15\r\n\r\n", + "id": "13.6.10", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.117Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "307": 1, + "5708": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343931266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 307, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_6_11.html b/autobahn/client/tungstenite_case_13_6_11.html new file mode 100644 index 0000000..0ccd9c9 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_11.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.6.11 : Fail - 1 ms @ 2020-09-07T18:52:55.119Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=492&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Na1OlF1b7EIn6g03fve7tQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: pmq1yII17xdlZMpUmsaU337gIvo=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
2361236
2601260
3071307
Total3803
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
01
11
Total2
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343932266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_6_11.json b/autobahn/client/tungstenite_case_13_6_11.json new file mode 100644 index 0000000..031d9d3 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_11.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 492, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=492&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Na1OlF1b7EIn6g03fve7tQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: pmq1yII17xdlZMpUmsaU337gIvo=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15\r\n\r\n", + "id": "13.6.11", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.119Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1 + }, + "txOctetStats": { + "236": 1, + "260": 1, + "307": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343932266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 307, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_6_12.html b/autobahn/client/tungstenite_case_13_6_12.html new file mode 100644 index 0000000..049e109 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_12.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.6.12 : Fail - 1 ms @ 2020-09-07T18:52:55.120Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=493&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: pF9DNOKIUp/kWRDdkLNuEA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 7/cUPCiLAof8gQQ1YqmYRDXQQus=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
68168
2603780
3071307
Total51155
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
03
11
Total4
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343933266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_6_12.json b/autobahn/client/tungstenite_case_13_6_12.json new file mode 100644 index 0000000..902f534 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_12.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 493, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=493&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: pF9DNOKIUp/kWRDdkLNuEA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 7/cUPCiLAof8gQQ1YqmYRDXQQus=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15\r\n\r\n", + "id": "13.6.12", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.120Z", + "trafficStats": null, + "txFrameStats": { + "0": 3, + "1": 1 + }, + "txOctetStats": { + "68": 1, + "260": 3, + "307": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343933266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 307, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_6_13.html b/autobahn/client/tungstenite_case_13_6_13.html new file mode 100644 index 0000000..aa75dad --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_13.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.6.13 : Fail - 1 ms @ 2020-09-07T18:52:55.121Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=494&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: l52dGVxvqIGo1WV6f1U6rA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: fd7MHr922vXsgL3qBz4x4F3etOQ=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
1971197
26051300
3071307
Total71804
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
05
11
Total6
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343934266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_6_13.json b/autobahn/client/tungstenite_case_13_6_13.json new file mode 100644 index 0000000..5281a98 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_13.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 494, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=494&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: l52dGVxvqIGo1WV6f1U6rA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: fd7MHr922vXsgL3qBz4x4F3etOQ=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15\r\n\r\n", + "id": "13.6.13", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.121Z", + "trafficStats": null, + "txFrameStats": { + "0": 5, + "1": 1 + }, + "txOctetStats": { + "197": 1, + "260": 5, + "307": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343934266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 307, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_6_14.html b/autobahn/client/tungstenite_case_13_6_14.html new file mode 100644 index 0000000..bd0b71b --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_14.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.6.14 : Fail - 1 ms @ 2020-09-07T18:52:55.123Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=495&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: mkRDtfnP5l8/LQKnCMmGBw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: DF44hll5OVuwIMRTwOHnt92/y9g=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
1061106
260112860
3071307
Total133273
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
011
11
Total12
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343935266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_6_14.json b/autobahn/client/tungstenite_case_13_6_14.json new file mode 100644 index 0000000..ac427db --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_14.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 495, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=495&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: mkRDtfnP5l8/LQKnCMmGBw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: DF44hll5OVuwIMRTwOHnt92/y9g=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15\r\n\r\n", + "id": "13.6.14", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.123Z", + "trafficStats": null, + "txFrameStats": { + "0": 11, + "1": 1 + }, + "txOctetStats": { + "106": 1, + "260": 11, + "307": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343935266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 307, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_6_15.html b/autobahn/client/tungstenite_case_13_6_15.html new file mode 100644 index 0000000..55eb802 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_15.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.6.15 : Fail - 2 ms @ 2020-09-07T18:52:55.124Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=496&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: F5h5nAvy009eS1GvL3N80Q==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: w0pDYh0kmGGf7ZABrQY2HSVxl+4=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
74174
260225720
3071307
Total246101
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
022
11
Total23
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343936266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_6_15.json b/autobahn/client/tungstenite_case_13_6_15.json new file mode 100644 index 0000000..eb0b8cd --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_15.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 496, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=496&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: F5h5nAvy009eS1GvL3N80Q==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: w0pDYh0kmGGf7ZABrQY2HSVxl+4=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15\r\n\r\n", + "id": "13.6.15", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.124Z", + "trafficStats": null, + "txFrameStats": { + "0": 22, + "1": 1 + }, + "txOctetStats": { + "74": 1, + "260": 22, + "307": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343936266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 307, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_6_16.html b/autobahn/client/tungstenite_case_13_6_16.html new file mode 100644 index 0000000..9816ced --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_16.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.6.16 : Fail - 2 ms @ 2020-09-07T18:52:55.126Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=497&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: mq2+SPUDkmZrfRDrtsLUYw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 7Q0kjkZfB186JXvZcBgyKptxaSI=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
3071307
5881588
102855140
Total76035
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
05
11
Total6
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343937266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_6_16.json b/autobahn/client/tungstenite_case_13_6_16.json new file mode 100644 index 0000000..ed5edb8 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_16.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 497, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=497&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: mq2+SPUDkmZrfRDrtsLUYw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 7Q0kjkZfB186JXvZcBgyKptxaSI=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15\r\n\r\n", + "id": "13.6.16", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.126Z", + "trafficStats": null, + "txFrameStats": { + "0": 5, + "1": 1 + }, + "txOctetStats": { + "307": 1, + "588": 1, + "1028": 5 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343937266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 307, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_6_17.html b/autobahn/client/tungstenite_case_13_6_17.html new file mode 100644 index 0000000..68925d8 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_17.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.6.17 : Fail - 2 ms @ 2020-09-07T18:52:55.129Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=498&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 74Rkd1BPPfjKgUx/CJlsNw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 8HB6niwAWdubx2aiLsToI41q6LY=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
3071307
161211612
410014100
Total36019
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
01
11
Total2
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343938266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_6_17.json b/autobahn/client/tungstenite_case_13_6_17.json new file mode 100644 index 0000000..afb9cd6 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_17.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 498, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=498&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 74Rkd1BPPfjKgUx/CJlsNw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 8HB6niwAWdubx2aiLsToI41q6LY=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15\r\n\r\n", + "id": "13.6.17", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.129Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1 + }, + "txOctetStats": { + "307": 1, + "1612": 1, + "4100": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343938266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 307, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_6_18.html b/autobahn/client/tungstenite_case_13_6_18.html new file mode 100644 index 0000000..6680d25 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_18.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.6.18 : Fail - 2 ms @ 2020-09-07T18:52:55.132Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=499&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Hl+jd9s6fHqYHU7+EcwJcg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: uWw3gAQj4WKIrDrKUHTK9HXCSZE=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
3071307
570815708
Total26015
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343939266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_6_18.json b/autobahn/client/tungstenite_case_13_6_18.json new file mode 100644 index 0000000..1c95a1f --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_18.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 499, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=499&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Hl+jd9s6fHqYHU7+EcwJcg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: uWw3gAQj4WKIrDrKUHTK9HXCSZE=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15\r\n\r\n", + "id": "13.6.18", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.132Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "307": 1, + "5708": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343939266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 307, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_6_2.html b/autobahn/client/tungstenite_case_13_6_2.html new file mode 100644 index 0000000..9a6fbea --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_2.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.6.2 : Fail - 1 ms @ 2020-09-07T18:52:55.107Z

+

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Case did not finish within 60 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=483&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: +qm8/01/WTux62U8xtreWA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: zL9f+uC1jHma3HTzuEIbG4YUsDE=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
51151
3071307
Total2358
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343833266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_6_2.json b/autobahn/client/tungstenite_case_13_6_2.json new file mode 100644 index 0000000..c44ad4f --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_2.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 483, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=483&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: +qm8/01/WTux62U8xtreWA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: zL9f+uC1jHma3HTzuEIbG4YUsDE=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15\r\n\r\n", + "id": "13.6.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 60 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.107Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "51": 1, + "307": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343833266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 307, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_6_3.html b/autobahn/client/tungstenite_case_13_6_3.html new file mode 100644 index 0000000..7494248 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_3.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.6.3 : Fail - 1 ms @ 2020-09-07T18:52:55.108Z

+

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+ +

+ Case Outcome

Case did not finish within 120 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=484&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ixhzg/IdjIacEftk88azTg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: rRY9rxJepmKde+46sd+CThyC3l0=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
1471147
3071307
Total2454
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343834266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 120.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_6_3.json b/autobahn/client/tungstenite_case_13_6_3.json new file mode 100644 index 0000000..096f9ba --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_3.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 484, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=484&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ixhzg/IdjIacEftk88azTg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: rRY9rxJepmKde+46sd+CThyC3l0=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15\r\n\r\n", + "id": "13.6.3", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 120 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.108Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "147": 1, + "307": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343834266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 307, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 120 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_6_4.html b/autobahn/client/tungstenite_case_13_6_4.html new file mode 100644 index 0000000..d5622a1 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_4.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.6.4 : Fail - 1 ms @ 2020-09-07T18:52:55.109Z

+

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+ +

+ Case Outcome

Case did not finish within 240 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=485&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: TzlH5+XdLnGhjcp8EPntyw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: bJnLvOBrHJp0+F5CBfDWvAXOxMw=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
1701170
3071307
Total2477
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343835266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 240.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_6_4.json b/autobahn/client/tungstenite_case_13_6_4.json new file mode 100644 index 0000000..3f3f660 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_4.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 485, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=485&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: TzlH5+XdLnGhjcp8EPntyw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: bJnLvOBrHJp0+F5CBfDWvAXOxMw=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15\r\n\r\n", + "id": "13.6.4", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 240 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.109Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "170": 1, + "307": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343835266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 307, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 240 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_6_5.html b/autobahn/client/tungstenite_case_13_6_5.html new file mode 100644 index 0000000..819640b --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_5.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.6.5 : Fail - 1 ms @ 2020-09-07T18:52:55.110Z

+

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=486&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: WHi7EHxlp+Bnlrg1ejCDLg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: mCa3EdCtf8hmxT3Q7//Ivsd2lk4=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
3061306
3071307
Total2613
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343836266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_6_5.json b/autobahn/client/tungstenite_case_13_6_5.json new file mode 100644 index 0000000..6f2a934 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_5.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 486, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=486&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: WHi7EHxlp+Bnlrg1ejCDLg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: mCa3EdCtf8hmxT3Q7//Ivsd2lk4=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15\r\n\r\n", + "id": "13.6.5", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.110Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "306": 1, + "307": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343836266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 307, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_6_6.html b/autobahn/client/tungstenite_case_13_6_6.html new file mode 100644 index 0000000..e49e6ff --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_6.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.6.6 : Fail - 1 ms @ 2020-09-07T18:52:55.112Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=487&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Vqs1MlpYlf78kHQ2JQAe9Q==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: YGYwi2Tkj5a/7uIu1acCEORutWQ=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
3071307
4921492
Total2799
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343837266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_6_6.json b/autobahn/client/tungstenite_case_13_6_6.json new file mode 100644 index 0000000..0169bfb --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_6.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 487, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=487&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Vqs1MlpYlf78kHQ2JQAe9Q==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: YGYwi2Tkj5a/7uIu1acCEORutWQ=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15\r\n\r\n", + "id": "13.6.6", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.112Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "307": 1, + "492": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343837266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 307, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_6_7.html b/autobahn/client/tungstenite_case_13_6_7.html new file mode 100644 index 0000000..d5eb6c8 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_7.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.6.7 : Fail - 1 ms @ 2020-09-07T18:52:55.113Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=488&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: TmPXYWEW5gyZ/vUhHOASdA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: W4DhRUYfLNUC6dGAngKgmmBiyeI=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
3071307
8381838
Total21145
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343838266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_6_7.json b/autobahn/client/tungstenite_case_13_6_7.json new file mode 100644 index 0000000..783d05c --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_7.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 488, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=488&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: TmPXYWEW5gyZ/vUhHOASdA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: W4DhRUYfLNUC6dGAngKgmmBiyeI=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15\r\n\r\n", + "id": "13.6.7", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.113Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "307": 1, + "838": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343838266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 307, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_6_8.html b/autobahn/client/tungstenite_case_13_6_8.html new file mode 100644 index 0000000..c12ac95 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_8.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.6.8 : Fail - 1 ms @ 2020-09-07T18:52:55.114Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=489&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: RWB0xyjINISf1sWZwmikbg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: nQ6QnmLnkPloZ/MmQzf974SVCvY=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
3071307
147711477
Total21784
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343839266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_6_8.json b/autobahn/client/tungstenite_case_13_6_8.json new file mode 100644 index 0000000..4eea8a4 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_8.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 489, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=489&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: RWB0xyjINISf1sWZwmikbg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: nQ6QnmLnkPloZ/MmQzf974SVCvY=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15\r\n\r\n", + "id": "13.6.8", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.114Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "307": 1, + "1477": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343839266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 307, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_6_9.html b/autobahn/client/tungstenite_case_13_6_9.html new file mode 100644 index 0000000..94fb06a --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_9.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.6.9 : Fail - 1 ms @ 2020-09-07T18:52:55.115Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=490&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: sEi2FijLt1HnoQUA2MwfDA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: tgQ7hAo54Ikd1Jwjz93L7be4i1U=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
3071307
292412924
Total23231
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d343930266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_6_9.json b/autobahn/client/tungstenite_case_13_6_9.json new file mode 100644 index 0000000..1c699dd --- /dev/null +++ b/autobahn/client/tungstenite_case_13_6_9.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 490, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 15)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=490&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: sEi2FijLt1HnoQUA2MwfDA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: tgQ7hAo54Ikd1Jwjz93L7be4i1U=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=15\r\n\r\n", + "id": "13.6.9", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.115Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "307": 1, + "2924": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d343930266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 307, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_7_1.html b/autobahn/client/tungstenite_case_13_7_1.html new file mode 100644 index 0000000..17eacbf --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_1.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.7.1 : Fail - 1 ms @ 2020-09-07T18:52:55.134Z

+

Case Description

Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Case did not finish within 60 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=500&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: UWOyYK179PCTc1N3HQqlfA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: AbKBeXHnxRWy6Bz+vWRprfgTiBU=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
20120
3061306
Total2326
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d353030266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_7_1.json b/autobahn/client/tungstenite_case_13_7_1.json new file mode 100644 index 0000000..18806d3 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_1.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 500, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 16, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=500&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: UWOyYK179PCTc1N3HQqlfA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: AbKBeXHnxRWy6Bz+vWRprfgTiBU=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.7.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 60 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.134Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "20": 1, + "306": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d353030266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_7_10.html b/autobahn/client/tungstenite_case_13_7_10.html new file mode 100644 index 0000000..5c42c2a --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_10.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.7.10 : Fail - 2 ms @ 2020-09-07T18:52:55.146Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=509&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Cw3cNBkn2UkUQCJtqEVwGw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 92XkyVQi5dXUNdPbPF+qVTBsaH4=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
3061306
570815708
Total26014
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d353039266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_7_10.json b/autobahn/client/tungstenite_case_13_7_10.json new file mode 100644 index 0000000..4452dec --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_10.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 509, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=509&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Cw3cNBkn2UkUQCJtqEVwGw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 92XkyVQi5dXUNdPbPF+qVTBsaH4=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.7.10", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.146Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "306": 1, + "5708": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d353039266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_7_11.html b/autobahn/client/tungstenite_case_13_7_11.html new file mode 100644 index 0000000..84fb264 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_11.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.7.11 : Fail - 1 ms @ 2020-09-07T18:52:55.148Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=510&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: pVwnij0uxG1PlLjrHjKvug==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: KOhqKQLVlf82Ab5nfhi/3A0tWps=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
2361236
2601260
3061306
Total3802
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
01
11
Total2
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d353130266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_7_11.json b/autobahn/client/tungstenite_case_13_7_11.json new file mode 100644 index 0000000..41927e6 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_11.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 510, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=510&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: pVwnij0uxG1PlLjrHjKvug==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: KOhqKQLVlf82Ab5nfhi/3A0tWps=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.7.11", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.148Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1 + }, + "txOctetStats": { + "236": 1, + "260": 1, + "306": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d353130266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_7_12.html b/autobahn/client/tungstenite_case_13_7_12.html new file mode 100644 index 0000000..5668832 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_12.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.7.12 : Fail - 1 ms @ 2020-09-07T18:52:55.149Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=511&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 7Oe4aBOfhqcoTc5bpKvFfQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: yxeHiIQpT5cUfVHB4GfV65PJCDw=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
68168
2603780
3061306
Total51154
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
03
11
Total4
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d353131266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_7_12.json b/autobahn/client/tungstenite_case_13_7_12.json new file mode 100644 index 0000000..9b91117 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_12.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 511, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=511&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 7Oe4aBOfhqcoTc5bpKvFfQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: yxeHiIQpT5cUfVHB4GfV65PJCDw=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.7.12", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.149Z", + "trafficStats": null, + "txFrameStats": { + "0": 3, + "1": 1 + }, + "txOctetStats": { + "68": 1, + "260": 3, + "306": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d353131266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_7_13.html b/autobahn/client/tungstenite_case_13_7_13.html new file mode 100644 index 0000000..65b8b14 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_13.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.7.13 : Fail - 1 ms @ 2020-09-07T18:52:55.151Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=512&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: pOThq+ZsIf/phHap4/JHMw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: ooRJF118G4phr4OrkBKwQyvJlD0=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
1971197
26051300
3061306
Total71803
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
05
11
Total6
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d353132266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_7_13.json b/autobahn/client/tungstenite_case_13_7_13.json new file mode 100644 index 0000000..86bc9ae --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_13.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 512, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=512&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: pOThq+ZsIf/phHap4/JHMw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: ooRJF118G4phr4OrkBKwQyvJlD0=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.7.13", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.151Z", + "trafficStats": null, + "txFrameStats": { + "0": 5, + "1": 1 + }, + "txOctetStats": { + "197": 1, + "260": 5, + "306": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d353132266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_7_14.html b/autobahn/client/tungstenite_case_13_7_14.html new file mode 100644 index 0000000..0cff6da --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_14.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.7.14 : Fail - 1 ms @ 2020-09-07T18:52:55.153Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=513&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: cPNGmjOakAtY45I1CN/YsQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: GmW51nUsVA217G1Yk/To/oYRI10=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
1061106
260112860
3061306
Total133272
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
011
11
Total12
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d353133266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_7_14.json b/autobahn/client/tungstenite_case_13_7_14.json new file mode 100644 index 0000000..458d511 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_14.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 513, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=513&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: cPNGmjOakAtY45I1CN/YsQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: GmW51nUsVA217G1Yk/To/oYRI10=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.7.14", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.153Z", + "trafficStats": null, + "txFrameStats": { + "0": 11, + "1": 1 + }, + "txOctetStats": { + "106": 1, + "260": 11, + "306": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d353133266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_7_15.html b/autobahn/client/tungstenite_case_13_7_15.html new file mode 100644 index 0000000..f7a97b9 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_15.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.7.15 : Fail - 2 ms @ 2020-09-07T18:52:55.155Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=514&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 3Ev2yw809C43ufTrqKaKmA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: zEHxhZd/N7ws6qyWHIzmBxjQz4s=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
74174
260225720
3061306
Total246100
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
022
11
Total23
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d353134266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_7_15.json b/autobahn/client/tungstenite_case_13_7_15.json new file mode 100644 index 0000000..07b22b2 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_15.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 514, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 256 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=514&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 3Ev2yw809C43ufTrqKaKmA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: zEHxhZd/N7ws6qyWHIzmBxjQz4s=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.7.15", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.155Z", + "trafficStats": null, + "txFrameStats": { + "0": 22, + "1": 1 + }, + "txOctetStats": { + "74": 1, + "260": 22, + "306": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d353134266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_7_16.html b/autobahn/client/tungstenite_case_13_7_16.html new file mode 100644 index 0000000..1a409fe --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_16.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.7.16 : Fail - 2 ms @ 2020-09-07T18:52:55.157Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=515&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: RRVHZLLDIzwF+vO0ofwqGg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: hBiVGdgxsWJCD7lfeFNTSOt4bV0=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
3061306
5881588
102855140
Total76034
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
05
11
Total6
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d353135266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_7_16.json b/autobahn/client/tungstenite_case_13_7_16.json new file mode 100644 index 0000000..fad469e --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_16.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 515, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 1024 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=515&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: RRVHZLLDIzwF+vO0ofwqGg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: hBiVGdgxsWJCD7lfeFNTSOt4bV0=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.7.16", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.157Z", + "trafficStats": null, + "txFrameStats": { + "0": 5, + "1": 1 + }, + "txOctetStats": { + "306": 1, + "588": 1, + "1028": 5 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d353135266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_7_17.html b/autobahn/client/tungstenite_case_13_7_17.html new file mode 100644 index 0000000..cee8da8 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_17.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.7.17 : Fail - 2 ms @ 2020-09-07T18:52:55.160Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=516&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: U5MfQuhycgEFK1K5vqxuZA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 6qVJ3gUcZPPuohcj2U1t8bvgqO0=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
3061306
161211612
410014100
Total36018
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
01
11
Total2
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d353136266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_7_17.json b/autobahn/client/tungstenite_case_13_7_17.json new file mode 100644 index 0000000..db6c51b --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_17.json @@ -0,0 +1,80 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 516, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 4096 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=516&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: U5MfQuhycgEFK1K5vqxuZA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 6qVJ3gUcZPPuohcj2U1t8bvgqO0=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.7.17", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.160Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1 + }, + "txOctetStats": { + "306": 1, + "1612": 1, + "4100": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d353136266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_7_18.html b/autobahn/client/tungstenite_case_13_7_18.html new file mode 100644 index 0000000..6c6fd39 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_18.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.7.18 : Fail - 2 ms @ 2020-09-07T18:52:55.162Z

+

Case Description

Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=517&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 55VZKZ5NfbRUQKypgA7i2Q==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: cRhlAZ+hHhXZbur5D0D7ibUpRwI=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
3061306
570815708
Total26014
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d353137266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_7_18.json b/autobahn/client/tungstenite_case_13_7_18.json new file mode 100644 index 0000000..d4e8ec5 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_18.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 517, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 131072, auto-fragment to 32768 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=517&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 55VZKZ5NfbRUQKypgA7i2Q==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: cRhlAZ+hHhXZbur5D0D7ibUpRwI=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.7.18", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.162Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "306": 1, + "5708": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d353137266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_7_2.html b/autobahn/client/tungstenite_case_13_7_2.html new file mode 100644 index 0000000..d047331 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_2.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.7.2 : Fail - 1 ms @ 2020-09-07T18:52:55.135Z

+

Case Description

Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Case did not finish within 60 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=501&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 6osEV8ZWuQHBjPY1LKiaHg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: d7S91LcBoEVVtWb5xNcn61w0aCg=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
51151
3061306
Total2357
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d353031266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_7_2.json b/autobahn/client/tungstenite_case_13_7_2.json new file mode 100644 index 0000000..2932b08 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_2.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 501, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 64, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=501&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 6osEV8ZWuQHBjPY1LKiaHg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: d7S91LcBoEVVtWb5xNcn61w0aCg=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.7.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 60 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.135Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "51": 1, + "306": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d353031266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_7_3.html b/autobahn/client/tungstenite_case_13_7_3.html new file mode 100644 index 0000000..988b8ec --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_3.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.7.3 : Fail - 1 ms @ 2020-09-07T18:52:55.136Z

+

Case Description

Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.

+ +

+ Case Outcome

Case did not finish within 120 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=502&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ebPmQ0NpKHPiqmLVmXbUHQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: eitpuoXdeJY8purzEQ5VeehYIUQ=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
1471147
3061306
Total2453
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d353032266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 120.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_7_3.json b/autobahn/client/tungstenite_case_13_7_3.json new file mode 100644 index 0000000..21d9974 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_3.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 502, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 256, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 120 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=502&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ebPmQ0NpKHPiqmLVmXbUHQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: eitpuoXdeJY8purzEQ5VeehYIUQ=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.7.3", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 120 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.136Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "147": 1, + "306": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d353032266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 120 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_7_4.html b/autobahn/client/tungstenite_case_13_7_4.html new file mode 100644 index 0000000..d8dc32a --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_4.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.7.4 : Fail - 1 ms @ 2020-09-07T18:52:55.137Z

+

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+ +

+ Case Outcome

Case did not finish within 240 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=503&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: gJ1JpLyGjMg0qYJ33XKhPw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: nkBJpEUcsc6Q+7c1ddgz3/nrZ0I=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
1701170
3061306
Total2476
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d353033266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 240.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_7_4.json b/autobahn/client/tungstenite_case_13_7_4.json new file mode 100644 index 0000000..2daf1e9 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_4.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 503, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=503&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: gJ1JpLyGjMg0qYJ33XKhPw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: nkBJpEUcsc6Q+7c1ddgz3/nrZ0I=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.7.4", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 240 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.137Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "170": 1, + "306": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d353033266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 240 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_7_5.html b/autobahn/client/tungstenite_case_13_7_5.html new file mode 100644 index 0000000..d8b029f --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_5.html @@ -0,0 +1,287 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.7.5 : Fail - 1 ms @ 2020-09-07T18:52:55.138Z

+

Case Description

Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=504&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: K/3NKaBlxu7v9kgk2LYBgw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: JSPvmd1G5iYDzXP+wfG/3wB2+1s=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + +
Chop SizeCountOctets
3062612
Total2612
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d353034266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_7_5.json b/autobahn/client/tungstenite_case_13_7_5.json new file mode 100644 index 0000000..dc6bdbe --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_5.json @@ -0,0 +1,77 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 504, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 4096, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=504&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: K/3NKaBlxu7v9kgk2LYBgw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: JSPvmd1G5iYDzXP+wfG/3wB2+1s=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.7.5", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.138Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "306": 2 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d353034266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_7_6.html b/autobahn/client/tungstenite_case_13_7_6.html new file mode 100644 index 0000000..c6c7840 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_6.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.7.6 : Fail - 1 ms @ 2020-09-07T18:52:55.139Z

+

Case Description

Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=505&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: uSEA9IPewxGScHXpuwjgZA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: nuzA5OFNF7xJ80IBZazNgsw1zvk=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
3061306
4921492
Total2798
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d353035266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_7_6.json b/autobahn/client/tungstenite_case_13_7_6.json new file mode 100644 index 0000000..7ec08fd --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_6.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 505, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 8192, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=505&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: uSEA9IPewxGScHXpuwjgZA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: nuzA5OFNF7xJ80IBZazNgsw1zvk=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.7.6", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.139Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "306": 1, + "492": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d353035266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_7_7.html b/autobahn/client/tungstenite_case_13_7_7.html new file mode 100644 index 0000000..d3d757f --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_7.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.7.7 : Fail - 1 ms @ 2020-09-07T18:52:55.141Z

+

Case Description

Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=506&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: HWzCp8WENOm5Q47puDwSXQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: h6JRqZUD2/wo98RTXhC+ip8Nsbs=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
3061306
8381838
Total21144
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d353036266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_7_7.json b/autobahn/client/tungstenite_case_13_7_7.json new file mode 100644 index 0000000..27ebc4e --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_7.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 506, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 16384, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=506&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: HWzCp8WENOm5Q47puDwSXQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: h6JRqZUD2/wo98RTXhC+ip8Nsbs=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.7.7", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.141Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "306": 1, + "838": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d353036266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_7_8.html b/autobahn/client/tungstenite_case_13_7_8.html new file mode 100644 index 0000000..1d970ad --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_8.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.7.8 : Fail - 1 ms @ 2020-09-07T18:52:55.142Z

+

Case Description

Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=507&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 5Nrz+eZ5byaYi8HK9I/+bg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: /brduGD0Xi5+/C/a/5O8F09UhF4=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
3061306
147711477
Total21783
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d353037266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_7_8.json b/autobahn/client/tungstenite_case_13_7_8.json new file mode 100644 index 0000000..c8a0bf8 --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_8.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 507, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 32768, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]", + "droppedByMe": false, + "duration": 1, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=507&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 5Nrz+eZ5byaYi8HK9I/+bg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: /brduGD0Xi5+/C/a/5O8F09UhF4=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.7.8", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.142Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "306": 1, + "1477": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d353037266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_13_7_9.html b/autobahn/client/tungstenite_case_13_7_9.html new file mode 100644 index 0000000..6b4c6be --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_9.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 13.7.9 : Fail - 2 ms @ 2020-09-07T18:52:55.143Z

+

Case Description

Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Case did not finish within 480 seconds.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

The connection was failed by the wrong endpoint (FAILED)

+

+

Opening Handshake

+
GET /runCase?case=508&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: cUdVZQGghGSBtLEANndtXw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: PScfDbXiz+yD7MCzMgC3E8nfDoQ=
+Sec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
3061306
292412924
Total23230
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+

Wire log after handshake disabled!

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d353038266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_13_7_9.json b/autobahn/client/tungstenite_case_13_7_9.json new file mode 100644 index 0000000..8e9f95b --- /dev/null +++ b/autobahn/client/tungstenite_case_13_7_9.json @@ -0,0 +1,78 @@ +{ + "agent": "Tungstenite", + "behavior": "FAILED", + "behaviorClose": "FAILED", + "case": 508, + "closedByMe": false, + "createStats": true, + "createWirelog": false, + "description": "Send 1000 compressed messages each of payload size 65536, auto-fragment to 0 octets. Use permessage-deflate client offers (requestNoContextTakeover, requestMaxWindowBits): [(True, 8), (True, 0), (False, 0)]", + "droppedByMe": false, + "duration": 2, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=508&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: cUdVZQGghGSBtLEANndtXw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: PScfDbXiz+yD7MCzMgC3E8nfDoQ=\r\nSec-WebSocket-Extensions: permessage-deflate; client_no_context_takeover; client_max_window_bits=8\r\n\r\n", + "id": "13.7.9", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Case did not finish within 480 seconds.", + "resultClose": "The connection was failed by the wrong endpoint", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:52:55.143Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "306": 1, + "2924": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d353038266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 306, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_1_1_1.html b/autobahn/client/tungstenite_case_1_1_1.html new file mode 100644 index 0000000..8785b6b --- /dev/null +++ b/autobahn/client/tungstenite_case_1_1_1.html @@ -0,0 +1,301 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 1.1.1 : Pass - 0 ms @ 2020-09-07T18:43:53.842Z

+

Case Description

Send text message with payload 0.

+

Case Expectation

Receive echo'ed text message (with empty payload). Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'', False)]}

+ Observed:
[('message', u'', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=1&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 0JNcGFy018ado5E40t4btQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: RzUjlhbyLVAM2TitGl8WQzYqgOs=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
616
818
2551255
Total3269
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
212
414
2061206
Total3212
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d31266167656e743d54756e677374656e69746520485454502f312e310d0a486f
+
               73743a206c6f63616c686f73743a ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
003 TX OCTETS: 8100
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 81802c4f48a9
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=0, MASKED=True, MASK=3263346634386139
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88825a956276597d
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3561393536323736
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_1_1_1.json b/autobahn/client/tungstenite_case_1_1_1.json new file mode 100644 index 0000000..f1f06c5 --- /dev/null +++ b/autobahn/client/tungstenite_case_1_1_1.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 1, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text message with payload 0.", + "droppedByMe": true, + "duration": 0, + "expectation": "Receive echo'ed text message (with empty payload). Clean close with normal code.", + "expected": { + "OK": [ + [ + "message", + "", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=1&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 0JNcGFy018ado5E40t4btQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: RzUjlhbyLVAM2TitGl8WQzYqgOs=\r\n\r\n", + "id": "1.1.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "6": 1, + "8": 1, + "255": 1 + }, + "started": "2020-09-07T18:43:53.842Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 255, + "474554202f72756e436173653f636173653d31266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73743a ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8100" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 6, + "81802c4f48a9" + ] + ], + [ + "RF", + [ + 0, + "" + ], + 1, + true, + 0, + true, + "2c4f48a9" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88825a956276597d" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "5a956276" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_1_1_2.html b/autobahn/client/tungstenite_case_1_1_2.html new file mode 100644 index 0000000..dc6ce1b --- /dev/null +++ b/autobahn/client/tungstenite_case_1_1_2.html @@ -0,0 +1,305 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 1.1.2 : Pass - 0 ms @ 2020-09-07T18:43:53.843Z

+

Case Description

Send text message message with payload of length 125.

+

Case Expectation

Receive echo'ed text message (with payload as sent). Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'**************************************************************** ...', False)]}

+ Observed:
[('message', u'**************************************************************** ...', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=2&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 91WVJq0XjmL8bjFu2+mg7Q==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: UzdlPo1L8eue2ItBBGOZ3K9kg/o=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
1311131
2551255
Total3394
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
1271127
2061206
Total3337
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d32266167656e743d54756e677374656e69746520485454502f312e310d0a486f
+
               73743a206c6f63616c686f73743a ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=125, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
003 TX OCTETS: 817d2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 81fd93dfd2b5b9f5f89fb9f5f89fb9f5f89fb9f5f89fb9f5f89fb9f5f89fb9f5f89fb9f5f89fb9f5f89fb9f5f89fb9f5f89f
+
               b9f5f89fb9f5f89fb9f5f89fb9f5 ...
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=125, MASKED=True, MASK=3933646664326235
+
               **************************************************************** ...
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88822cabe7252f43
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3263616265373235
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_1_1_2.json b/autobahn/client/tungstenite_case_1_1_2.json new file mode 100644 index 0000000..7b48945 --- /dev/null +++ b/autobahn/client/tungstenite_case_1_1_2.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 2, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text message message with payload of length 125.", + "droppedByMe": true, + "duration": 0, + "expectation": "Receive echo'ed text message (with payload as sent). Clean close with normal code.", + "expected": { + "OK": [ + [ + "message", + "**************************************************************** ...", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=2&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 91WVJq0XjmL8bjFu2+mg7Q==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: UzdlPo1L8eue2ItBBGOZ3K9kg/o=\r\n\r\n", + "id": "1.1.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "**************************************************************** ...", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "131": 1, + "255": 1 + }, + "started": "2020-09-07T18:43:53.843Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "127": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 255, + "474554202f72756e436173653f636173653d32266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73743a ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 125, + "**************************************************************** ..." + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 127, + "817d2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 131, + "81fd93dfd2b5b9f5f89fb9f5f89fb9f5f89fb9f5f89fb9f5f89fb9f5f89fb9f5f89fb9f5f89fb9f5f89fb9f5f89fb9f5f89fb9f5f89fb9f5f89fb9f5f89fb9f5 ..." + ] + ], + [ + "RF", + [ + 125, + "**************************************************************** ..." + ], + 1, + true, + 0, + true, + "93dfd2b5" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88822cabe7252f43" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "2cabe725" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_1_1_3.html b/autobahn/client/tungstenite_case_1_1_3.html new file mode 100644 index 0000000..f8891a6 --- /dev/null +++ b/autobahn/client/tungstenite_case_1_1_3.html @@ -0,0 +1,305 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 1.1.3 : Pass - 0 ms @ 2020-09-07T18:43:53.844Z

+

Case Description

Send text message message with payload of length 126.

+

Case Expectation

Receive echo'ed text message (with payload as sent). Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'**************************************************************** ...', False)]}

+ Observed:
[('message', u'**************************************************************** ...', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=3&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: eWYcEd18KM0IRK/Z7Ku+Gg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: TOTy3X7okzYrcSvMIC930ebtIXQ=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
1341134
2551255
Total3397
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
1301130
2061206
Total3340
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d33266167656e743d54756e677374656e69746520485454502f312e310d0a486f
+
               73743a206c6f63616c686f73743a ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=126, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
003 TX OCTETS: 817e007e2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 81fe007ead684ad2874260f8874260f8874260f8874260f8874260f8874260f8874260f8874260f8874260f8874260f88742
+
               60f8874260f8874260f8874260f8 ...
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=126, MASKED=True, MASK=6164363834616432
+
               **************************************************************** ...
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88824e0ff7b54de7
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3465306666376235
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_1_1_3.json b/autobahn/client/tungstenite_case_1_1_3.json new file mode 100644 index 0000000..0e463e9 --- /dev/null +++ b/autobahn/client/tungstenite_case_1_1_3.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 3, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text message message with payload of length 126.", + "droppedByMe": true, + "duration": 0, + "expectation": "Receive echo'ed text message (with payload as sent). Clean close with normal code.", + "expected": { + "OK": [ + [ + "message", + "**************************************************************** ...", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=3&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: eWYcEd18KM0IRK/Z7Ku+Gg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: TOTy3X7okzYrcSvMIC930ebtIXQ=\r\n\r\n", + "id": "1.1.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "**************************************************************** ...", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "134": 1, + "255": 1 + }, + "started": "2020-09-07T18:43:53.844Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "130": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 255, + "474554202f72756e436173653f636173653d33266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73743a ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 126, + "**************************************************************** ..." + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 130, + "817e007e2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 134, + "81fe007ead684ad2874260f8874260f8874260f8874260f8874260f8874260f8874260f8874260f8874260f8874260f8874260f8874260f8874260f8874260f8 ..." + ] + ], + [ + "RF", + [ + 126, + "**************************************************************** ..." + ], + 1, + true, + 0, + true, + "ad684ad2" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88824e0ff7b54de7" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "4e0ff7b5" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_1_1_4.html b/autobahn/client/tungstenite_case_1_1_4.html new file mode 100644 index 0000000..9599aa1 --- /dev/null +++ b/autobahn/client/tungstenite_case_1_1_4.html @@ -0,0 +1,305 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 1.1.4 : Pass - 0 ms @ 2020-09-07T18:43:53.844Z

+

Case Description

Send text message message with payload of length 127.

+

Case Expectation

Receive echo'ed text message (with payload as sent). Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'**************************************************************** ...', False)]}

+ Observed:
[('message', u'**************************************************************** ...', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=4&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: osBfRA1jyJDohp8zOp5SIQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: S8UQD9+iysVPGlV5HpiwtynczUo=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
1351135
2551255
Total3398
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
1311131
2061206
Total3341
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d34266167656e743d54756e677374656e69746520485454502f312e310d0a486f
+
               73743a206c6f63616c686f73743a ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=127, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
003 TX OCTETS: 817e007f2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 81fe007f60fa2c1e4ad006344ad006344ad006344ad006344ad006344ad006344ad006344ad006344ad006344ad006344ad0
+
               06344ad006344ad006344ad00634 ...
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=127, MASKED=True, MASK=3630666132633165
+
               **************************************************************** ...
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882b71cdaa5b4f4
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6237316364616135
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_1_1_4.json b/autobahn/client/tungstenite_case_1_1_4.json new file mode 100644 index 0000000..5163d3c --- /dev/null +++ b/autobahn/client/tungstenite_case_1_1_4.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 4, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text message message with payload of length 127.", + "droppedByMe": true, + "duration": 0, + "expectation": "Receive echo'ed text message (with payload as sent). Clean close with normal code.", + "expected": { + "OK": [ + [ + "message", + "**************************************************************** ...", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=4&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: osBfRA1jyJDohp8zOp5SIQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: S8UQD9+iysVPGlV5HpiwtynczUo=\r\n\r\n", + "id": "1.1.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "**************************************************************** ...", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "135": 1, + "255": 1 + }, + "started": "2020-09-07T18:43:53.844Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "131": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 255, + "474554202f72756e436173653f636173653d34266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73743a ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 127, + "**************************************************************** ..." + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 131, + "817e007f2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 135, + "81fe007f60fa2c1e4ad006344ad006344ad006344ad006344ad006344ad006344ad006344ad006344ad006344ad006344ad006344ad006344ad006344ad00634 ..." + ] + ], + [ + "RF", + [ + 127, + "**************************************************************** ..." + ], + 1, + true, + 0, + true, + "60fa2c1e" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882b71cdaa5b4f4" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "b71cdaa5" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_1_1_5.html b/autobahn/client/tungstenite_case_1_1_5.html new file mode 100644 index 0000000..997147d --- /dev/null +++ b/autobahn/client/tungstenite_case_1_1_5.html @@ -0,0 +1,305 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 1.1.5 : Pass - 0 ms @ 2020-09-07T18:43:53.845Z

+

Case Description

Send text message message with payload of length 128.

+

Case Expectation

Receive echo'ed text message (with payload as sent). Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'**************************************************************** ...', False)]}

+ Observed:
[('message', u'**************************************************************** ...', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=5&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 8n3nzw72q1IFV5TV7GyjgA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 81NjaABMeiXDFI7U2keAMAgbfJ8=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
1361136
2551255
Total3399
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
1321132
2061206
Total3342
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d35266167656e743d54756e677374656e69746520485454502f312e310d0a486f
+
               73743a206c6f63616c686f73743a ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=128, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
003 TX OCTETS: 817e00802a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 81fe0080ea11d625c03bfc0fc03bfc0fc03bfc0fc03bfc0fc03bfc0fc03bfc0fc03bfc0fc03bfc0fc03bfc0fc03bfc0fc03b
+
               fc0fc03bfc0fc03bfc0fc03bfc0f ...
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=128, MASKED=True, MASK=6561313164363235
+
               **************************************************************** ...
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 888246d76fd2453f
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3436643736666432
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_1_1_5.json b/autobahn/client/tungstenite_case_1_1_5.json new file mode 100644 index 0000000..24ddd52 --- /dev/null +++ b/autobahn/client/tungstenite_case_1_1_5.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 5, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text message message with payload of length 128.", + "droppedByMe": true, + "duration": 0, + "expectation": "Receive echo'ed text message (with payload as sent). Clean close with normal code.", + "expected": { + "OK": [ + [ + "message", + "**************************************************************** ...", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=5&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 8n3nzw72q1IFV5TV7GyjgA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 81NjaABMeiXDFI7U2keAMAgbfJ8=\r\n\r\n", + "id": "1.1.5", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "**************************************************************** ...", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "136": 1, + "255": 1 + }, + "started": "2020-09-07T18:43:53.845Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "132": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 255, + "474554202f72756e436173653f636173653d35266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73743a ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 128, + "**************************************************************** ..." + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 132, + "817e00802a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 136, + "81fe0080ea11d625c03bfc0fc03bfc0fc03bfc0fc03bfc0fc03bfc0fc03bfc0fc03bfc0fc03bfc0fc03bfc0fc03bfc0fc03bfc0fc03bfc0fc03bfc0fc03bfc0f ..." + ] + ], + [ + "RF", + [ + 128, + "**************************************************************** ..." + ], + 1, + true, + 0, + true, + "ea11d625" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888246d76fd2453f" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "46d76fd2" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_1_1_6.html b/autobahn/client/tungstenite_case_1_1_6.html new file mode 100644 index 0000000..62e6afa --- /dev/null +++ b/autobahn/client/tungstenite_case_1_1_6.html @@ -0,0 +1,307 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 1.1.6 : Pass - 2 ms @ 2020-09-07T18:43:53.846Z

+

Case Description

Send text message message with payload of length 65535.

+

Case Expectation

Receive echo'ed text message (with payload as sent). Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'**************************************************************** ...', False)]}

+ Observed:
[('message', u'**************************************************************** ...', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=6&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ZouBvDeug35hkxurmzLJCQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Klj5ABLVdncE/AbLBZb6IebS8UY=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
717
818
2551255
65536165536
Total465806
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
65539165539
Total365749
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d36266167656e743d54756e677374656e69746520485454502f312e310d0a486f
+
               73743a206c6f63616c686f73743a ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=65535, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
003 TX OCTETS: 817effff2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
004 FAIL CONNECTION AFTER 10.000000 sec
+
005 RX OCTETS: 81feffff75f3a4ec5fd98ec65fd98ec65fd98ec65fd98ec65fd98ec65fd98ec65fd98ec65fd98ec65fd98ec65fd98ec65fd9
+
               8ec65fd98ec65fd98ec65fd98ec6 ...
+
006 RX OCTETS: 5fd98ec65fd98e
+
007 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=65535, MASKED=True, MASK=3735663361346563
+
               **************************************************************** ...
+
008 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
009 TX OCTETS: 880203e8
+
010 RX OCTETS: 8882a9945dadaa7c
+
011 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6139393435646164
+
               0x03e8
+
012 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_1_1_6.json b/autobahn/client/tungstenite_case_1_1_6.json new file mode 100644 index 0000000..e9bc6a4 --- /dev/null +++ b/autobahn/client/tungstenite_case_1_1_6.json @@ -0,0 +1,185 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 6, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text message message with payload of length 65535.", + "droppedByMe": true, + "duration": 2, + "expectation": "Receive echo'ed text message (with payload as sent). Clean close with normal code.", + "expected": { + "OK": [ + [ + "message", + "**************************************************************** ...", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=6&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ZouBvDeug35hkxurmzLJCQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Klj5ABLVdncE/AbLBZb6IebS8UY=\r\n\r\n", + "id": "1.1.6", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "**************************************************************** ...", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "7": 1, + "8": 1, + "255": 1, + "65536": 1 + }, + "started": "2020-09-07T18:43:53.846Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "65539": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 255, + "474554202f72756e436173653f636173653d36266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73743a ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 65535, + "**************************************************************** ..." + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 65539, + "817effff2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "KL", + 10 + ], + [ + "RO", + [ + 65536, + "81feffff75f3a4ec5fd98ec65fd98ec65fd98ec65fd98ec65fd98ec65fd98ec65fd98ec65fd98ec65fd98ec65fd98ec65fd98ec65fd98ec65fd98ec65fd98ec6 ..." + ] + ], + [ + "RO", + [ + 7, + "5fd98ec65fd98e" + ] + ], + [ + "RF", + [ + 65535, + "**************************************************************** ..." + ], + 1, + true, + 0, + true, + "75f3a4ec" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882a9945dadaa7c" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "a9945dad" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_1_1_7.html b/autobahn/client/tungstenite_case_1_1_7.html new file mode 100644 index 0000000..a9335f1 --- /dev/null +++ b/autobahn/client/tungstenite_case_1_1_7.html @@ -0,0 +1,307 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 1.1.7 : Pass - 2 ms @ 2020-09-07T18:43:53.848Z

+

Case Description

Send text message message with payload of length 65536.

+

Case Expectation

Receive echo'ed text message (with payload as sent). Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'**************************************************************** ...', False)]}

+ Observed:
[('message', u'**************************************************************** ...', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=7&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: MUuG5MmKKjIU0K6pTYF5FA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: JFNYLiZaFWhAUYBVSJsFtp0nFts=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2551255
65536165536
Total465813
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
65546165546
Total365756
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d37266167656e743d54756e677374656e69746520485454502f312e310d0a486f
+
               73743a206c6f63616c686f73743a ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=65536, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               **************************************************************** ...
+
003 TX OCTETS: 817f00000000000100002a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
004 FAIL CONNECTION AFTER 10.000000 sec
+
005 RX OCTETS: 81ff0000000000010000426ceabf6846c0956846c0956846c0956846c0956846c0956846c0956846c0956846c0956846c095
+
               6846c0956846c0956846c0956846 ...
+
006 RX OCTETS: c0956846c0956846c0956846c095
+
007 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=65536, MASKED=True, MASK=3432366365616266
+
               **************************************************************** ...
+
008 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
009 TX OCTETS: 880203e8
+
010 RX OCTETS: 8882490b54674ae3
+
011 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3439306235343637
+
               0x03e8
+
012 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_1_1_7.json b/autobahn/client/tungstenite_case_1_1_7.json new file mode 100644 index 0000000..bac26f0 --- /dev/null +++ b/autobahn/client/tungstenite_case_1_1_7.json @@ -0,0 +1,185 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 7, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text message message with payload of length 65536.", + "droppedByMe": true, + "duration": 2, + "expectation": "Receive echo'ed text message (with payload as sent). Clean close with normal code.", + "expected": { + "OK": [ + [ + "message", + "**************************************************************** ...", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=7&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: MUuG5MmKKjIU0K6pTYF5FA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: JFNYLiZaFWhAUYBVSJsFtp0nFts=\r\n\r\n", + "id": "1.1.7", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "**************************************************************** ...", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "255": 1, + "65536": 1 + }, + "started": "2020-09-07T18:43:53.848Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "65546": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 255, + "474554202f72756e436173653f636173653d37266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73743a ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 65536, + "**************************************************************** ..." + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 65546, + "817f00000000000100002a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "KL", + 10 + ], + [ + "RO", + [ + 65536, + "81ff0000000000010000426ceabf6846c0956846c0956846c0956846c0956846c0956846c0956846c0956846c0956846c0956846c0956846c0956846c0956846 ..." + ] + ], + [ + "RO", + [ + 14, + "c0956846c0956846c0956846c095" + ] + ], + [ + "RF", + [ + 65536, + "**************************************************************** ..." + ], + 1, + true, + 0, + true, + "426ceabf" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882490b54674ae3" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "490b5467" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_1_1_8.html b/autobahn/client/tungstenite_case_1_1_8.html new file mode 100644 index 0000000..d824b33 --- /dev/null +++ b/autobahn/client/tungstenite_case_1_1_8.html @@ -0,0 +1,438 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 1.1.8 : Pass - 4 ms @ 2020-09-07T18:43:53.850Z

+

Case Description

Send text message message with payload of length 65536. Sent out data in chops of 997 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent). Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'**************************************************************** ...', False)]}

+ Observed:
[('message', u'**************************************************************** ...', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=8&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 8GniTgaqJwBZf1lSNqGTbQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 1rXm1IlVg7WjplAVOCSXAgV2x98=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2551255
65536165536
Total465813
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
414
2061206
7411741
9976564805
Total6865756
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d38266167656e743d54756e677374656e69746520485454502f312e310d0a486f
+
               73743a206c6f63616c686f73743a ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=65536, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=997, SYNC=False
+
               **************************************************************** ...
+
003 TX OCTETS: 817f00000000000100002a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
004 FAIL CONNECTION AFTER 10.000000 sec
+
005 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
006 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
007 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
008 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
009 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
010 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
011 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
012 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
013 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
014 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
015 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
016 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
017 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
018 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
019 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
020 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
021 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
022 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
023 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
024 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
025 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
026 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
027 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
028 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
029 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
030 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
031 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
032 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
033 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
034 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
035 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
036 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
037 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
038 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
039 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
040 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
041 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
042 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
043 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
044 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
045 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
046 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
047 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
048 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
049 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
050 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
051 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
052 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
053 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
054 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
055 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
056 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
057 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
058 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
059 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
060 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
061 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
062 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
063 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
064 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
065 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
066 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
067 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
068 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
069 TX OCTETS: 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
070 RX OCTETS: 81ff0000000000010000a12efb2d8b04d1078b04d1078b04d1078b04d1078b04d1078b04d1078b04d1078b04d1078b04d107
+
               8b04d1078b04d1078b04d1078b04 ...
+
071 RX OCTETS: d1078b04d1078b04d1078b04d107
+
072 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=65536, MASKED=True, MASK=6131326566623264
+
               **************************************************************** ...
+
073 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
074 TX OCTETS: 880203e8
+
075 RX OCTETS: 8882ce50f170cdb8
+
076 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6365353066313730
+
               0x03e8
+
077 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_1_1_8.json b/autobahn/client/tungstenite_case_1_1_8.json new file mode 100644 index 0000000..d5afc29 --- /dev/null +++ b/autobahn/client/tungstenite_case_1_1_8.json @@ -0,0 +1,706 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 8, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text message message with payload of length 65536. Sent out data in chops of 997 octets.", + "droppedByMe": true, + "duration": 4, + "expectation": "Receive echo'ed text message (with payload as sent). Clean close with normal code.", + "expected": { + "OK": [ + [ + "message", + "**************************************************************** ...", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=8&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 8GniTgaqJwBZf1lSNqGTbQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 1rXm1IlVg7WjplAVOCSXAgV2x98=\r\n\r\n", + "id": "1.1.8", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "**************************************************************** ...", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "255": 1, + "65536": 1 + }, + "started": "2020-09-07T18:43:53.850Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "741": 1, + "997": 65 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 255, + "474554202f72756e436173653f636173653d38266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73743a ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 65536, + "**************************************************************** ..." + ], + 1, + true, + 0, + null, + null, + 997, + false + ], + [ + "TO", + [ + 997, + "817f00000000000100002a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "KL", + 10 + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 997, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "TO", + [ + 741, + "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + true + ], + [ + "RO", + [ + 65536, + "81ff0000000000010000a12efb2d8b04d1078b04d1078b04d1078b04d1078b04d1078b04d1078b04d1078b04d1078b04d1078b04d1078b04d1078b04d1078b04 ..." + ] + ], + [ + "RO", + [ + 14, + "d1078b04d1078b04d1078b04d107" + ] + ], + [ + "RF", + [ + 65536, + "**************************************************************** ..." + ], + 1, + true, + 0, + true, + "a12efb2d" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882ce50f170cdb8" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "ce50f170" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_1_2_1.html b/autobahn/client/tungstenite_case_1_2_1.html new file mode 100644 index 0000000..ce0f961 --- /dev/null +++ b/autobahn/client/tungstenite_case_1_2_1.html @@ -0,0 +1,301 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 1.2.1 : Pass - 0 ms @ 2020-09-07T18:43:53.855Z

+

Case Description

Send binary message with payload 0.

+

Case Expectation

Receive echo'ed binary message (with empty payload). Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'', True)]}

+ Observed:
[('message', u'', True)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=9&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: jBzLqj27MlH9eusdoI5GuA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: YeFWkbUrA1nzuFXT5Vg3uZksZjs=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
616
818
2551255
Total3269
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
212
414
2061206
Total3212
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d39266167656e743d54756e677374656e69746520485454502f312e310d0a486f
+
               73743a206c6f63616c686f73743a ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=2, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
003 TX OCTETS: 8200
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 8280e23a6317
+
006 RX FRAME : OPCODE=2, FIN=True, RSV=0, PAYLOAD-LEN=0, MASKED=True, MASK=6532336136333137
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 888267d944046431
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3637643934343034
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_1_2_1.json b/autobahn/client/tungstenite_case_1_2_1.json new file mode 100644 index 0000000..11a0d21 --- /dev/null +++ b/autobahn/client/tungstenite_case_1_2_1.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 9, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send binary message with payload 0.", + "droppedByMe": true, + "duration": 0, + "expectation": "Receive echo'ed binary message (with empty payload). Clean close with normal code.", + "expected": { + "OK": [ + [ + "message", + "", + true + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=9&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: jBzLqj27MlH9eusdoI5GuA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: YeFWkbUrA1nzuFXT5Vg3uZksZjs=\r\n\r\n", + "id": "1.2.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "", + true + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "6": 1, + "8": 1, + "255": 1 + }, + "started": "2020-09-07T18:43:53.855Z", + "trafficStats": null, + "txFrameStats": { + "2": 1, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 255, + "474554202f72756e436173653f636173653d39266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73743a ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 2, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8200" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 6, + "8280e23a6317" + ] + ], + [ + "RF", + [ + 0, + "" + ], + 2, + true, + 0, + true, + "e23a6317" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888267d944046431" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "67d94404" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_1_2_2.html b/autobahn/client/tungstenite_case_1_2_2.html new file mode 100644 index 0000000..bdfe6d8 --- /dev/null +++ b/autobahn/client/tungstenite_case_1_2_2.html @@ -0,0 +1,307 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 1.2.2 : Pass - 1 ms @ 2020-09-07T18:43:53.856Z

+

Case Description

Send binary message message with payload of length 125.

+

Case Expectation

Receive echo'ed binary message (with payload as sent). Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', '0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...', True)]}

+ Observed:
[('message', '0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...', True)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=10&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: HTzHDtQoZZmpLE7+PkTFFg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: gVSkWSPRTR0cdgXaRD73shCile8=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
1311131
2561256
Total3395
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
1271127
2061206
Total3337
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3130266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=2, FIN=True, RSV=0, PAYLOAD-LEN=125, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefefe ...
+
003 TX OCTETS: 827dfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 82fd1d1f863ae3e178c4e3e178c4e3e178c4e3e178c4e3e178c4e3e178c4e3e178c4e3e178c4e3e178c4e3e178c4e3e178c4
+
               e3e178c4e3e178c4e3e178c4e3e1 ...
+
006 RX FRAME : OPCODE=2, FIN=True, RSV=0, PAYLOAD-LEN=125, MASKED=True, MASK=3164316638363361
+
               0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefefe ...
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88823c23b17a3fcb
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3363323362313761
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_1_2_2.json b/autobahn/client/tungstenite_case_1_2_2.json new file mode 100644 index 0000000..382deca --- /dev/null +++ b/autobahn/client/tungstenite_case_1_2_2.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 10, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send binary message message with payload of length 125.", + "droppedByMe": true, + "duration": 1, + "expectation": "Receive echo'ed binary message (with payload as sent). Clean close with normal code.", + "expected": { + "OK": [ + [ + "message", + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...", + true + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=10&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: HTzHDtQoZZmpLE7+PkTFFg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: gVSkWSPRTR0cdgXaRD73shCile8=\r\n\r\n", + "id": "1.2.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...", + true + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "131": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.856Z", + "trafficStats": null, + "txFrameStats": { + "2": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "127": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3130266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 125, + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + 2, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 127, + "827dfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 131, + "82fd1d1f863ae3e178c4e3e178c4e3e178c4e3e178c4e3e178c4e3e178c4e3e178c4e3e178c4e3e178c4e3e178c4e3e178c4e3e178c4e3e178c4e3e178c4e3e1 ..." + ] + ], + [ + "RF", + [ + 125, + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + 2, + true, + 0, + true, + "1d1f863a" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88823c23b17a3fcb" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "3c23b17a" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_1_2_3.html b/autobahn/client/tungstenite_case_1_2_3.html new file mode 100644 index 0000000..7913776 --- /dev/null +++ b/autobahn/client/tungstenite_case_1_2_3.html @@ -0,0 +1,307 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 1.2.3 : Pass - 1 ms @ 2020-09-07T18:43:53.857Z

+

Case Description

Send binary message message with payload of length 126.

+

Case Expectation

Receive echo'ed binary message (with payload as sent). Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', '0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...', True)]}

+ Observed:
[('message', '0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...', True)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=11&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: mwiQSgYFbTqfGCoOKpylvw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: W8TLNljwKnNutqTKvU4QLxidRso=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
1341134
2561256
Total3398
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
1301130
2061206
Total3340
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3131266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=2, FIN=True, RSV=0, PAYLOAD-LEN=126, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefefe ...
+
003 TX OCTETS: 827e007efefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 82fe007e75a92e718b57d08f8b57d08f8b57d08f8b57d08f8b57d08f8b57d08f8b57d08f8b57d08f8b57d08f8b57d08f8b57
+
               d08f8b57d08f8b57d08f8b57d08f ...
+
006 RX FRAME : OPCODE=2, FIN=True, RSV=0, PAYLOAD-LEN=126, MASKED=True, MASK=3735613932653731
+
               0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefefe ...
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 888246eb96c74503
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3436656239366337
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_1_2_3.json b/autobahn/client/tungstenite_case_1_2_3.json new file mode 100644 index 0000000..d23c6c9 --- /dev/null +++ b/autobahn/client/tungstenite_case_1_2_3.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 11, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send binary message message with payload of length 126.", + "droppedByMe": true, + "duration": 1, + "expectation": "Receive echo'ed binary message (with payload as sent). Clean close with normal code.", + "expected": { + "OK": [ + [ + "message", + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...", + true + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=11&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: mwiQSgYFbTqfGCoOKpylvw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: W8TLNljwKnNutqTKvU4QLxidRso=\r\n\r\n", + "id": "1.2.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...", + true + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "134": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.857Z", + "trafficStats": null, + "txFrameStats": { + "2": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "130": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3131266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 126, + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + 2, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 130, + "827e007efefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 134, + "82fe007e75a92e718b57d08f8b57d08f8b57d08f8b57d08f8b57d08f8b57d08f8b57d08f8b57d08f8b57d08f8b57d08f8b57d08f8b57d08f8b57d08f8b57d08f ..." + ] + ], + [ + "RF", + [ + 126, + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + 2, + true, + 0, + true, + "75a92e71" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888246eb96c74503" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "46eb96c7" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_1_2_4.html b/autobahn/client/tungstenite_case_1_2_4.html new file mode 100644 index 0000000..815085b --- /dev/null +++ b/autobahn/client/tungstenite_case_1_2_4.html @@ -0,0 +1,307 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 1.2.4 : Pass - 1 ms @ 2020-09-07T18:43:53.858Z

+

Case Description

Send binary message message with payload of length 127.

+

Case Expectation

Receive echo'ed binary message (with payload as sent). Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', '0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...', True)]}

+ Observed:
[('message', '0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...', True)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=12&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: H7qE/7sg+B2Kmk2F29T2bQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: XGjken3mqUHm2a2hReSbs6ma8+U=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
1351135
2561256
Total3399
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
1311131
2061206
Total3341
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3132266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=2, FIN=True, RSV=0, PAYLOAD-LEN=127, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefefe ...
+
003 TX OCTETS: 827e007ffefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 82fe007f52aac8b9ac543647ac543647ac543647ac543647ac543647ac543647ac543647ac543647ac543647ac543647ac54
+
               3647ac543647ac543647ac543647 ...
+
006 RX FRAME : OPCODE=2, FIN=True, RSV=0, PAYLOAD-LEN=127, MASKED=True, MASK=3532616163386239
+
               0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefefe ...
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88824eaff2ca4d47
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3465616666326361
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_1_2_4.json b/autobahn/client/tungstenite_case_1_2_4.json new file mode 100644 index 0000000..60bb3ff --- /dev/null +++ b/autobahn/client/tungstenite_case_1_2_4.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 12, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send binary message message with payload of length 127.", + "droppedByMe": true, + "duration": 1, + "expectation": "Receive echo'ed binary message (with payload as sent). Clean close with normal code.", + "expected": { + "OK": [ + [ + "message", + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...", + true + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=12&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: H7qE/7sg+B2Kmk2F29T2bQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: XGjken3mqUHm2a2hReSbs6ma8+U=\r\n\r\n", + "id": "1.2.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...", + true + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "135": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.858Z", + "trafficStats": null, + "txFrameStats": { + "2": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "131": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3132266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 127, + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + 2, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 131, + "827e007ffefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 135, + "82fe007f52aac8b9ac543647ac543647ac543647ac543647ac543647ac543647ac543647ac543647ac543647ac543647ac543647ac543647ac543647ac543647 ..." + ] + ], + [ + "RF", + [ + 127, + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + 2, + true, + 0, + true, + "52aac8b9" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88824eaff2ca4d47" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "4eaff2ca" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_1_2_5.html b/autobahn/client/tungstenite_case_1_2_5.html new file mode 100644 index 0000000..568ae82 --- /dev/null +++ b/autobahn/client/tungstenite_case_1_2_5.html @@ -0,0 +1,307 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 1.2.5 : Pass - 1 ms @ 2020-09-07T18:43:53.859Z

+

Case Description

Send binary message message with payload of length 128.

+

Case Expectation

Receive echo'ed binary message (with payload as sent). Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', '0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...', True)]}

+ Observed:
[('message', '0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...', True)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=13&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: aDVYdiFQA3Rc1HPHeeKVKQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: ASL+Ng+mrLBcisS9VsUapzoECoU=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
1361136
2561256
Total3400
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
1321132
2061206
Total3342
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3133266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=2, FIN=True, RSV=0, PAYLOAD-LEN=128, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefefe ...
+
003 TX OCTETS: 827e0080fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 82fe00800c904306f26ebdf8f26ebdf8f26ebdf8f26ebdf8f26ebdf8f26ebdf8f26ebdf8f26ebdf8f26ebdf8f26ebdf8f26e
+
               bdf8f26ebdf8f26ebdf8f26ebdf8 ...
+
006 RX FRAME : OPCODE=2, FIN=True, RSV=0, PAYLOAD-LEN=128, MASKED=True, MASK=3063393034333036
+
               0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefefe ...
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88823ca27c873f4a
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3363613237633837
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_1_2_5.json b/autobahn/client/tungstenite_case_1_2_5.json new file mode 100644 index 0000000..afb3c32 --- /dev/null +++ b/autobahn/client/tungstenite_case_1_2_5.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 13, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send binary message message with payload of length 128.", + "droppedByMe": true, + "duration": 1, + "expectation": "Receive echo'ed binary message (with payload as sent). Clean close with normal code.", + "expected": { + "OK": [ + [ + "message", + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...", + true + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=13&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: aDVYdiFQA3Rc1HPHeeKVKQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: ASL+Ng+mrLBcisS9VsUapzoECoU=\r\n\r\n", + "id": "1.2.5", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...", + true + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "136": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.859Z", + "trafficStats": null, + "txFrameStats": { + "2": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "132": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3133266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 128, + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + 2, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 132, + "827e0080fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 136, + "82fe00800c904306f26ebdf8f26ebdf8f26ebdf8f26ebdf8f26ebdf8f26ebdf8f26ebdf8f26ebdf8f26ebdf8f26ebdf8f26ebdf8f26ebdf8f26ebdf8f26ebdf8 ..." + ] + ], + [ + "RF", + [ + 128, + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + 2, + true, + 0, + true, + "0c904306" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88823ca27c873f4a" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "3ca27c87" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_1_2_6.html b/autobahn/client/tungstenite_case_1_2_6.html new file mode 100644 index 0000000..cac2371 --- /dev/null +++ b/autobahn/client/tungstenite_case_1_2_6.html @@ -0,0 +1,309 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 1.2.6 : Pass - 16 ms @ 2020-09-07T18:43:53.860Z

+

Case Description

Send binary message message with payload of length 65535.

+

Case Expectation

Receive echo'ed binary message (with payload as sent). Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', '0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...', True)]}

+ Observed:
[('message', '0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...', True)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=14&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: A+wxfl7nArmkh60tliv9yw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: w+uupn4X+w2iohxjGPNsB4d+Tfc=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
717
818
2561256
65536165536
Total465807
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
65539165539
Total365749
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3134266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=2, FIN=True, RSV=0, PAYLOAD-LEN=65535, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefefe ...
+
003 TX OCTETS: 827efffffefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
004 FAIL CONNECTION AFTER 10.000000 sec
+
005 RX OCTETS: 82feffffc9696bd23797952c3797952c3797952c3797952c3797952c3797952c3797952c3797952c3797952c3797952c3797
+
               952c3797952c3797952c3797952c ...
+
006 RX OCTETS: 3797952c379795
+
007 RX FRAME : OPCODE=2, FIN=True, RSV=0, PAYLOAD-LEN=65535, MASKED=True, MASK=6339363936626432
+
               0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefefe ...
+
008 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
009 TX OCTETS: 880203e8
+
010 RX OCTETS: 88821ffe07ba1c16
+
011 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3166666530376261
+
               0x03e8
+
012 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_1_2_6.json b/autobahn/client/tungstenite_case_1_2_6.json new file mode 100644 index 0000000..755eee7 --- /dev/null +++ b/autobahn/client/tungstenite_case_1_2_6.json @@ -0,0 +1,185 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 14, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send binary message message with payload of length 65535.", + "droppedByMe": true, + "duration": 16, + "expectation": "Receive echo'ed binary message (with payload as sent). Clean close with normal code.", + "expected": { + "OK": [ + [ + "message", + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...", + true + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=14&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: A+wxfl7nArmkh60tliv9yw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: w+uupn4X+w2iohxjGPNsB4d+Tfc=\r\n\r\n", + "id": "1.2.6", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...", + true + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "7": 1, + "8": 1, + "256": 1, + "65536": 1 + }, + "started": "2020-09-07T18:43:53.860Z", + "trafficStats": null, + "txFrameStats": { + "2": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "65539": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3134266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 65535, + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + 2, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 65539, + "827efffffefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + false + ], + [ + "KL", + 10 + ], + [ + "RO", + [ + 65536, + "82feffffc9696bd23797952c3797952c3797952c3797952c3797952c3797952c3797952c3797952c3797952c3797952c3797952c3797952c3797952c3797952c ..." + ] + ], + [ + "RO", + [ + 7, + "3797952c379795" + ] + ], + [ + "RF", + [ + 65535, + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + 2, + true, + 0, + true, + "c9696bd2" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88821ffe07ba1c16" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "1ffe07ba" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_1_2_7.html b/autobahn/client/tungstenite_case_1_2_7.html new file mode 100644 index 0000000..5f952ca --- /dev/null +++ b/autobahn/client/tungstenite_case_1_2_7.html @@ -0,0 +1,309 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 1.2.7 : Pass - 16 ms @ 2020-09-07T18:43:53.877Z

+

Case Description

Send binary message message with payload of length 65536.

+

Case Expectation

Receive echo'ed binary message (with payload as sent). Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', '0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...', True)]}

+ Observed:
[('message', '0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...', True)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=15&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Ra9ZaJ1Mdi+G/e75AHaGnQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: ZllW6lTx9qNcTtUY/vy8tvwvFp0=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2561256
65536165536
Total465814
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
65546165546
Total365756
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3135266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=2, FIN=True, RSV=0, PAYLOAD-LEN=65536, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefefe ...
+
003 TX OCTETS: 827f0000000000010000fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
004 FAIL CONNECTION AFTER 10.000000 sec
+
005 RX OCTETS: 82ff0000000000010000849ee8ed7a6016137a6016137a6016137a6016137a6016137a6016137a6016137a6016137a601613
+
               7a6016137a6016137a6016137a60 ...
+
006 RX OCTETS: 16137a6016137a6016137a601613
+
007 RX FRAME : OPCODE=2, FIN=True, RSV=0, PAYLOAD-LEN=65536, MASKED=True, MASK=3834396565386564
+
               0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefefe ...
+
008 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
009 TX OCTETS: 880203e8
+
010 RX OCTETS: 8882b8ed11e1bb05
+
011 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6238656431316531
+
               0x03e8
+
012 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_1_2_7.json b/autobahn/client/tungstenite_case_1_2_7.json new file mode 100644 index 0000000..5655b53 --- /dev/null +++ b/autobahn/client/tungstenite_case_1_2_7.json @@ -0,0 +1,185 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 15, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send binary message message with payload of length 65536.", + "droppedByMe": true, + "duration": 16, + "expectation": "Receive echo'ed binary message (with payload as sent). Clean close with normal code.", + "expected": { + "OK": [ + [ + "message", + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...", + true + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=15&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Ra9ZaJ1Mdi+G/e75AHaGnQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: ZllW6lTx9qNcTtUY/vy8tvwvFp0=\r\n\r\n", + "id": "1.2.7", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...", + true + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "256": 1, + "65536": 1 + }, + "started": "2020-09-07T18:43:53.877Z", + "trafficStats": null, + "txFrameStats": { + "2": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "65546": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3135266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 65536, + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + 2, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 65546, + "827f0000000000010000fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + false + ], + [ + "KL", + 10 + ], + [ + "RO", + [ + 65536, + "82ff0000000000010000849ee8ed7a6016137a6016137a6016137a6016137a6016137a6016137a6016137a6016137a6016137a6016137a6016137a6016137a60 ..." + ] + ], + [ + "RO", + [ + 14, + "16137a6016137a6016137a601613" + ] + ], + [ + "RF", + [ + 65536, + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + 2, + true, + 0, + true, + "849ee8ed" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882b8ed11e1bb05" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "b8ed11e1" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_1_2_8.html b/autobahn/client/tungstenite_case_1_2_8.html new file mode 100644 index 0000000..d859516 --- /dev/null +++ b/autobahn/client/tungstenite_case_1_2_8.html @@ -0,0 +1,440 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 1.2.8 : Pass - 18 ms @ 2020-09-07T18:43:53.893Z

+

Case Description

Send binary message message with payload of length 65536. Sent out data in chops of 997 octets.

+

Case Expectation

Receive echo'ed binary message (with payload as sent). Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', '0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...', True)]}

+ Observed:
[('message', '0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...', True)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=16&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 1XtF4+J6IBqB3oVq8WLP+Q==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: k9RFd/vGcqmdOsxRrIywpgSW9o0=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2561256
65536165536
Total465814
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
414
2061206
7411741
9976564805
Total6865756
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3136266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=2, FIN=True, RSV=0, PAYLOAD-LEN=65536, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=997, SYNC=False
+
               0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefefe ...
+
003 TX OCTETS: 827f0000000000010000fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
004 FAIL CONNECTION AFTER 10.000000 sec
+
005 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
006 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
007 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
008 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
009 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
010 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
011 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
012 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
013 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
014 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
015 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
016 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
017 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
018 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
019 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
020 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
021 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
022 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
023 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
024 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
025 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
026 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
027 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
028 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
029 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
030 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
031 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
032 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
033 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
034 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
035 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
036 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
037 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
038 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
039 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
040 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
041 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
042 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
043 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
044 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
045 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
046 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
047 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
048 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
049 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
050 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
051 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
052 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
053 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
054 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
055 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
056 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
057 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
058 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
059 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
060 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
061 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
062 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
063 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
064 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
065 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
066 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
067 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
068 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
069 TX OCTETS: fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
070 RX OCTETS: 82ff00000000000100001919c8c7e7e73639e7e73639e7e73639e7e73639e7e73639e7e73639e7e73639e7e73639e7e73639
+
               e7e73639e7e73639e7e73639e7e7 ...
+
071 RX OCTETS: 3639e7e73639e7e73639e7e73639
+
072 RX FRAME : OPCODE=2, FIN=True, RSV=0, PAYLOAD-LEN=65536, MASKED=True, MASK=3139313963386337
+
               0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefefe ...
+
073 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
074 TX OCTETS: 880203e8
+
075 RX OCTETS: 8882818ac7888262
+
076 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3831386163373838
+
               0x03e8
+
077 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_1_2_8.json b/autobahn/client/tungstenite_case_1_2_8.json new file mode 100644 index 0000000..406069b --- /dev/null +++ b/autobahn/client/tungstenite_case_1_2_8.json @@ -0,0 +1,706 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 16, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send binary message message with payload of length 65536. Sent out data in chops of 997 octets.", + "droppedByMe": true, + "duration": 18, + "expectation": "Receive echo'ed binary message (with payload as sent). Clean close with normal code.", + "expected": { + "OK": [ + [ + "message", + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...", + true + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=16&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 1XtF4+J6IBqB3oVq8WLP+Q==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: k9RFd/vGcqmdOsxRrIywpgSW9o0=\r\n\r\n", + "id": "1.2.8", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...", + true + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "256": 1, + "65536": 1 + }, + "started": "2020-09-07T18:43:53.893Z", + "trafficStats": null, + "txFrameStats": { + "2": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "741": 1, + "997": 65 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3136266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 65536, + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + 2, + true, + 0, + null, + null, + 997, + false + ], + [ + "TO", + [ + 997, + "827f0000000000010000fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "KL", + 10 + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 997, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "TO", + [ + 741, + "fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + true + ], + [ + "RO", + [ + 65536, + "82ff00000000000100001919c8c7e7e73639e7e73639e7e73639e7e73639e7e73639e7e73639e7e73639e7e73639e7e73639e7e73639e7e73639e7e73639e7e7 ..." + ] + ], + [ + "RO", + [ + 14, + "3639e7e73639e7e73639e7e73639" + ] + ], + [ + "RF", + [ + 65536, + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + 2, + true, + 0, + true, + "1919c8c7" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882818ac7888262" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "818ac788" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_2_1.html b/autobahn/client/tungstenite_case_2_1.html new file mode 100644 index 0000000..0c1df43 --- /dev/null +++ b/autobahn/client/tungstenite_case_2_1.html @@ -0,0 +1,301 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 2.1 : Pass - 1 ms @ 2020-09-07T18:43:53.912Z

+

Case Description

Send ping without payload.

+

Case Expectation

Pong (with empty payload) is sent in reply to Ping. Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('pong', u'')]}

+ Observed:
[('pong', u'')] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=17&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: XrxvdLOmKxXlRWMXQMUtqQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: vm5TZHBnpKWueG8Mk10gPFzH5YQ=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
616
818
2561256
Total3270
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
212
414
2061206
Total3212
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
81
101
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
81
91
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3137266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
003 TX OCTETS: 8900
+
004 CLOSE CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 8a800fec1191
+
006 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=0, MASKED=True, MASK=3066656331313931
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882e16d1da6e285
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6531366431646136
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_2_1.json b/autobahn/client/tungstenite_case_2_1.json new file mode 100644 index 0000000..ef901b1 --- /dev/null +++ b/autobahn/client/tungstenite_case_2_1.json @@ -0,0 +1,175 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 17, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send ping without payload.", + "droppedByMe": true, + "duration": 1, + "expectation": "Pong (with empty payload) is sent in reply to Ping. Clean close with normal code.", + "expected": { + "OK": [ + [ + "pong", + "" + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=17&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: XrxvdLOmKxXlRWMXQMUtqQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: vm5TZHBnpKWueG8Mk10gPFzH5YQ=\r\n\r\n", + "id": "2.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "pong", + "" + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1, + "10": 1 + }, + "rxOctetStats": { + "6": 1, + "8": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.912Z", + "trafficStats": null, + "txFrameStats": { + "8": 1, + "9": 1 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3137266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8900" + ], + false + ], + [ + "TI", + 1 + ], + [ + "RO", + [ + 6, + "8a800fec1191" + ] + ], + [ + "RF", + [ + 0, + "" + ], + 10, + true, + 0, + true, + "0fec1191" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882e16d1da6e285" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "e16d1da6" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_2_10.html b/autobahn/client/tungstenite_case_2_10.html new file mode 100644 index 0000000..3a46aec --- /dev/null +++ b/autobahn/client/tungstenite_case_2_10.html @@ -0,0 +1,351 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 2.10 : Pass - 1 ms @ 2020-09-07T18:43:53.923Z

+

Case Description

Send 10 Pings with payload.

+

Case Expectation

Pongs for our Pings with all the payloads. Note: This is not required by the Spec .. but we check for this behaviour anyway. Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('pong', u'payload-0'), ('pong', u'payload-1'), ('pong', u'payload-2'), ('pong', u'payload-3'), ('pong', u'payload-4'), ('pong', u'payload-5'), ('pong', u'payload-6'), ('pong', u'payload-7'), ('pong', u'payload-8'), ('pong', u'payload-9')]}

+ Observed:
[('pong', u'payload-0'), ('pong', u'payload-1'), ('pong', u'payload-2'), ('pong', u'payload-3'), ('pong', u'payload-4'), ('pong', u'payload-5'), ('pong', u'payload-6'), ('pong', u'payload-7'), ('pong', u'payload-8'), ('pong', u'payload-9')] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=26&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: CCJt8g0AlcPEirwXlgqSVA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: lD663zoIe9S4d1DUXKgQVc9b6MI=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
752150
2561256
Total4414
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
1110110
2061206
Total12320
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
81
1010
Total11
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
81
910
Total11
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3236266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               payload-0
+
003 TX OCTETS: 89097061796c6f61642d30
+
004 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               payload-1
+
005 TX OCTETS: 89097061796c6f61642d31
+
006 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               payload-2
+
007 TX OCTETS: 89097061796c6f61642d32
+
008 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               payload-3
+
009 TX OCTETS: 89097061796c6f61642d33
+
010 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               payload-4
+
011 TX OCTETS: 89097061796c6f61642d34
+
012 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               payload-5
+
013 TX OCTETS: 89097061796c6f61642d35
+
014 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               payload-6
+
015 TX OCTETS: 89097061796c6f61642d36
+
016 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               payload-7
+
017 TX OCTETS: 89097061796c6f61642d37
+
018 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               payload-8
+
019 TX OCTETS: 89097061796c6f61642d38
+
020 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               payload-9
+
021 TX OCTETS: 89097061796c6f61642d39
+
022 CLOSE CONNECTION AFTER 3.000000 sec
+
023 RX OCTETS: 8a89aa7d9942da1ce02ec51cfd6f9a8a89c2b60f7db2d77611add76b50f38a89999c5bf8e9fd2294f6fd3fd5ab8a89d66c38
+
               09a60d4165b90d5c24e58a89cca3 ...
+
024 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=6161376439393432
+
               payload-0
+
025 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=6332623630663764
+
               payload-1
+
026 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=3939396335626638
+
               payload-2
+
027 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=6436366333383039
+
               payload-3
+
028 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=6363613331333361
+
               payload-4
+
029 RX OCTETS: 8a89249bffa254fa86ce4bfa9b8f118a89e3a35dae93c224c28cc23983d58a89a0dae6e4d0bb9f88cfbb82c9978a893a3709
+
               874a5670eb55566daa028a8997a4 ...
+
030 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=3234396266666132
+
               payload-5
+
031 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=6533613335646165
+
               payload-6
+
032 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=6130646165366534
+
               payload-7
+
033 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=3361333730393837
+
               payload-8
+
034 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=3937613431353536
+
               payload-9
+
035 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
036 TX OCTETS: 880203e8
+
037 RX OCTETS: 888236ac3bee3544
+
038 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3336616333626565
+
               0x03e8
+
039 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_2_10.json b/autobahn/client/tungstenite_case_2_10.json new file mode 100644 index 0000000..dad97be --- /dev/null +++ b/autobahn/client/tungstenite_case_2_10.json @@ -0,0 +1,560 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 26, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 10 Pings with payload.", + "droppedByMe": true, + "duration": 1, + "expectation": "Pongs for our Pings with all the payloads. Note: This is not required by the Spec .. but we check for this behaviour anyway. Clean close with normal code.", + "expected": { + "OK": [ + [ + "pong", + "payload-0" + ], + [ + "pong", + "payload-1" + ], + [ + "pong", + "payload-2" + ], + [ + "pong", + "payload-3" + ], + [ + "pong", + "payload-4" + ], + [ + "pong", + "payload-5" + ], + [ + "pong", + "payload-6" + ], + [ + "pong", + "payload-7" + ], + [ + "pong", + "payload-8" + ], + [ + "pong", + "payload-9" + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=26&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: CCJt8g0AlcPEirwXlgqSVA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: lD663zoIe9S4d1DUXKgQVc9b6MI=\r\n\r\n", + "id": "2.10", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "pong", + "payload-0" + ], + [ + "pong", + "payload-1" + ], + [ + "pong", + "payload-2" + ], + [ + "pong", + "payload-3" + ], + [ + "pong", + "payload-4" + ], + [ + "pong", + "payload-5" + ], + [ + "pong", + "payload-6" + ], + [ + "pong", + "payload-7" + ], + [ + "pong", + "payload-8" + ], + [ + "pong", + "payload-9" + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1, + "10": 10 + }, + "rxOctetStats": { + "8": 1, + "75": 2, + "256": 1 + }, + "started": "2020-09-07T18:43:53.923Z", + "trafficStats": null, + "txFrameStats": { + "8": 1, + "9": 10 + }, + "txOctetStats": { + "4": 1, + "11": 10, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3236266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 9, + "payload-0" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "89097061796c6f61642d30" + ], + false + ], + [ + "TF", + [ + 9, + "payload-1" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "89097061796c6f61642d31" + ], + false + ], + [ + "TF", + [ + 9, + "payload-2" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "89097061796c6f61642d32" + ], + false + ], + [ + "TF", + [ + 9, + "payload-3" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "89097061796c6f61642d33" + ], + false + ], + [ + "TF", + [ + 9, + "payload-4" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "89097061796c6f61642d34" + ], + false + ], + [ + "TF", + [ + 9, + "payload-5" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "89097061796c6f61642d35" + ], + false + ], + [ + "TF", + [ + 9, + "payload-6" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "89097061796c6f61642d36" + ], + false + ], + [ + "TF", + [ + 9, + "payload-7" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "89097061796c6f61642d37" + ], + false + ], + [ + "TF", + [ + 9, + "payload-8" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "89097061796c6f61642d38" + ], + false + ], + [ + "TF", + [ + 9, + "payload-9" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "89097061796c6f61642d39" + ], + false + ], + [ + "TI", + 3 + ], + [ + "RO", + [ + 75, + "8a89aa7d9942da1ce02ec51cfd6f9a8a89c2b60f7db2d77611add76b50f38a89999c5bf8e9fd2294f6fd3fd5ab8a89d66c3809a60d4165b90d5c24e58a89cca3 ..." + ] + ], + [ + "RF", + [ + 9, + "payload-0" + ], + 10, + true, + 0, + true, + "aa7d9942" + ], + [ + "RF", + [ + 9, + "payload-1" + ], + 10, + true, + 0, + true, + "c2b60f7d" + ], + [ + "RF", + [ + 9, + "payload-2" + ], + 10, + true, + 0, + true, + "999c5bf8" + ], + [ + "RF", + [ + 9, + "payload-3" + ], + 10, + true, + 0, + true, + "d66c3809" + ], + [ + "RF", + [ + 9, + "payload-4" + ], + 10, + true, + 0, + true, + "cca3133a" + ], + [ + "RO", + [ + 75, + "8a89249bffa254fa86ce4bfa9b8f118a89e3a35dae93c224c28cc23983d58a89a0dae6e4d0bb9f88cfbb82c9978a893a3709874a5670eb55566daa028a8997a4 ..." + ] + ], + [ + "RF", + [ + 9, + "payload-5" + ], + 10, + true, + 0, + true, + "249bffa2" + ], + [ + "RF", + [ + 9, + "payload-6" + ], + 10, + true, + 0, + true, + "e3a35dae" + ], + [ + "RF", + [ + 9, + "payload-7" + ], + 10, + true, + 0, + true, + "a0dae6e4" + ], + [ + "RF", + [ + 9, + "payload-8" + ], + 10, + true, + 0, + true, + "3a370987" + ], + [ + "RF", + [ + 9, + "payload-9" + ], + 10, + true, + 0, + true, + "97a41556" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888236ac3bee3544" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "36ac3bee" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_2_11.html b/autobahn/client/tungstenite_case_2_11.html new file mode 100644 index 0000000..84c0c44 --- /dev/null +++ b/autobahn/client/tungstenite_case_2_11.html @@ -0,0 +1,457 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 2.11 : Pass - 6 ms @ 2020-09-07T18:43:53.925Z

+

Case Description

Send 10 Pings with payload. Send out octets in octet-wise chops.

+

Case Expectation

Pongs for our Pings with all the payloads. Note: This is not required by the Spec .. but we check for this behaviour anyway. Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('pong', u'payload-0'), ('pong', u'payload-1'), ('pong', u'payload-2'), ('pong', u'payload-3'), ('pong', u'payload-4'), ('pong', u'payload-5'), ('pong', u'payload-6'), ('pong', u'payload-7'), ('pong', u'payload-8'), ('pong', u'payload-9')]}

+ Observed:
[('pong', u'payload-0'), ('pong', u'payload-1'), ('pong', u'payload-2'), ('pong', u'payload-3'), ('pong', u'payload-4'), ('pong', u'payload-5'), ('pong', u'payload-6'), ('pong', u'payload-7'), ('pong', u'payload-8'), ('pong', u'payload-9')] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=27&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: oxNwX49gDe7HZ5d6EffQXg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: xCI9gQ9gfuQ/rFBeU1BtvqQ7gsE=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
1510150
2561256
Total12414
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
1110110
414
2061206
Total112320
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
81
1010
Total11
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
81
910
Total11
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3237266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               payload-0
+
003 TX OCTETS: 89
+
004 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               payload-1
+
005 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               payload-2
+
006 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               payload-3
+
007 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               payload-4
+
008 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               payload-5
+
009 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               payload-6
+
010 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               payload-7
+
011 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               payload-8
+
012 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               payload-9
+
013 CLOSE CONNECTION AFTER 3.000000 sec
+
014 TX OCTETS: 09
+
015 TX OCTETS: 70
+
016 TX OCTETS: 61
+
017 TX OCTETS: 79
+
018 TX OCTETS: 6c
+
019 TX OCTETS: 6f
+
020 TX OCTETS: 61
+
021 TX OCTETS: 64
+
022 TX OCTETS: 2d
+
023 TX OCTETS: 30
+
024 TX OCTETS: 89
+
025 RX OCTETS: 8a89dc1dd593ac7cacffb37cb1beec
+
026 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=6463316464353933
+
               payload-0
+
027 TX OCTETS: 09
+
028 TX OCTETS: 70
+
029 TX OCTETS: 61
+
030 TX OCTETS: 79
+
031 TX OCTETS: 6c
+
032 TX OCTETS: 6f
+
033 TX OCTETS: 61
+
034 TX OCTETS: 64
+
035 TX OCTETS: 2d
+
036 TX OCTETS: 31
+
037 TX OCTETS: 89
+
038 TX OCTETS: 09
+
039 TX OCTETS: 70
+
040 RX OCTETS: 8a897aaff0bd0ace89d115ce94904b
+
041 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=3761616666306264
+
               payload-1
+
042 TX OCTETS: 61
+
043 TX OCTETS: 79
+
044 TX OCTETS: 6c
+
045 TX OCTETS: 6f
+
046 TX OCTETS: 61
+
047 TX OCTETS: 64
+
048 TX OCTETS: 2d
+
049 TX OCTETS: 32
+
050 TX OCTETS: 89
+
051 RX OCTETS: 8a891b1b0e846b7a77e8747a6aa929
+
052 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=3162316230653834
+
               payload-2
+
053 TX OCTETS: 09
+
054 TX OCTETS: 70
+
055 TX OCTETS: 61
+
056 TX OCTETS: 79
+
057 TX OCTETS: 6c
+
058 TX OCTETS: 6f
+
059 TX OCTETS: 61
+
060 TX OCTETS: 64
+
061 TX OCTETS: 2d
+
062 TX OCTETS: 33
+
063 TX OCTETS: 89
+
064 RX OCTETS: 8a8930258cd34044f5bf5f44e8fe03
+
065 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=3330323538636433
+
               payload-3
+
066 TX OCTETS: 09
+
067 TX OCTETS: 70
+
068 TX OCTETS: 61
+
069 TX OCTETS: 79
+
070 TX OCTETS: 6c
+
071 TX OCTETS: 6f
+
072 TX OCTETS: 61
+
073 TX OCTETS: 64
+
074 TX OCTETS: 2d
+
075 TX OCTETS: 34
+
076 TX OCTETS: 89
+
077 RX OCTETS: 8a890bdc5e667bbd270a64bd3a4b3f
+
078 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=3062646335653636
+
               payload-4
+
079 TX OCTETS: 09
+
080 TX OCTETS: 70
+
081 TX OCTETS: 61
+
082 TX OCTETS: 79
+
083 TX OCTETS: 6c
+
084 TX OCTETS: 6f
+
085 TX OCTETS: 61
+
086 TX OCTETS: 64
+
087 TX OCTETS: 2d
+
088 TX OCTETS: 35
+
089 TX OCTETS: 89
+
090 RX OCTETS: 8a8962d5edfc12b494900db489d157
+
091 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=3632643565646663
+
               payload-5
+
092 TX OCTETS: 09
+
093 TX OCTETS: 70
+
094 TX OCTETS: 61
+
095 TX OCTETS: 79
+
096 TX OCTETS: 6c
+
097 TX OCTETS: 6f
+
098 TX OCTETS: 61
+
099 TX OCTETS: 64
+
100 TX OCTETS: 2d
+
101 TX OCTETS: 36
+
102 TX OCTETS: 89
+
103 RX OCTETS: 8a89f991d9d089f0a0bc96f0bdfdcf
+
104 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=6639393164396430
+
               payload-6
+
105 TX OCTETS: 09
+
106 TX OCTETS: 70
+
107 TX OCTETS: 61
+
108 TX OCTETS: 79
+
109 TX OCTETS: 6c
+
110 TX OCTETS: 6f
+
111 TX OCTETS: 61
+
112 TX OCTETS: 64
+
113 TX OCTETS: 2d
+
114 TX OCTETS: 37
+
115 TX OCTETS: 89
+
116 RX OCTETS: 8a898ef27f71fe93061de1931b5cb9
+
117 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=3865663237663731
+
               payload-7
+
118 TX OCTETS: 09
+
119 TX OCTETS: 70
+
120 TX OCTETS: 61
+
121 TX OCTETS: 79
+
122 TX OCTETS: 6c
+
123 TX OCTETS: 6f
+
124 TX OCTETS: 61
+
125 TX OCTETS: 64
+
126 TX OCTETS: 2d
+
127 TX OCTETS: 38
+
128 TX OCTETS: 89
+
129 RX OCTETS: 8a891b6246466b033f2a7403226b23
+
130 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=3162363234363436
+
               payload-8
+
131 TX OCTETS: 09
+
132 TX OCTETS: 70
+
133 TX OCTETS: 61
+
134 TX OCTETS: 79
+
135 TX OCTETS: 6c
+
136 TX OCTETS: 6f
+
137 TX OCTETS: 61
+
138 TX OCTETS: 64
+
139 TX OCTETS: 2d
+
140 TX OCTETS: 39
+
141 RX OCTETS: 8a89a8b66c1cd8d71570c7d7083191
+
142 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=6138623636633163
+
               payload-9
+
143 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
144 TX OCTETS: 880203e8
+
145 RX OCTETS: 88820f31ba890cd9
+
146 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3066333162613839
+
               0x03e8
+
147 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_2_11.json b/autobahn/client/tungstenite_case_2_11.json new file mode 100644 index 0000000..78bc904 --- /dev/null +++ b/autobahn/client/tungstenite_case_2_11.json @@ -0,0 +1,1416 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 27, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 10 Pings with payload. Send out octets in octet-wise chops.", + "droppedByMe": true, + "duration": 6, + "expectation": "Pongs for our Pings with all the payloads. Note: This is not required by the Spec .. but we check for this behaviour anyway. Clean close with normal code.", + "expected": { + "OK": [ + [ + "pong", + "payload-0" + ], + [ + "pong", + "payload-1" + ], + [ + "pong", + "payload-2" + ], + [ + "pong", + "payload-3" + ], + [ + "pong", + "payload-4" + ], + [ + "pong", + "payload-5" + ], + [ + "pong", + "payload-6" + ], + [ + "pong", + "payload-7" + ], + [ + "pong", + "payload-8" + ], + [ + "pong", + "payload-9" + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=27&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: oxNwX49gDe7HZ5d6EffQXg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: xCI9gQ9gfuQ/rFBeU1BtvqQ7gsE=\r\n\r\n", + "id": "2.11", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "pong", + "payload-0" + ], + [ + "pong", + "payload-1" + ], + [ + "pong", + "payload-2" + ], + [ + "pong", + "payload-3" + ], + [ + "pong", + "payload-4" + ], + [ + "pong", + "payload-5" + ], + [ + "pong", + "payload-6" + ], + [ + "pong", + "payload-7" + ], + [ + "pong", + "payload-8" + ], + [ + "pong", + "payload-9" + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1, + "10": 10 + }, + "rxOctetStats": { + "8": 1, + "15": 10, + "256": 1 + }, + "started": "2020-09-07T18:43:53.925Z", + "trafficStats": null, + "txFrameStats": { + "8": 1, + "9": 10 + }, + "txOctetStats": { + "1": 110, + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3237266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 9, + "payload-0" + ], + 9, + true, + 0, + null, + null, + 1, + false + ], + [ + "TO", + [ + 1, + "89" + ], + true + ], + [ + "TF", + [ + 9, + "payload-1" + ], + 9, + true, + 0, + null, + null, + 1, + false + ], + [ + "TF", + [ + 9, + "payload-2" + ], + 9, + true, + 0, + null, + null, + 1, + false + ], + [ + "TF", + [ + 9, + "payload-3" + ], + 9, + true, + 0, + null, + null, + 1, + false + ], + [ + "TF", + [ + 9, + "payload-4" + ], + 9, + true, + 0, + null, + null, + 1, + false + ], + [ + "TF", + [ + 9, + "payload-5" + ], + 9, + true, + 0, + null, + null, + 1, + false + ], + [ + "TF", + [ + 9, + "payload-6" + ], + 9, + true, + 0, + null, + null, + 1, + false + ], + [ + "TF", + [ + 9, + "payload-7" + ], + 9, + true, + 0, + null, + null, + 1, + false + ], + [ + "TF", + [ + 9, + "payload-8" + ], + 9, + true, + 0, + null, + null, + 1, + false + ], + [ + "TF", + [ + 9, + "payload-9" + ], + 9, + true, + 0, + null, + null, + 1, + false + ], + [ + "TI", + 3 + ], + [ + "TO", + [ + 1, + "09" + ], + true + ], + [ + "TO", + [ + 1, + "70" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "79" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "64" + ], + true + ], + [ + "TO", + [ + 1, + "2d" + ], + true + ], + [ + "TO", + [ + 1, + "30" + ], + true + ], + [ + "TO", + [ + 1, + "89" + ], + true + ], + [ + "RO", + [ + 15, + "8a89dc1dd593ac7cacffb37cb1beec" + ] + ], + [ + "RF", + [ + 9, + "payload-0" + ], + 10, + true, + 0, + true, + "dc1dd593" + ], + [ + "TO", + [ + 1, + "09" + ], + true + ], + [ + "TO", + [ + 1, + "70" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "79" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "64" + ], + true + ], + [ + "TO", + [ + 1, + "2d" + ], + true + ], + [ + "TO", + [ + 1, + "31" + ], + true + ], + [ + "TO", + [ + 1, + "89" + ], + true + ], + [ + "TO", + [ + 1, + "09" + ], + true + ], + [ + "TO", + [ + 1, + "70" + ], + true + ], + [ + "RO", + [ + 15, + "8a897aaff0bd0ace89d115ce94904b" + ] + ], + [ + "RF", + [ + 9, + "payload-1" + ], + 10, + true, + 0, + true, + "7aaff0bd" + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "79" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "64" + ], + true + ], + [ + "TO", + [ + 1, + "2d" + ], + true + ], + [ + "TO", + [ + 1, + "32" + ], + true + ], + [ + "TO", + [ + 1, + "89" + ], + true + ], + [ + "RO", + [ + 15, + "8a891b1b0e846b7a77e8747a6aa929" + ] + ], + [ + "RF", + [ + 9, + "payload-2" + ], + 10, + true, + 0, + true, + "1b1b0e84" + ], + [ + "TO", + [ + 1, + "09" + ], + true + ], + [ + "TO", + [ + 1, + "70" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "79" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "64" + ], + true + ], + [ + "TO", + [ + 1, + "2d" + ], + true + ], + [ + "TO", + [ + 1, + "33" + ], + true + ], + [ + "TO", + [ + 1, + "89" + ], + true + ], + [ + "RO", + [ + 15, + "8a8930258cd34044f5bf5f44e8fe03" + ] + ], + [ + "RF", + [ + 9, + "payload-3" + ], + 10, + true, + 0, + true, + "30258cd3" + ], + [ + "TO", + [ + 1, + "09" + ], + true + ], + [ + "TO", + [ + 1, + "70" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "79" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "64" + ], + true + ], + [ + "TO", + [ + 1, + "2d" + ], + true + ], + [ + "TO", + [ + 1, + "34" + ], + true + ], + [ + "TO", + [ + 1, + "89" + ], + true + ], + [ + "RO", + [ + 15, + "8a890bdc5e667bbd270a64bd3a4b3f" + ] + ], + [ + "RF", + [ + 9, + "payload-4" + ], + 10, + true, + 0, + true, + "0bdc5e66" + ], + [ + "TO", + [ + 1, + "09" + ], + true + ], + [ + "TO", + [ + 1, + "70" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "79" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "64" + ], + true + ], + [ + "TO", + [ + 1, + "2d" + ], + true + ], + [ + "TO", + [ + 1, + "35" + ], + true + ], + [ + "TO", + [ + 1, + "89" + ], + true + ], + [ + "RO", + [ + 15, + "8a8962d5edfc12b494900db489d157" + ] + ], + [ + "RF", + [ + 9, + "payload-5" + ], + 10, + true, + 0, + true, + "62d5edfc" + ], + [ + "TO", + [ + 1, + "09" + ], + true + ], + [ + "TO", + [ + 1, + "70" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "79" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "64" + ], + true + ], + [ + "TO", + [ + 1, + "2d" + ], + true + ], + [ + "TO", + [ + 1, + "36" + ], + true + ], + [ + "TO", + [ + 1, + "89" + ], + true + ], + [ + "RO", + [ + 15, + "8a89f991d9d089f0a0bc96f0bdfdcf" + ] + ], + [ + "RF", + [ + 9, + "payload-6" + ], + 10, + true, + 0, + true, + "f991d9d0" + ], + [ + "TO", + [ + 1, + "09" + ], + true + ], + [ + "TO", + [ + 1, + "70" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "79" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "64" + ], + true + ], + [ + "TO", + [ + 1, + "2d" + ], + true + ], + [ + "TO", + [ + 1, + "37" + ], + true + ], + [ + "TO", + [ + 1, + "89" + ], + true + ], + [ + "RO", + [ + 15, + "8a898ef27f71fe93061de1931b5cb9" + ] + ], + [ + "RF", + [ + 9, + "payload-7" + ], + 10, + true, + 0, + true, + "8ef27f71" + ], + [ + "TO", + [ + 1, + "09" + ], + true + ], + [ + "TO", + [ + 1, + "70" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "79" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "64" + ], + true + ], + [ + "TO", + [ + 1, + "2d" + ], + true + ], + [ + "TO", + [ + 1, + "38" + ], + true + ], + [ + "TO", + [ + 1, + "89" + ], + true + ], + [ + "RO", + [ + 15, + "8a891b6246466b033f2a7403226b23" + ] + ], + [ + "RF", + [ + 9, + "payload-8" + ], + 10, + true, + 0, + true, + "1b624646" + ], + [ + "TO", + [ + 1, + "09" + ], + true + ], + [ + "TO", + [ + 1, + "70" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "79" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "64" + ], + true + ], + [ + "TO", + [ + 1, + "2d" + ], + true + ], + [ + "TO", + [ + 1, + "39" + ], + true + ], + [ + "RO", + [ + 15, + "8a89a8b66c1cd8d71570c7d7083191" + ] + ], + [ + "RF", + [ + 9, + "payload-9" + ], + 10, + true, + 0, + true, + "a8b66c1c" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88820f31ba890cd9" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "0f31ba89" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_2_2.html b/autobahn/client/tungstenite_case_2_2.html new file mode 100644 index 0000000..b48fe32 --- /dev/null +++ b/autobahn/client/tungstenite_case_2_2.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 2.2 : Pass - 0 ms @ 2020-09-07T18:43:53.913Z

+

Case Description

Send ping with small text payload.

+

Case Expectation

Pong with payload echo'ed is sent in reply to Ping. Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('pong', u'Hello, world!')]}

+ Observed:
[('pong', u'Hello, world!')] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=18&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: BxtmvZBKRiqT94rgd1xCJg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: iOUpYpg8ww/mZZuEikHsRr3EmZU=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
19119
2561256
Total3283
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
15115
2061206
Total3225
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
81
101
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
81
91
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3138266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               Hello, world!
+
003 TX OCTETS: 890d48656c6c6f2c20776f726c6421
+
004 CLOSE CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 8a8dd23a3e2b9a5f5247bd161e5cbd48524ff3
+
006 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=13, MASKED=True, MASK=6432336133653262
+
               Hello, world!
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882c566201fc68e
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6335363632303166
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_2_2.json b/autobahn/client/tungstenite_case_2_2.json new file mode 100644 index 0000000..18ca353 --- /dev/null +++ b/autobahn/client/tungstenite_case_2_2.json @@ -0,0 +1,175 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 18, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send ping with small text payload.", + "droppedByMe": true, + "duration": 0, + "expectation": "Pong with payload echo'ed is sent in reply to Ping. Clean close with normal code.", + "expected": { + "OK": [ + [ + "pong", + "Hello, world!" + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=18&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: BxtmvZBKRiqT94rgd1xCJg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: iOUpYpg8ww/mZZuEikHsRr3EmZU=\r\n\r\n", + "id": "2.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "pong", + "Hello, world!" + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1, + "10": 1 + }, + "rxOctetStats": { + "8": 1, + "19": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.913Z", + "trafficStats": null, + "txFrameStats": { + "8": 1, + "9": 1 + }, + "txOctetStats": { + "4": 1, + "15": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3138266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 15, + "890d48656c6c6f2c20776f726c6421" + ], + false + ], + [ + "TI", + 1 + ], + [ + "RO", + [ + 19, + "8a8dd23a3e2b9a5f5247bd161e5cbd48524ff3" + ] + ], + [ + "RF", + [ + 13, + "Hello, world!" + ], + 10, + true, + 0, + true, + "d23a3e2b" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882c566201fc68e" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "c566201f" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_2_3.html b/autobahn/client/tungstenite_case_2_3.html new file mode 100644 index 0000000..25c9acf --- /dev/null +++ b/autobahn/client/tungstenite_case_2_3.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 2.3 : Pass - 0 ms @ 2020-09-07T18:43:53.914Z

+

Case Description

Send ping with small binary (non UTF-8) payload.

+

Case Expectation

Pong with payload echo'ed is sent in reply to Ping. Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('pong', '0x00fffefdfcfb00ff')]}

+ Observed:
[('pong', '0x00fffefdfcfb00ff')] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=19&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 3hK8lZKWbZjacXRBF4ORWQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: FHfIwlsnW+ioqLIq/ZyfJSujCYg=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
14114
2561256
Total3278
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
10110
2061206
Total3220
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
81
101
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
81
91
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3139266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=8, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x00fffefdfcfb00ff
+
003 TX OCTETS: 890800fffefdfcfb00ff
+
004 CLOSE CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 8a889958151199a7ebec65a315ee
+
006 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=8, MASKED=True, MASK=3939353831353131
+
               0x00fffefdfcfb00ff
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882e7e4cc3fe40c
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6537653463633366
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_2_3.json b/autobahn/client/tungstenite_case_2_3.json new file mode 100644 index 0000000..b2b09c7 --- /dev/null +++ b/autobahn/client/tungstenite_case_2_3.json @@ -0,0 +1,175 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 19, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send ping with small binary (non UTF-8) payload.", + "droppedByMe": true, + "duration": 0, + "expectation": "Pong with payload echo'ed is sent in reply to Ping. Clean close with normal code.", + "expected": { + "OK": [ + [ + "pong", + "0x00fffefdfcfb00ff" + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=19&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 3hK8lZKWbZjacXRBF4ORWQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: FHfIwlsnW+ioqLIq/ZyfJSujCYg=\r\n\r\n", + "id": "2.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "pong", + "0x00fffefdfcfb00ff" + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1, + "10": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.914Z", + "trafficStats": null, + "txFrameStats": { + "8": 1, + "9": 1 + }, + "txOctetStats": { + "4": 1, + "10": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3139266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 8, + "0x00fffefdfcfb00ff" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 10, + "890800fffefdfcfb00ff" + ], + false + ], + [ + "TI", + 1 + ], + [ + "RO", + [ + 14, + "8a889958151199a7ebec65a315ee" + ] + ], + [ + "RF", + [ + 8, + "0x00fffefdfcfb00ff" + ], + 10, + true, + 0, + true, + "99581511" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882e7e4cc3fe40c" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "e7e4cc3f" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_2_4.html b/autobahn/client/tungstenite_case_2_4.html new file mode 100644 index 0000000..9ffb372 --- /dev/null +++ b/autobahn/client/tungstenite_case_2_4.html @@ -0,0 +1,307 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 2.4 : Pass - 0 ms @ 2020-09-07T18:43:53.915Z

+

Case Description

Send ping with binary payload of 125 octets.

+

Case Expectation

Pong with payload echo'ed is sent in reply to Ping. Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('pong', '0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...')]}

+ Observed:
[('pong', '0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...')] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=20&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: adNkW7z3JwQqgqjqeWWjVg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: G7qyGRdlrs4EFLTTHkE07u3ph10=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
1311131
2561256
Total3395
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
1271127
2061206
Total3337
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
81
101
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
81
91
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3230266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=125, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefefe ...
+
003 TX OCTETS: 897dfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
004 CLOSE CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 8afdb5dd56ab4b23a8554b23a8554b23a8554b23a8554b23a8554b23a8554b23a8554b23a8554b23a8554b23a8554b23a855
+
               4b23a8554b23a8554b23a8554b23 ...
+
006 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=125, MASKED=True, MASK=6235646435366162
+
               0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefefe ...
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88821b05571718ed
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3162303535373137
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_2_4.json b/autobahn/client/tungstenite_case_2_4.json new file mode 100644 index 0000000..093e931 --- /dev/null +++ b/autobahn/client/tungstenite_case_2_4.json @@ -0,0 +1,175 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 20, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send ping with binary payload of 125 octets.", + "droppedByMe": true, + "duration": 0, + "expectation": "Pong with payload echo'ed is sent in reply to Ping. Clean close with normal code.", + "expected": { + "OK": [ + [ + "pong", + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=20&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: adNkW7z3JwQqgqjqeWWjVg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: G7qyGRdlrs4EFLTTHkE07u3ph10=\r\n\r\n", + "id": "2.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "pong", + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1, + "10": 1 + }, + "rxOctetStats": { + "8": 1, + "131": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.915Z", + "trafficStats": null, + "txFrameStats": { + "8": 1, + "9": 1 + }, + "txOctetStats": { + "4": 1, + "127": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3230266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 125, + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 127, + "897dfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + false + ], + [ + "TI", + 1 + ], + [ + "RO", + [ + 131, + "8afdb5dd56ab4b23a8554b23a8554b23a8554b23a8554b23a8554b23a8554b23a8554b23a8554b23a8554b23a8554b23a8554b23a8554b23a8554b23a8554b23 ..." + ] + ], + [ + "RF", + [ + 125, + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + 10, + true, + 0, + true, + "b5dd56ab" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88821b05571718ed" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "1b055717" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_2_5.html b/autobahn/client/tungstenite_case_2_5.html new file mode 100644 index 0000000..4d889d0 --- /dev/null +++ b/autobahn/client/tungstenite_case_2_5.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 2.5 : Pass - 0 ms @ 2020-09-07T18:43:53.915Z

+

Case Description

Send ping with binary payload of 126 octets.

+

Case Expectation

Connection is failed immediately (1002/Protocol Error), since control frames are only allowed to have payload up to and including 125 octets..

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=21&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: VYelvsEZqAVEVad3aC51aA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: CXfTrEVP6AM5bPit+i98c1ir8Q8=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
1301130
2061206
Total2336
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
91
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3231266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=126, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefefe ...
+
003 TX OCTETS: 897e007efefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefe ...
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_2_5.json b/autobahn/client/tungstenite_case_2_5.json new file mode 100644 index 0000000..41a90b4 --- /dev/null +++ b/autobahn/client/tungstenite_case_2_5.json @@ -0,0 +1,98 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 21, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send ping with binary payload of 126 octets.", + "droppedByMe": false, + "duration": 0, + "expectation": "Connection is failed immediately (1002/Protocol Error), since control frames are only allowed to have payload up to and including 125 octets..", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=21&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: VYelvsEZqAVEVad3aC51aA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: CXfTrEVP6AM5bPit+i98c1ir8Q8=\r\n\r\n", + "id": "2.5", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:53.915Z", + "trafficStats": null, + "txFrameStats": { + "9": 1 + }, + "txOctetStats": { + "130": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3231266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 126, + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 130, + "897e007efefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + false + ], + [ + "KL", + 1 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_2_6.html b/autobahn/client/tungstenite_case_2_6.html new file mode 100644 index 0000000..d4f6b23 --- /dev/null +++ b/autobahn/client/tungstenite_case_2_6.html @@ -0,0 +1,432 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 2.6 : Pass - 5 ms @ 2020-09-07T18:43:53.916Z

+

Case Description

Send ping with binary payload of 125 octets, send in octet-wise chops.

+

Case Expectation

Pong with payload echo'ed is sent in reply to Ping. Implementations must be TCP clean. Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('pong', '0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...')]}

+ Observed:
[('pong', '0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ...')] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=22&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 3ufhCPEQ2ijo6QcQ8iSHhQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: iRMexi9B2aRJL2nP1k7sYWRb/8E=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
1311131
2561256
Total3395
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
1127127
414
2061206
Total129337
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
81
101
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
81
91
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3232266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=125, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefefe ...
+
003 TX OCTETS: 89
+
004 CLOSE CONNECTION AFTER 2.000000 sec
+
005 TX OCTETS: 7d
+
006 TX OCTETS: fe
+
007 TX OCTETS: fe
+
008 TX OCTETS: fe
+
009 TX OCTETS: fe
+
010 TX OCTETS: fe
+
011 TX OCTETS: fe
+
012 TX OCTETS: fe
+
013 TX OCTETS: fe
+
014 TX OCTETS: fe
+
015 TX OCTETS: fe
+
016 TX OCTETS: fe
+
017 TX OCTETS: fe
+
018 TX OCTETS: fe
+
019 TX OCTETS: fe
+
020 TX OCTETS: fe
+
021 TX OCTETS: fe
+
022 TX OCTETS: fe
+
023 TX OCTETS: fe
+
024 TX OCTETS: fe
+
025 TX OCTETS: fe
+
026 TX OCTETS: fe
+
027 TX OCTETS: fe
+
028 TX OCTETS: fe
+
029 TX OCTETS: fe
+
030 TX OCTETS: fe
+
031 TX OCTETS: fe
+
032 TX OCTETS: fe
+
033 TX OCTETS: fe
+
034 TX OCTETS: fe
+
035 TX OCTETS: fe
+
036 TX OCTETS: fe
+
037 TX OCTETS: fe
+
038 TX OCTETS: fe
+
039 TX OCTETS: fe
+
040 TX OCTETS: fe
+
041 TX OCTETS: fe
+
042 TX OCTETS: fe
+
043 TX OCTETS: fe
+
044 TX OCTETS: fe
+
045 TX OCTETS: fe
+
046 TX OCTETS: fe
+
047 TX OCTETS: fe
+
048 TX OCTETS: fe
+
049 TX OCTETS: fe
+
050 TX OCTETS: fe
+
051 TX OCTETS: fe
+
052 TX OCTETS: fe
+
053 TX OCTETS: fe
+
054 TX OCTETS: fe
+
055 TX OCTETS: fe
+
056 TX OCTETS: fe
+
057 TX OCTETS: fe
+
058 TX OCTETS: fe
+
059 TX OCTETS: fe
+
060 TX OCTETS: fe
+
061 TX OCTETS: fe
+
062 TX OCTETS: fe
+
063 TX OCTETS: fe
+
064 TX OCTETS: fe
+
065 TX OCTETS: fe
+
066 TX OCTETS: fe
+
067 TX OCTETS: fe
+
068 TX OCTETS: fe
+
069 TX OCTETS: fe
+
070 TX OCTETS: fe
+
071 TX OCTETS: fe
+
072 TX OCTETS: fe
+
073 TX OCTETS: fe
+
074 TX OCTETS: fe
+
075 TX OCTETS: fe
+
076 TX OCTETS: fe
+
077 TX OCTETS: fe
+
078 TX OCTETS: fe
+
079 TX OCTETS: fe
+
080 TX OCTETS: fe
+
081 TX OCTETS: fe
+
082 TX OCTETS: fe
+
083 TX OCTETS: fe
+
084 TX OCTETS: fe
+
085 TX OCTETS: fe
+
086 TX OCTETS: fe
+
087 TX OCTETS: fe
+
088 TX OCTETS: fe
+
089 TX OCTETS: fe
+
090 TX OCTETS: fe
+
091 TX OCTETS: fe
+
092 TX OCTETS: fe
+
093 TX OCTETS: fe
+
094 TX OCTETS: fe
+
095 TX OCTETS: fe
+
096 TX OCTETS: fe
+
097 TX OCTETS: fe
+
098 TX OCTETS: fe
+
099 TX OCTETS: fe
+
100 TX OCTETS: fe
+
101 TX OCTETS: fe
+
102 TX OCTETS: fe
+
103 TX OCTETS: fe
+
104 TX OCTETS: fe
+
105 TX OCTETS: fe
+
106 TX OCTETS: fe
+
107 TX OCTETS: fe
+
108 TX OCTETS: fe
+
109 TX OCTETS: fe
+
110 TX OCTETS: fe
+
111 TX OCTETS: fe
+
112 TX OCTETS: fe
+
113 TX OCTETS: fe
+
114 TX OCTETS: fe
+
115 TX OCTETS: fe
+
116 TX OCTETS: fe
+
117 TX OCTETS: fe
+
118 TX OCTETS: fe
+
119 TX OCTETS: fe
+
120 TX OCTETS: fe
+
121 TX OCTETS: fe
+
122 TX OCTETS: fe
+
123 TX OCTETS: fe
+
124 TX OCTETS: fe
+
125 TX OCTETS: fe
+
126 TX OCTETS: fe
+
127 TX OCTETS: fe
+
128 TX OCTETS: fe
+
129 TX OCTETS: fe
+
130 TX OCTETS: fe
+
131 RX OCTETS: 8afde516ca5f1be834a11be834a11be834a11be834a11be834a11be834a11be834a11be834a11be834a11be834a11be834a1
+
               1be834a11be834a11be834a11be8 ...
+
132 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=125, MASKED=True, MASK=6535313663613566
+
               0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+
               fefefefefefefefefefefefefefefe ...
+
133 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
134 TX OCTETS: 880203e8
+
135 RX OCTETS: 8882016200b5028a
+
136 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3031363230306235
+
               0x03e8
+
137 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_2_6.json b/autobahn/client/tungstenite_case_2_6.json new file mode 100644 index 0000000..8c7fe8c --- /dev/null +++ b/autobahn/client/tungstenite_case_2_6.json @@ -0,0 +1,1183 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 22, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send ping with binary payload of 125 octets, send in octet-wise chops.", + "droppedByMe": true, + "duration": 5, + "expectation": "Pong with payload echo'ed is sent in reply to Ping. Implementations must be TCP clean. Clean close with normal code.", + "expected": { + "OK": [ + [ + "pong", + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=22&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 3ufhCPEQ2ijo6QcQ8iSHhQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: iRMexi9B2aRJL2nP1k7sYWRb/8E=\r\n\r\n", + "id": "2.6", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "pong", + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1, + "10": 1 + }, + "rxOctetStats": { + "8": 1, + "131": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.916Z", + "trafficStats": null, + "txFrameStats": { + "8": 1, + "9": 1 + }, + "txOctetStats": { + "1": 127, + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3232266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 125, + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + 9, + true, + 0, + null, + null, + 1, + false + ], + [ + "TO", + [ + 1, + "89" + ], + true + ], + [ + "TI", + 2 + ], + [ + "TO", + [ + 1, + "7d" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "TO", + [ + 1, + "fe" + ], + true + ], + [ + "RO", + [ + 131, + "8afde516ca5f1be834a11be834a11be834a11be834a11be834a11be834a11be834a11be834a11be834a11be834a11be834a11be834a11be834a11be834a11be8 ..." + ] + ], + [ + "RF", + [ + 125, + "0xfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe ..." + ], + 10, + true, + 0, + true, + "e516ca5f" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882016200b5028a" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "016200b5" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_2_7.html b/autobahn/client/tungstenite_case_2_7.html new file mode 100644 index 0000000..e5e5200 --- /dev/null +++ b/autobahn/client/tungstenite_case_2_7.html @@ -0,0 +1,297 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 2.7 : Pass - 0 ms @ 2020-09-07T18:43:53.921Z

+

Case Description

Send unsolicited pong without payload. Verify nothing is received. Clean close with normal code.

+

Case Expectation

Nothing.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=23&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: bhrat0VGvW+Lo6v/Bcpz7w==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Z7Y0Uus1rPuJpiifNwTnF1PsffA=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2561256
Total2264
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
212
414
2061206
Total3212
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
81
101
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3233266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
003 TX OCTETS: 8a00
+
004 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
005 TX OCTETS: 880203e8
+
006 CLOSE CONNECTION AFTER 1.000000 sec
+
007 RX OCTETS: 88822486622f276e
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3234383636323266
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_2_7.json b/autobahn/client/tungstenite_case_2_7.json new file mode 100644 index 0000000..ceee3e8 --- /dev/null +++ b/autobahn/client/tungstenite_case_2_7.json @@ -0,0 +1,144 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 23, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send unsolicited pong without payload. Verify nothing is received. Clean close with normal code.", + "droppedByMe": true, + "duration": 0, + "expectation": "Nothing.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=23&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: bhrat0VGvW+Lo6v/Bcpz7w==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Z7Y0Uus1rPuJpiifNwTnF1PsffA=\r\n\r\n", + "id": "2.7", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.921Z", + "trafficStats": null, + "txFrameStats": { + "8": 1, + "10": 1 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3233266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 10, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8a00" + ], + false + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "TI", + 1 + ], + [ + "RO", + [ + 8, + "88822486622f276e" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "2486622f" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_2_8.html b/autobahn/client/tungstenite_case_2_8.html new file mode 100644 index 0000000..819af18 --- /dev/null +++ b/autobahn/client/tungstenite_case_2_8.html @@ -0,0 +1,298 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 2.8 : Pass - 0 ms @ 2020-09-07T18:43:53.922Z

+

Case Description

Send unsolicited pong with payload. Verify nothing is received. Clean close with normal code.

+

Case Expectation

Nothing.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=24&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ehxAE/swtSZmP8yapiBnlA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: KfWaiNhO6l/EBb6vtFm9Ii5wIoY=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2561256
Total2264
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
26126
2061206
Total3236
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
81
101
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3234266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=24, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               unsolicited pong payload
+
003 TX OCTETS: 8a18756e736f6c69636974656420706f6e67207061796c6f6164
+
004 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
005 TX OCTETS: 880203e8
+
006 CLOSE CONNECTION AFTER 1.000000 sec
+
007 RX OCTETS: 8882e763b4cde48b
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6537363362346364
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_2_8.json b/autobahn/client/tungstenite_case_2_8.json new file mode 100644 index 0000000..d2c626e --- /dev/null +++ b/autobahn/client/tungstenite_case_2_8.json @@ -0,0 +1,144 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 24, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send unsolicited pong with payload. Verify nothing is received. Clean close with normal code.", + "droppedByMe": true, + "duration": 0, + "expectation": "Nothing.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=24&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ehxAE/swtSZmP8yapiBnlA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: KfWaiNhO6l/EBb6vtFm9Ii5wIoY=\r\n\r\n", + "id": "2.8", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.922Z", + "trafficStats": null, + "txFrameStats": { + "8": 1, + "10": 1 + }, + "txOctetStats": { + "4": 1, + "26": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3234266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 24, + "unsolicited pong payload" + ], + 10, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 26, + "8a18756e736f6c69636974656420706f6e67207061796c6f6164" + ], + false + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "TI", + 1 + ], + [ + "RO", + [ + 8, + "8882e763b4cde48b" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "e763b4cd" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_2_9.html b/autobahn/client/tungstenite_case_2_9.html new file mode 100644 index 0000000..0c6359e --- /dev/null +++ b/autobahn/client/tungstenite_case_2_9.html @@ -0,0 +1,308 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 2.9 : Pass - 0 ms @ 2020-09-07T18:43:53.922Z

+

Case Description

Send unsolicited pong with payload. Send ping with payload. Verify pong for ping is received.

+

Case Expectation

Nothing in reply to own Pong, but Pong with payload echo'ed in reply to Ping. Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('pong', u'ping payload')]}

+ Observed:
[('pong', u'ping payload')] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=25&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: r/qdPv2FuY2KvDtT2stxgg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: EfuwnvnBdi/rRdQvxdj4Nc7adFQ=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
18118
2561256
Total3282
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
414
14114
26126
2061206
Total4250
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
81
101
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
81
91
101
Total3
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3235266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=24, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               unsolicited pong payload
+
003 TX OCTETS: 8a18756e736f6c69636974656420706f6e67207061796c6f6164
+
004 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=12, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ping payload
+
005 TX OCTETS: 890c70696e67207061796c6f6164
+
006 CLOSE CONNECTION AFTER 1.000000 sec
+
007 RX OCTETS: 8a8c6d7585cd1d1cebaa4d05e4b4011ae4a9
+
008 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=12, MASKED=True, MASK=3664373538356364
+
               ping payload
+
009 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
010 TX OCTETS: 880203e8
+
011 RX OCTETS: 8882d63617fcd5de
+
012 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6436333631376663
+
               0x03e8
+
013 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_2_9.json b/autobahn/client/tungstenite_case_2_9.json new file mode 100644 index 0000000..0018ef3 --- /dev/null +++ b/autobahn/client/tungstenite_case_2_9.json @@ -0,0 +1,199 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 25, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send unsolicited pong with payload. Send ping with payload. Verify pong for ping is received.", + "droppedByMe": true, + "duration": 0, + "expectation": "Nothing in reply to own Pong, but Pong with payload echo'ed in reply to Ping. Clean close with normal code.", + "expected": { + "OK": [ + [ + "pong", + "ping payload" + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=25&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: r/qdPv2FuY2KvDtT2stxgg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: EfuwnvnBdi/rRdQvxdj4Nc7adFQ=\r\n\r\n", + "id": "2.9", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "pong", + "ping payload" + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1, + "10": 1 + }, + "rxOctetStats": { + "8": 1, + "18": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.922Z", + "trafficStats": null, + "txFrameStats": { + "8": 1, + "9": 1, + "10": 1 + }, + "txOctetStats": { + "4": 1, + "14": 1, + "26": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3235266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 24, + "unsolicited pong payload" + ], + 10, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 26, + "8a18756e736f6c69636974656420706f6e67207061796c6f6164" + ], + false + ], + [ + "TF", + [ + 12, + "ping payload" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 14, + "890c70696e67207061796c6f6164" + ], + false + ], + [ + "TI", + 1 + ], + [ + "RO", + [ + 18, + "8a8c6d7585cd1d1cebaa4d05e4b4011ae4a9" + ] + ], + [ + "RF", + [ + 12, + "ping payload" + ], + 10, + true, + 0, + true, + "6d7585cd" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882d63617fcd5de" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "d63617fc" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_3_1.html b/autobahn/client/tungstenite_case_3_1.html new file mode 100644 index 0000000..53d869d --- /dev/null +++ b/autobahn/client/tungstenite_case_3_1.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 3.1 : Pass - 0 ms @ 2020-09-07T18:43:53.931Z

+

Case Description

Send small text message with RSV = 1.

+

Case Expectation

The connection is failed immediately (1002/protocol error), since RSV must be 0, when no extension defining RSV meaning has been negotiated.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=28&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 5KfQf+IT8WM82jw9UVpZOw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: qeujCELGQMKrVfXJvVMqTT/BAxo=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
15115
2061206
Total2221
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3238266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=1, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               Hello, world!
+
003 TX OCTETS: 910d48656c6c6f2c20776f726c6421
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_3_1.json b/autobahn/client/tungstenite_case_3_1.json new file mode 100644 index 0000000..bcc406a --- /dev/null +++ b/autobahn/client/tungstenite_case_3_1.json @@ -0,0 +1,98 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 28, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send small text message with RSV = 1.", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately (1002/protocol error), since RSV must be 0, when no extension defining RSV meaning has been negotiated.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=28&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 5KfQf+IT8WM82jw9UVpZOw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: qeujCELGQMKrVfXJvVMqTT/BAxo=\r\n\r\n", + "id": "3.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:53.931Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "15": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3238266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 1, + null, + null, + null, + false + ], + [ + "TO", + [ + 15, + "910d48656c6c6f2c20776f726c6421" + ], + false + ], + [ + "KL", + 1 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_3_2.html b/autobahn/client/tungstenite_case_3_2.html new file mode 100644 index 0000000..381e2c9 --- /dev/null +++ b/autobahn/client/tungstenite_case_3_2.html @@ -0,0 +1,300 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 3.2 : Pass - 0 ms @ 2020-09-07T18:43:53.931Z

+

Case Description

Send small text message, then send again with RSV = 2, then send Ping.

+

Case Expectation

Echo for first message is received, but then connection is failed immediately, since RSV must be 0, when no extension defining RSV meaning has been negotiated. The Pong is not received.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'NON-STRICT': [], 'OK': [('message', u'Hello, world!', False)]}

+ Observed:
[('message', u'Hello, world!', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=29&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: HWIgH9FI+IJnJqYhm7gUPg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: ekF+m0RY1ksKk9lDnSwZUNReIeM=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
19119
2561256
Total2275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
212
15230
2061206
Total4238
+

Frames Received by Opcode

+ + + + +
OpcodeCount
11
Total1
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
12
91
Total3
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3239266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               Hello, world!
+
003 TX OCTETS: 810d48656c6c6f2c20776f726c6421
+
004 TX FRAME : OPCODE=1, FIN=True, RSV=2, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               Hello, world!
+
005 TX OCTETS: a10d48656c6c6f2c20776f726c6421
+
006 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
007 TX OCTETS: 8900
+
008 FAIL CONNECTION AFTER 1.000000 sec
+
009 RX OCTETS: 818d11aae88a59cf84e67e86c8fd7ed884ee30
+
010 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASKED=True, MASK=3131616165383861
+
               Hello, world!
+
011 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_3_2.json b/autobahn/client/tungstenite_case_3_2.json new file mode 100644 index 0000000..850ea0e --- /dev/null +++ b/autobahn/client/tungstenite_case_3_2.json @@ -0,0 +1,179 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 29, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send small text message, then send again with RSV = 2, then send Ping.", + "droppedByMe": false, + "duration": 0, + "expectation": "Echo for first message is received, but then connection is failed immediately, since RSV must be 0, when no extension defining RSV meaning has been negotiated. The Pong is not received.", + "expected": { + "NON-STRICT": [], + "OK": [ + [ + "message", + "Hello, world!", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=29&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: HWIgH9FI+IJnJqYhm7gUPg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: ekF+m0RY1ksKk9lDnSwZUNReIeM=\r\n\r\n", + "id": "3.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [ + [ + "message", + "Hello, world!", + false + ] + ], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1 + }, + "rxOctetStats": { + "19": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.931Z", + "trafficStats": null, + "txFrameStats": { + "1": 2, + "9": 1 + }, + "txOctetStats": { + "2": 1, + "15": 2, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3239266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 15, + "810d48656c6c6f2c20776f726c6421" + ], + false + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 2, + null, + null, + null, + false + ], + [ + "TO", + [ + 15, + "a10d48656c6c6f2c20776f726c6421" + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8900" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 19, + "818d11aae88a59cf84e67e86c8fd7ed884ee30" + ] + ], + [ + "RF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + true, + "11aae88a" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_3_3.html b/autobahn/client/tungstenite_case_3_3.html new file mode 100644 index 0000000..897cd81 --- /dev/null +++ b/autobahn/client/tungstenite_case_3_3.html @@ -0,0 +1,300 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 3.3 : Pass - 0 ms @ 2020-09-07T18:43:53.932Z

+

Case Description

Send small text message, then send again with RSV = 3, then send Ping. Octets are sent in frame-wise chops. Octets are sent in octet-wise chops.

+

Case Expectation

Echo for first message is received, but then connection is failed immediately, since RSV must be 0, when no extension defining RSV meaning has been negotiated. The Pong is not received.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'NON-STRICT': [], 'OK': [('message', u'Hello, world!', False)]}

+ Observed:
[('message', u'Hello, world!', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=30&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ZVNBxdeyExHKTCCFMAJOSA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: LwcRA0ihIp7Bve6aEboWuHiXj0w=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
19119
2561256
Total2275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
212
15230
2061206
Total4238
+

Frames Received by Opcode

+ + + + +
OpcodeCount
11
Total1
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
12
91
Total3
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3330266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=True
+
               Hello, world!
+
003 TX OCTETS: 810d48656c6c6f2c20776f726c6421
+
004 TX FRAME : OPCODE=1, FIN=True, RSV=3, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=True
+
               Hello, world!
+
005 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=True
+
006 FAIL CONNECTION AFTER 1.000000 sec
+
007 TX OCTETS: b10d48656c6c6f2c20776f726c6421
+
008 TX OCTETS: 8900
+
009 RX OCTETS: 818d0cc8586544ad340963e4781263ba34012d
+
010 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASKED=True, MASK=3063633835383635
+
               Hello, world!
+
011 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_3_3.json b/autobahn/client/tungstenite_case_3_3.json new file mode 100644 index 0000000..dfe4404 --- /dev/null +++ b/autobahn/client/tungstenite_case_3_3.json @@ -0,0 +1,179 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 30, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send small text message, then send again with RSV = 3, then send Ping. Octets are sent in frame-wise chops. Octets are sent in octet-wise chops.", + "droppedByMe": false, + "duration": 0, + "expectation": "Echo for first message is received, but then connection is failed immediately, since RSV must be 0, when no extension defining RSV meaning has been negotiated. The Pong is not received.", + "expected": { + "NON-STRICT": [], + "OK": [ + [ + "message", + "Hello, world!", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=30&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ZVNBxdeyExHKTCCFMAJOSA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: LwcRA0ihIp7Bve6aEboWuHiXj0w=\r\n\r\n", + "id": "3.3", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [ + [ + "message", + "Hello, world!", + false + ] + ], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1 + }, + "rxOctetStats": { + "19": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.932Z", + "trafficStats": null, + "txFrameStats": { + "1": 2, + "9": 1 + }, + "txOctetStats": { + "2": 1, + "15": 2, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3330266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + null, + null, + null, + true + ], + [ + "TO", + [ + 15, + "810d48656c6c6f2c20776f726c6421" + ], + true + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 3, + null, + null, + null, + true + ], + [ + "TF", + [ + 0, + "" + ], + 9, + true, + 0, + null, + null, + null, + true + ], + [ + "KL", + 1 + ], + [ + "TO", + [ + 15, + "b10d48656c6c6f2c20776f726c6421" + ], + true + ], + [ + "TO", + [ + 2, + "8900" + ], + true + ], + [ + "RO", + [ + 19, + "818d0cc8586544ad340963e4781263ba34012d" + ] + ], + [ + "RF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + true, + "0cc85865" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_3_4.html b/autobahn/client/tungstenite_case_3_4.html new file mode 100644 index 0000000..91a049f --- /dev/null +++ b/autobahn/client/tungstenite_case_3_4.html @@ -0,0 +1,327 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 3.4 : Pass - 1 ms @ 2020-09-07T18:43:53.933Z

+

Case Description

Send small text message, then send again with RSV = 4, then send Ping. Octets are sent in octet-wise chops.

+

Case Expectation

Echo for first message is received, but then connection is failed immediately, since RSV must be 0, when no extension defining RSV meaning has been negotiated. The Pong is not received.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'NON-STRICT': [], 'OK': [('message', u'Hello, world!', False)]}

+ Observed:
[('message', u'Hello, world!', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=31&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ccRoKsews9SJkSAWc0jsHw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: ZeiM7jLOaodjUzV0gRJiZ+XQNWo=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
19119
2561256
Total2275
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
13131
2061206
Total32237
+

Frames Received by Opcode

+ + + + +
OpcodeCount
11
Total1
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
12
91
Total3
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3331266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               Hello, world!
+
003 TX OCTETS: 81
+
004 TX FRAME : OPCODE=1, FIN=True, RSV=4, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               Hello, world!
+
005 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
006 FAIL CONNECTION AFTER 1.000000 sec
+
007 TX OCTETS: 0d
+
008 TX OCTETS: 48
+
009 TX OCTETS: 65
+
010 TX OCTETS: 6c
+
011 TX OCTETS: 6c
+
012 TX OCTETS: 6f
+
013 TX OCTETS: 2c
+
014 TX OCTETS: 20
+
015 TX OCTETS: 77
+
016 TX OCTETS: 6f
+
017 TX OCTETS: 72
+
018 TX OCTETS: 6c
+
019 TX OCTETS: 64
+
020 TX OCTETS: 21
+
021 TX OCTETS: c1
+
022 RX OCTETS: 818d70d5a73638b0cb5a1ff987411fa7cb5251
+
023 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASKED=True, MASK=3730643561373336
+
               Hello, world!
+
024 TX OCTETS: 0d
+
025 TX OCTETS: 48
+
026 TX OCTETS: 65
+
027 TX OCTETS: 6c
+
028 TX OCTETS: 6c
+
029 TX OCTETS: 6f
+
030 TX OCTETS: 2c
+
031 TX OCTETS: 20
+
032 TX OCTETS: 77
+
033 TX OCTETS: 6f
+
034 TX OCTETS: 72
+
035 TX OCTETS: 6c
+
036 TX OCTETS: 64
+
037 TX OCTETS: 21
+
038 TX OCTETS: 89
+
039 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_3_4.json b/autobahn/client/tungstenite_case_3_4.json new file mode 100644 index 0000000..93e01a4 --- /dev/null +++ b/autobahn/client/tungstenite_case_3_4.json @@ -0,0 +1,402 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 31, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send small text message, then send again with RSV = 4, then send Ping. Octets are sent in octet-wise chops.", + "droppedByMe": false, + "duration": 1, + "expectation": "Echo for first message is received, but then connection is failed immediately, since RSV must be 0, when no extension defining RSV meaning has been negotiated. The Pong is not received.", + "expected": { + "NON-STRICT": [], + "OK": [ + [ + "message", + "Hello, world!", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=31&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ccRoKsews9SJkSAWc0jsHw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: ZeiM7jLOaodjUzV0gRJiZ+XQNWo=\r\n\r\n", + "id": "3.4", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [ + [ + "message", + "Hello, world!", + false + ] + ], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1 + }, + "rxOctetStats": { + "19": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.933Z", + "trafficStats": null, + "txFrameStats": { + "1": 2, + "9": 1 + }, + "txOctetStats": { + "1": 31, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3331266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + null, + null, + 1, + false + ], + [ + "TO", + [ + 1, + "81" + ], + true + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 4, + null, + null, + 1, + false + ], + [ + "TF", + [ + 0, + "" + ], + 9, + true, + 0, + null, + null, + 1, + false + ], + [ + "KL", + 1 + ], + [ + "TO", + [ + 1, + "0d" + ], + true + ], + [ + "TO", + [ + 1, + "48" + ], + true + ], + [ + "TO", + [ + 1, + "65" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "2c" + ], + true + ], + [ + "TO", + [ + 1, + "20" + ], + true + ], + [ + "TO", + [ + 1, + "77" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "72" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "64" + ], + true + ], + [ + "TO", + [ + 1, + "21" + ], + true + ], + [ + "TO", + [ + 1, + "c1" + ], + true + ], + [ + "RO", + [ + 19, + "818d70d5a73638b0cb5a1ff987411fa7cb5251" + ] + ], + [ + "RF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + true, + "70d5a736" + ], + [ + "TO", + [ + 1, + "0d" + ], + true + ], + [ + "TO", + [ + 1, + "48" + ], + true + ], + [ + "TO", + [ + 1, + "65" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "2c" + ], + true + ], + [ + "TO", + [ + 1, + "20" + ], + true + ], + [ + "TO", + [ + 1, + "77" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "72" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "64" + ], + true + ], + [ + "TO", + [ + 1, + "21" + ], + true + ], + [ + "TO", + [ + 1, + "89" + ], + true + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_3_5.html b/autobahn/client/tungstenite_case_3_5.html new file mode 100644 index 0000000..8307610 --- /dev/null +++ b/autobahn/client/tungstenite_case_3_5.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 3.5 : Pass - 0 ms @ 2020-09-07T18:43:53.935Z

+

Case Description

Send small binary message with RSV = 5.

+

Case Expectation

The connection is failed immediately, since RSV must be 0.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=32&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: crpovMjLRKbfyK1vkTP8pg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Qz83Sr/WRUFmvQJNgrWXWScL9JU=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
10110
2061206
Total2216
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
21
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3332266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=2, FIN=True, RSV=5, PAYLOAD-LEN=8, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x00fffefdfcfb00ff
+
003 TX OCTETS: d20800fffefdfcfb00ff
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_3_5.json b/autobahn/client/tungstenite_case_3_5.json new file mode 100644 index 0000000..12b28e0 --- /dev/null +++ b/autobahn/client/tungstenite_case_3_5.json @@ -0,0 +1,98 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 32, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send small binary message with RSV = 5.", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since RSV must be 0.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=32&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: crpovMjLRKbfyK1vkTP8pg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Qz83Sr/WRUFmvQJNgrWXWScL9JU=\r\n\r\n", + "id": "3.5", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:53.935Z", + "trafficStats": null, + "txFrameStats": { + "2": 1 + }, + "txOctetStats": { + "10": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3332266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 8, + "0x00fffefdfcfb00ff" + ], + 2, + true, + 5, + null, + null, + null, + false + ], + [ + "TO", + [ + 10, + "d20800fffefdfcfb00ff" + ], + false + ], + [ + "KL", + 1 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_3_6.html b/autobahn/client/tungstenite_case_3_6.html new file mode 100644 index 0000000..dfb3b83 --- /dev/null +++ b/autobahn/client/tungstenite_case_3_6.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 3.6 : Pass - 0 ms @ 2020-09-07T18:43:53.935Z

+

Case Description

Send Ping with RSV = 6.

+

Case Expectation

The connection is failed immediately, since RSV must be 0.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=33&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: TJN7+QhmhLr3VH4oclNWqg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: naLIkBtOmj5S1uyc39uiqT5J5FY=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
15115
2061206
Total2221
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
21
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3333266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=2, FIN=True, RSV=6, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               Hello, world!
+
003 TX OCTETS: e20d48656c6c6f2c20776f726c6421
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_3_6.json b/autobahn/client/tungstenite_case_3_6.json new file mode 100644 index 0000000..bf5885c --- /dev/null +++ b/autobahn/client/tungstenite_case_3_6.json @@ -0,0 +1,98 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 33, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send Ping with RSV = 6.", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since RSV must be 0.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=33&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: TJN7+QhmhLr3VH4oclNWqg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: naLIkBtOmj5S1uyc39uiqT5J5FY=\r\n\r\n", + "id": "3.6", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:53.935Z", + "trafficStats": null, + "txFrameStats": { + "2": 1 + }, + "txOctetStats": { + "15": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3333266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 2, + true, + 6, + null, + null, + null, + false + ], + [ + "TO", + [ + 15, + "e20d48656c6c6f2c20776f726c6421" + ], + false + ], + [ + "KL", + 1 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_3_7.html b/autobahn/client/tungstenite_case_3_7.html new file mode 100644 index 0000000..19c25b6 --- /dev/null +++ b/autobahn/client/tungstenite_case_3_7.html @@ -0,0 +1,287 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 3.7 : Pass - 0 ms @ 2020-09-07T18:43:53.936Z

+

Case Description

Send Close with RSV = 7.

+

Case Expectation

The connection is failed immediately, since RSV must be 0.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=34&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: HqhnMJK/RSpsftbsoHONdg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: pFnWGGIZnKZibco71DDVR9Thx0A=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
212
2061206
Total2208
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3334266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=7, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
003 TX OCTETS: f800
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_3_7.json b/autobahn/client/tungstenite_case_3_7.json new file mode 100644 index 0000000..cf5b407 --- /dev/null +++ b/autobahn/client/tungstenite_case_3_7.json @@ -0,0 +1,98 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 34, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send Close with RSV = 7.", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since RSV must be 0.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=34&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: HqhnMJK/RSpsftbsoHONdg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: pFnWGGIZnKZibco71DDVR9Thx0A=\r\n\r\n", + "id": "3.7", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:53.936Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "2": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3334266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 8, + true, + 7, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "f800" + ], + false + ], + [ + "KL", + 1 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_4_1_1.html b/autobahn/client/tungstenite_case_4_1_1.html new file mode 100644 index 0000000..2e9dfcc --- /dev/null +++ b/autobahn/client/tungstenite_case_4_1_1.html @@ -0,0 +1,287 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 4.1.1 : Pass - 0 ms @ 2020-09-07T18:43:53.936Z

+

Case Description

Send frame with reserved non-control Opcode = 3.

+

Case Expectation

The connection is failed immediately.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=35&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: rzL39Cv7GAJw+24ZzchKnA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: b6H/10KmVn2gvDrwD/Z7O21ppb8=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
212
2061206
Total2208
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
31
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3335266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=3, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
003 TX OCTETS: 8300
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_4_1_1.json b/autobahn/client/tungstenite_case_4_1_1.json new file mode 100644 index 0000000..dba107c --- /dev/null +++ b/autobahn/client/tungstenite_case_4_1_1.json @@ -0,0 +1,98 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 35, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send frame with reserved non-control Opcode = 3.", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=35&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: rzL39Cv7GAJw+24ZzchKnA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: b6H/10KmVn2gvDrwD/Z7O21ppb8=\r\n\r\n", + "id": "4.1.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:53.936Z", + "trafficStats": null, + "txFrameStats": { + "3": 1 + }, + "txOctetStats": { + "2": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3335266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 3, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8300" + ], + false + ], + [ + "KL", + 1 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_4_1_2.html b/autobahn/client/tungstenite_case_4_1_2.html new file mode 100644 index 0000000..2602a10 --- /dev/null +++ b/autobahn/client/tungstenite_case_4_1_2.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 4.1.2 : Pass - 0 ms @ 2020-09-07T18:43:53.937Z

+

Case Description

Send frame with reserved non-control Opcode = 4 and non-empty payload.

+

Case Expectation

The connection is failed immediately.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=36&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: tajp7zckLGr5VpPoSEcRVw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: CnNxS/uixc9wA+kNgrjGsBRViiE=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
25125
2061206
Total2231
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
41
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3336266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=4, FIN=True, RSV=0, PAYLOAD-LEN=23, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               reserved opcode payload
+
003 TX OCTETS: 84177265736572766564206f70636f6465207061796c6f6164
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_4_1_2.json b/autobahn/client/tungstenite_case_4_1_2.json new file mode 100644 index 0000000..5377078 --- /dev/null +++ b/autobahn/client/tungstenite_case_4_1_2.json @@ -0,0 +1,98 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 36, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send frame with reserved non-control Opcode = 4 and non-empty payload.", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=36&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: tajp7zckLGr5VpPoSEcRVw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: CnNxS/uixc9wA+kNgrjGsBRViiE=\r\n\r\n", + "id": "4.1.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:53.937Z", + "trafficStats": null, + "txFrameStats": { + "4": 1 + }, + "txOctetStats": { + "25": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3336266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 23, + "reserved opcode payload" + ], + 4, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 25, + "84177265736572766564206f70636f6465207061796c6f6164" + ], + false + ], + [ + "KL", + 1 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_4_1_3.html b/autobahn/client/tungstenite_case_4_1_3.html new file mode 100644 index 0000000..3fd6072 --- /dev/null +++ b/autobahn/client/tungstenite_case_4_1_3.html @@ -0,0 +1,300 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 4.1.3 : Pass - 0 ms @ 2020-09-07T18:43:53.937Z

+

Case Description

Send small text message, then send frame with reserved non-control Opcode = 5, then send Ping.

+

Case Expectation

Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'NON-STRICT': [], 'OK': [('message', u'Hello, world!', False)]}

+ Observed:
[('message', u'Hello, world!', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=37&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: HBOYniXINpz7dX8xCqRO3A==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 1MmJuQw4OskS8RKDlm8/Q4hzIiA=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
19119
2561256
Total2275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
224
15115
2061206
Total4225
+

Frames Received by Opcode

+ + + + +
OpcodeCount
11
Total1
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
11
51
91
Total3
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3337266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               Hello, world!
+
003 TX OCTETS: 810d48656c6c6f2c20776f726c6421
+
004 TX FRAME : OPCODE=5, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
005 TX OCTETS: 8500
+
006 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
007 TX OCTETS: 8900
+
008 FAIL CONNECTION AFTER 1.000000 sec
+
009 RX OCTETS: 818ddb92ca7a93f7a616b4beea0db4e0a61efa
+
010 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASKED=True, MASK=6462393263613761
+
               Hello, world!
+
011 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_4_1_3.json b/autobahn/client/tungstenite_case_4_1_3.json new file mode 100644 index 0000000..71b52bf --- /dev/null +++ b/autobahn/client/tungstenite_case_4_1_3.json @@ -0,0 +1,180 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 37, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send small text message, then send frame with reserved non-control Opcode = 5, then send Ping.", + "droppedByMe": false, + "duration": 0, + "expectation": "Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.", + "expected": { + "NON-STRICT": [], + "OK": [ + [ + "message", + "Hello, world!", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=37&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: HBOYniXINpz7dX8xCqRO3A==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 1MmJuQw4OskS8RKDlm8/Q4hzIiA=\r\n\r\n", + "id": "4.1.3", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [ + [ + "message", + "Hello, world!", + false + ] + ], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1 + }, + "rxOctetStats": { + "19": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.937Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "5": 1, + "9": 1 + }, + "txOctetStats": { + "2": 2, + "15": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3337266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 15, + "810d48656c6c6f2c20776f726c6421" + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 5, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8500" + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8900" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 19, + "818ddb92ca7a93f7a616b4beea0db4e0a61efa" + ] + ], + [ + "RF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + true, + "db92ca7a" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_4_1_4.html b/autobahn/client/tungstenite_case_4_1_4.html new file mode 100644 index 0000000..e0d3dcf --- /dev/null +++ b/autobahn/client/tungstenite_case_4_1_4.html @@ -0,0 +1,301 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 4.1.4 : Pass - 0 ms @ 2020-09-07T18:43:53.938Z

+

Case Description

Send small text message, then send frame with reserved non-control Opcode = 6 and non-empty payload, then send Ping.

+

Case Expectation

Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'NON-STRICT': [], 'OK': [('message', u'Hello, world!', False)]}

+ Observed:
[('message', u'Hello, world!', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=38&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: HU64gJPXtqQfWR/4eHbN7g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: E/2j8+BMbb1/wy0kMgRwpJf7OR0=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
19119
2561256
Total2275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
212
15230
2061206
Total4238
+

Frames Received by Opcode

+ + + + +
OpcodeCount
11
Total1
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
11
61
91
Total3
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3338266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               Hello, world!
+
003 TX OCTETS: 810d48656c6c6f2c20776f726c6421
+
004 TX FRAME : OPCODE=6, FIN=True, RSV=0, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               Hello, world!
+
005 TX OCTETS: 860d48656c6c6f2c20776f726c6421
+
006 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
007 TX OCTETS: 8900
+
008 FAIL CONNECTION AFTER 1.000000 sec
+
009 RX OCTETS: 818d6241f38e2a249fe20d6dd3f90d339fea43
+
010 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASKED=True, MASK=3632343166333865
+
               Hello, world!
+
011 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_4_1_4.json b/autobahn/client/tungstenite_case_4_1_4.json new file mode 100644 index 0000000..9acbf2b --- /dev/null +++ b/autobahn/client/tungstenite_case_4_1_4.json @@ -0,0 +1,180 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 38, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send small text message, then send frame with reserved non-control Opcode = 6 and non-empty payload, then send Ping.", + "droppedByMe": false, + "duration": 0, + "expectation": "Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.", + "expected": { + "NON-STRICT": [], + "OK": [ + [ + "message", + "Hello, world!", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=38&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: HU64gJPXtqQfWR/4eHbN7g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: E/2j8+BMbb1/wy0kMgRwpJf7OR0=\r\n\r\n", + "id": "4.1.4", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [ + [ + "message", + "Hello, world!", + false + ] + ], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1 + }, + "rxOctetStats": { + "19": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.938Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "6": 1, + "9": 1 + }, + "txOctetStats": { + "2": 1, + "15": 2, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3338266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 15, + "810d48656c6c6f2c20776f726c6421" + ], + false + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 6, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 15, + "860d48656c6c6f2c20776f726c6421" + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8900" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 19, + "818d6241f38e2a249fe20d6dd3f90d339fea43" + ] + ], + [ + "RF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + true, + "6241f38e" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_4_1_5.html b/autobahn/client/tungstenite_case_4_1_5.html new file mode 100644 index 0000000..c5626b0 --- /dev/null +++ b/autobahn/client/tungstenite_case_4_1_5.html @@ -0,0 +1,315 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 4.1.5 : Pass - 1 ms @ 2020-09-07T18:43:53.939Z

+

Case Description

Send small text message, then send frame with reserved non-control Opcode = 7 and non-empty payload, then send Ping.

+

Case Expectation

Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'NON-STRICT': [], 'OK': [('message', u'Hello, world!', False)]}

+ Observed:
[('message', u'Hello, world!', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=39&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: HzApLtl9/TQQJqv7ptA3nw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: qCcSmzWGwnoKMFq5Pw/wkg+/MMs=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
19119
2561256
Total2275
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
11818
2061206
Total19224
+

Frames Received by Opcode

+ + + + +
OpcodeCount
11
Total1
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
11
71
91
Total3
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3339266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               Hello, world!
+
003 TX OCTETS: 81
+
004 TX FRAME : OPCODE=7, FIN=True, RSV=0, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               Hello, world!
+
005 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
006 FAIL CONNECTION AFTER 1.000000 sec
+
007 TX OCTETS: 0d
+
008 TX OCTETS: 48
+
009 TX OCTETS: 65
+
010 TX OCTETS: 6c
+
011 TX OCTETS: 6c
+
012 TX OCTETS: 6f
+
013 TX OCTETS: 2c
+
014 TX OCTETS: 20
+
015 TX OCTETS: 77
+
016 TX OCTETS: 6f
+
017 TX OCTETS: 72
+
018 TX OCTETS: 6c
+
019 TX OCTETS: 64
+
020 TX OCTETS: 21
+
021 TX OCTETS: 87
+
022 RX OCTETS: 818d81e063fac9850f96eecc438dee920f9ea0
+
023 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASKED=True, MASK=3831653036336661
+
               Hello, world!
+
024 TX OCTETS: 0d
+
025 TX OCTETS: 48
+
026 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_4_1_5.json b/autobahn/client/tungstenite_case_4_1_5.json new file mode 100644 index 0000000..f6e92b6 --- /dev/null +++ b/autobahn/client/tungstenite_case_4_1_5.json @@ -0,0 +1,299 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 39, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send small text message, then send frame with reserved non-control Opcode = 7 and non-empty payload, then send Ping.", + "droppedByMe": false, + "duration": 1, + "expectation": "Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.", + "expected": { + "NON-STRICT": [], + "OK": [ + [ + "message", + "Hello, world!", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=39&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: HzApLtl9/TQQJqv7ptA3nw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: qCcSmzWGwnoKMFq5Pw/wkg+/MMs=\r\n\r\n", + "id": "4.1.5", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [ + [ + "message", + "Hello, world!", + false + ] + ], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1 + }, + "rxOctetStats": { + "19": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.939Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "7": 1, + "9": 1 + }, + "txOctetStats": { + "1": 18, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3339266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + null, + null, + 1, + false + ], + [ + "TO", + [ + 1, + "81" + ], + true + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 7, + true, + 0, + null, + null, + 1, + false + ], + [ + "TF", + [ + 0, + "" + ], + 9, + true, + 0, + null, + null, + 1, + false + ], + [ + "KL", + 1 + ], + [ + "TO", + [ + 1, + "0d" + ], + true + ], + [ + "TO", + [ + 1, + "48" + ], + true + ], + [ + "TO", + [ + 1, + "65" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "2c" + ], + true + ], + [ + "TO", + [ + 1, + "20" + ], + true + ], + [ + "TO", + [ + 1, + "77" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "72" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "64" + ], + true + ], + [ + "TO", + [ + 1, + "21" + ], + true + ], + [ + "TO", + [ + 1, + "87" + ], + true + ], + [ + "RO", + [ + 19, + "818d81e063fac9850f96eecc438dee920f9ea0" + ] + ], + [ + "RF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + true, + "81e063fa" + ], + [ + "TO", + [ + 1, + "0d" + ], + true + ], + [ + "TO", + [ + 1, + "48" + ], + true + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_4_2_1.html b/autobahn/client/tungstenite_case_4_2_1.html new file mode 100644 index 0000000..e9952ff --- /dev/null +++ b/autobahn/client/tungstenite_case_4_2_1.html @@ -0,0 +1,287 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 4.2.1 : Pass - 0 ms @ 2020-09-07T18:43:53.940Z

+

Case Description

Send frame with reserved control Opcode = 11.

+

Case Expectation

The connection is failed immediately.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=40&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: GPJm4QEKaysNPmgnycyLRA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: cDZuXdbKaaqtYqqvVKufExOH5N8=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
212
2061206
Total2208
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
111
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3430266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=11, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
003 TX OCTETS: 8b00
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_4_2_1.json b/autobahn/client/tungstenite_case_4_2_1.json new file mode 100644 index 0000000..eef7194 --- /dev/null +++ b/autobahn/client/tungstenite_case_4_2_1.json @@ -0,0 +1,98 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 40, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send frame with reserved control Opcode = 11.", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=40&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: GPJm4QEKaysNPmgnycyLRA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: cDZuXdbKaaqtYqqvVKufExOH5N8=\r\n\r\n", + "id": "4.2.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:53.940Z", + "trafficStats": null, + "txFrameStats": { + "11": 1 + }, + "txOctetStats": { + "2": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3430266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 11, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8b00" + ], + false + ], + [ + "KL", + 1 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_4_2_2.html b/autobahn/client/tungstenite_case_4_2_2.html new file mode 100644 index 0000000..8386a6e --- /dev/null +++ b/autobahn/client/tungstenite_case_4_2_2.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 4.2.2 : Pass - 0 ms @ 2020-09-07T18:43:53.941Z

+

Case Description

Send frame with reserved control Opcode = 12 and non-empty payload.

+

Case Expectation

The connection is failed immediately.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=41&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: FPDTHFyAj3cn1cyYwUvuEg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: uMmxTVXoWwOe6Jty8EQL+blaaK0=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
25125
2061206
Total2231
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
121
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3431266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=12, FIN=True, RSV=0, PAYLOAD-LEN=23, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               reserved opcode payload
+
003 TX OCTETS: 8c177265736572766564206f70636f6465207061796c6f6164
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_4_2_2.json b/autobahn/client/tungstenite_case_4_2_2.json new file mode 100644 index 0000000..614324a --- /dev/null +++ b/autobahn/client/tungstenite_case_4_2_2.json @@ -0,0 +1,98 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 41, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send frame with reserved control Opcode = 12 and non-empty payload.", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=41&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: FPDTHFyAj3cn1cyYwUvuEg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: uMmxTVXoWwOe6Jty8EQL+blaaK0=\r\n\r\n", + "id": "4.2.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:53.941Z", + "trafficStats": null, + "txFrameStats": { + "12": 1 + }, + "txOctetStats": { + "25": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3431266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 23, + "reserved opcode payload" + ], + 12, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 25, + "8c177265736572766564206f70636f6465207061796c6f6164" + ], + false + ], + [ + "KL", + 1 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_4_2_3.html b/autobahn/client/tungstenite_case_4_2_3.html new file mode 100644 index 0000000..07714bc --- /dev/null +++ b/autobahn/client/tungstenite_case_4_2_3.html @@ -0,0 +1,300 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 4.2.3 : Pass - 0 ms @ 2020-09-07T18:43:53.941Z

+

Case Description

Send small text message, then send frame with reserved control Opcode = 13, then send Ping.

+

Case Expectation

Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'NON-STRICT': [], 'OK': [('message', u'Hello, world!', False)]}

+ Observed:
[('message', u'Hello, world!', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=42&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: pPWat6BG3TFMYhJwizRD6A==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: b3acje9kTPzT4xQ78FAVi/ZNWjM=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
19119
2561256
Total2275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
224
15115
2061206
Total4225
+

Frames Received by Opcode

+ + + + +
OpcodeCount
11
Total1
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
11
91
131
Total3
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3432266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               Hello, world!
+
003 TX OCTETS: 810d48656c6c6f2c20776f726c6421
+
004 TX FRAME : OPCODE=13, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
005 TX OCTETS: 8d00
+
006 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
007 TX OCTETS: 8900
+
008 FAIL CONNECTION AFTER 1.000000 sec
+
009 RX OCTETS: 818d41fd0864099864082ed128132e8f640060
+
010 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASKED=True, MASK=3431666430383634
+
               Hello, world!
+
011 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_4_2_3.json b/autobahn/client/tungstenite_case_4_2_3.json new file mode 100644 index 0000000..0bd0363 --- /dev/null +++ b/autobahn/client/tungstenite_case_4_2_3.json @@ -0,0 +1,180 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 42, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send small text message, then send frame with reserved control Opcode = 13, then send Ping.", + "droppedByMe": false, + "duration": 0, + "expectation": "Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.", + "expected": { + "NON-STRICT": [], + "OK": [ + [ + "message", + "Hello, world!", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=42&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: pPWat6BG3TFMYhJwizRD6A==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: b3acje9kTPzT4xQ78FAVi/ZNWjM=\r\n\r\n", + "id": "4.2.3", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [ + [ + "message", + "Hello, world!", + false + ] + ], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1 + }, + "rxOctetStats": { + "19": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.941Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "9": 1, + "13": 1 + }, + "txOctetStats": { + "2": 2, + "15": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3432266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 15, + "810d48656c6c6f2c20776f726c6421" + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 13, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8d00" + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8900" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 19, + "818d41fd0864099864082ed128132e8f640060" + ] + ], + [ + "RF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + true, + "41fd0864" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_4_2_4.html b/autobahn/client/tungstenite_case_4_2_4.html new file mode 100644 index 0000000..55241cf --- /dev/null +++ b/autobahn/client/tungstenite_case_4_2_4.html @@ -0,0 +1,301 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 4.2.4 : Pass - 0 ms @ 2020-09-07T18:43:53.942Z

+

Case Description

Send small text message, then send frame with reserved control Opcode = 14 and non-empty payload, then send Ping.

+

Case Expectation

Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'NON-STRICT': [], 'OK': [('message', u'Hello, world!', False)]}

+ Observed:
[('message', u'Hello, world!', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=43&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: qAUqy1CqgNIO1DEGkN/upA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: uLu3kcxuZbQdU632krvetPUUvLI=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
19119
2561256
Total2275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
212
15230
2061206
Total4238
+

Frames Received by Opcode

+ + + + +
OpcodeCount
11
Total1
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
11
91
141
Total3
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3433266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               Hello, world!
+
003 TX OCTETS: 810d48656c6c6f2c20776f726c6421
+
004 TX FRAME : OPCODE=14, FIN=True, RSV=0, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               Hello, world!
+
005 TX OCTETS: 8e0d48656c6c6f2c20776f726c6421
+
006 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
007 TX OCTETS: 8900
+
008 FAIL CONNECTION AFTER 1.000000 sec
+
009 RX OCTETS: 818dfe988aa4b6fde6c891b4aad391eae6c0df
+
010 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASKED=True, MASK=6665393838616134
+
               Hello, world!
+
011 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_4_2_4.json b/autobahn/client/tungstenite_case_4_2_4.json new file mode 100644 index 0000000..b3939f9 --- /dev/null +++ b/autobahn/client/tungstenite_case_4_2_4.json @@ -0,0 +1,180 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 43, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send small text message, then send frame with reserved control Opcode = 14 and non-empty payload, then send Ping.", + "droppedByMe": false, + "duration": 0, + "expectation": "Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.", + "expected": { + "NON-STRICT": [], + "OK": [ + [ + "message", + "Hello, world!", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=43&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: qAUqy1CqgNIO1DEGkN/upA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: uLu3kcxuZbQdU632krvetPUUvLI=\r\n\r\n", + "id": "4.2.4", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [ + [ + "message", + "Hello, world!", + false + ] + ], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1 + }, + "rxOctetStats": { + "19": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.942Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "9": 1, + "14": 1 + }, + "txOctetStats": { + "2": 1, + "15": 2, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3433266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 15, + "810d48656c6c6f2c20776f726c6421" + ], + false + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 14, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 15, + "8e0d48656c6c6f2c20776f726c6421" + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8900" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 19, + "818dfe988aa4b6fde6c891b4aad391eae6c0df" + ] + ], + [ + "RF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + true, + "fe988aa4" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_4_2_5.html b/autobahn/client/tungstenite_case_4_2_5.html new file mode 100644 index 0000000..b1d47d1 --- /dev/null +++ b/autobahn/client/tungstenite_case_4_2_5.html @@ -0,0 +1,315 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 4.2.5 : Pass - 1 ms @ 2020-09-07T18:43:53.942Z

+

Case Description

Send small text message, then send frame with reserved control Opcode = 15 and non-empty payload, then send Ping.

+

Case Expectation

Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'NON-STRICT': [], 'OK': [('message', u'Hello, world!', False)]}

+ Observed:
[('message', u'Hello, world!', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=44&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: SzyxpTcOYpupa73QT8B7Xg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: uxJ7MJ4RZTja3zw5/kZ5Patp/4M=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
19119
2561256
Total2275
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
11818
2061206
Total19224
+

Frames Received by Opcode

+ + + + +
OpcodeCount
11
Total1
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
11
91
151
Total3
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3434266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               Hello, world!
+
003 TX OCTETS: 81
+
004 TX FRAME : OPCODE=15, FIN=True, RSV=0, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               Hello, world!
+
005 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
006 FAIL CONNECTION AFTER 1.000000 sec
+
007 TX OCTETS: 0d
+
008 TX OCTETS: 48
+
009 TX OCTETS: 65
+
010 TX OCTETS: 6c
+
011 TX OCTETS: 6c
+
012 TX OCTETS: 6f
+
013 TX OCTETS: 2c
+
014 TX OCTETS: 20
+
015 TX OCTETS: 77
+
016 TX OCTETS: 6f
+
017 TX OCTETS: 72
+
018 TX OCTETS: 6c
+
019 TX OCTETS: 64
+
020 TX OCTETS: 21
+
021 TX OCTETS: 8f
+
022 RX OCTETS: 818d7ac76ebb32a202d715eb4ecc15b502df5b
+
023 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASKED=True, MASK=3761633736656262
+
               Hello, world!
+
024 TX OCTETS: 0d
+
025 TX OCTETS: 48
+
026 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_4_2_5.json b/autobahn/client/tungstenite_case_4_2_5.json new file mode 100644 index 0000000..95640f4 --- /dev/null +++ b/autobahn/client/tungstenite_case_4_2_5.json @@ -0,0 +1,299 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 44, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send small text message, then send frame with reserved control Opcode = 15 and non-empty payload, then send Ping.", + "droppedByMe": false, + "duration": 1, + "expectation": "Echo for first message is received, but then connection is failed immediately, since reserved opcode frame is used. A Pong is not received.", + "expected": { + "NON-STRICT": [], + "OK": [ + [ + "message", + "Hello, world!", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=44&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: SzyxpTcOYpupa73QT8B7Xg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: uxJ7MJ4RZTja3zw5/kZ5Patp/4M=\r\n\r\n", + "id": "4.2.5", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [ + [ + "message", + "Hello, world!", + false + ] + ], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1 + }, + "rxOctetStats": { + "19": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.942Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "9": 1, + "15": 1 + }, + "txOctetStats": { + "1": 18, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3434266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + null, + null, + 1, + false + ], + [ + "TO", + [ + 1, + "81" + ], + true + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 15, + true, + 0, + null, + null, + 1, + false + ], + [ + "TF", + [ + 0, + "" + ], + 9, + true, + 0, + null, + null, + 1, + false + ], + [ + "KL", + 1 + ], + [ + "TO", + [ + 1, + "0d" + ], + true + ], + [ + "TO", + [ + 1, + "48" + ], + true + ], + [ + "TO", + [ + 1, + "65" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "2c" + ], + true + ], + [ + "TO", + [ + 1, + "20" + ], + true + ], + [ + "TO", + [ + 1, + "77" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "72" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "64" + ], + true + ], + [ + "TO", + [ + 1, + "21" + ], + true + ], + [ + "TO", + [ + 1, + "8f" + ], + true + ], + [ + "RO", + [ + 19, + "818d7ac76ebb32a202d715eb4ecc15b502df5b" + ] + ], + [ + "RF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + true, + "7ac76ebb" + ], + [ + "TO", + [ + 1, + "0d" + ], + true + ], + [ + "TO", + [ + 1, + "48" + ], + true + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_5_1.html b/autobahn/client/tungstenite_case_5_1.html new file mode 100644 index 0000000..0097ff0 --- /dev/null +++ b/autobahn/client/tungstenite_case_5_1.html @@ -0,0 +1,292 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 5.1 : Pass - 0 ms @ 2020-09-07T18:43:53.944Z

+

Case Description

Send Ping fragmented into 2 fragments.

+

Case Expectation

Connection is failed immediately, since control message MUST NOT be fragmented.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=45&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: b288vDBu+Z72pTZAXnsZ0A==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: SL6Od+pgvFw2mCk1mBfMRm5Rjlc=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
11222
2061206
Total3228
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
01
91
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3435266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=9, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment1
+
003 TX OCTETS: 0909667261676d656e7431
+
004 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment2
+
005 TX OCTETS: 8009667261676d656e7432
+
006 FAIL CONNECTION AFTER 1.000000 sec
+
007 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_5_1.json b/autobahn/client/tungstenite_case_5_1.json new file mode 100644 index 0000000..adffd00 --- /dev/null +++ b/autobahn/client/tungstenite_case_5_1.json @@ -0,0 +1,121 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 45, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send Ping fragmented into 2 fragments.", + "droppedByMe": false, + "duration": 0, + "expectation": "Connection is failed immediately, since control message MUST NOT be fragmented.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=45&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: b288vDBu+Z72pTZAXnsZ0A==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: SL6Od+pgvFw2mCk1mBfMRm5Rjlc=\r\n\r\n", + "id": "5.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:53.944Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "9": 1 + }, + "txOctetStats": { + "11": 2, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3435266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 9, + "fragment1" + ], + 9, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "0909667261676d656e7431" + ], + false + ], + [ + "TF", + [ + 9, + "fragment2" + ], + 0, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "8009667261676d656e7432" + ], + false + ], + [ + "KL", + 1 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_5_10.html b/autobahn/client/tungstenite_case_5_10.html new file mode 100644 index 0000000..5c67ad9 --- /dev/null +++ b/autobahn/client/tungstenite_case_5_10.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 5.10 : Pass - 0 ms @ 2020-09-07T18:43:53.953Z

+

Case Description

Send unfragmented Text Message after Continuation Frame with FIN = true, where there is nothing to continue, sent in per-frame chops.

+

Case Expectation

The connection is failed immediately, since there is no message to continue.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=54&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: O56wp8GRWfHgu93wSr99QA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: AAFyh8SQdZ83CCEB4GSJD+ZTWqk=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
15115
26126
2061206
Total3247
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
01
11
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3534266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=24, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=True
+
               non-continuation payload
+
003 TX OCTETS: 80186e6f6e2d636f6e74696e756174696f6e207061796c6f6164
+
004 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=True
+
               Hello, world!
+
005 FAIL CONNECTION AFTER 1.000000 sec
+
006 TX OCTETS: 810d48656c6c6f2c20776f726c6421
+
007 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_5_10.json b/autobahn/client/tungstenite_case_5_10.json new file mode 100644 index 0000000..dddc72d --- /dev/null +++ b/autobahn/client/tungstenite_case_5_10.json @@ -0,0 +1,122 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 54, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send unfragmented Text Message after Continuation Frame with FIN = true, where there is nothing to continue, sent in per-frame chops.", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since there is no message to continue.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=54&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: O56wp8GRWfHgu93wSr99QA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: AAFyh8SQdZ83CCEB4GSJD+ZTWqk=\r\n\r\n", + "id": "5.10", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:53.953Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1 + }, + "txOctetStats": { + "15": 1, + "26": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3534266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 24, + "non-continuation payload" + ], + 0, + true, + 0, + null, + null, + null, + true + ], + [ + "TO", + [ + 26, + "80186e6f6e2d636f6e74696e756174696f6e207061796c6f6164" + ], + true + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + null, + null, + null, + true + ], + [ + "KL", + 1 + ], + [ + "TO", + [ + 15, + "810d48656c6c6f2c20776f726c6421" + ], + true + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_5_11.html b/autobahn/client/tungstenite_case_5_11.html new file mode 100644 index 0000000..6664f9c --- /dev/null +++ b/autobahn/client/tungstenite_case_5_11.html @@ -0,0 +1,317 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 5.11 : Pass - 1 ms @ 2020-09-07T18:43:53.954Z

+

Case Description

Send unfragmented Text Message after Continuation Frame with FIN = true, where there is nothing to continue, sent in octet-wise chops.

+

Case Expectation

The connection is failed immediately, since there is no message to continue.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=55&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: vNgxskeGZsOaDJnbdR/Vpw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: fSGJY3+Wsoj8Yvp6cwha/cMpgCo=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
12727
2061206
Total28233
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
01
11
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3535266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=24, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               non-continuation payload
+
003 TX OCTETS: 80
+
004 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               Hello, world!
+
005 FAIL CONNECTION AFTER 1.000000 sec
+
006 TX OCTETS: 18
+
007 TX OCTETS: 6e
+
008 TX OCTETS: 6f
+
009 TX OCTETS: 6e
+
010 TX OCTETS: 2d
+
011 TX OCTETS: 63
+
012 TX OCTETS: 6f
+
013 TX OCTETS: 6e
+
014 TX OCTETS: 74
+
015 TX OCTETS: 69
+
016 TX OCTETS: 6e
+
017 TX OCTETS: 75
+
018 TX OCTETS: 61
+
019 TX OCTETS: 74
+
020 TX OCTETS: 69
+
021 TX OCTETS: 6f
+
022 TX OCTETS: 6e
+
023 TX OCTETS: 20
+
024 TX OCTETS: 70
+
025 TX OCTETS: 61
+
026 TX OCTETS: 79
+
027 TX OCTETS: 6c
+
028 TX OCTETS: 6f
+
029 TX OCTETS: 61
+
030 TX OCTETS: 64
+
031 TX OCTETS: 81
+
032 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_5_11.json b/autobahn/client/tungstenite_case_5_11.json new file mode 100644 index 0000000..2d8b3d4 --- /dev/null +++ b/autobahn/client/tungstenite_case_5_11.json @@ -0,0 +1,321 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 55, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send unfragmented Text Message after Continuation Frame with FIN = true, where there is nothing to continue, sent in octet-wise chops.", + "droppedByMe": false, + "duration": 1, + "expectation": "The connection is failed immediately, since there is no message to continue.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=55&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: vNgxskeGZsOaDJnbdR/Vpw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: fSGJY3+Wsoj8Yvp6cwha/cMpgCo=\r\n\r\n", + "id": "5.11", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:53.954Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1 + }, + "txOctetStats": { + "1": 27, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3535266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 24, + "non-continuation payload" + ], + 0, + true, + 0, + null, + null, + 1, + false + ], + [ + "TO", + [ + 1, + "80" + ], + true + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + null, + null, + 1, + false + ], + [ + "KL", + 1 + ], + [ + "TO", + [ + 1, + "18" + ], + true + ], + [ + "TO", + [ + 1, + "6e" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "6e" + ], + true + ], + [ + "TO", + [ + 1, + "2d" + ], + true + ], + [ + "TO", + [ + 1, + "63" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "6e" + ], + true + ], + [ + "TO", + [ + 1, + "74" + ], + true + ], + [ + "TO", + [ + 1, + "69" + ], + true + ], + [ + "TO", + [ + 1, + "6e" + ], + true + ], + [ + "TO", + [ + 1, + "75" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "74" + ], + true + ], + [ + "TO", + [ + 1, + "69" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "6e" + ], + true + ], + [ + "TO", + [ + 1, + "20" + ], + true + ], + [ + "TO", + [ + 1, + "70" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "79" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "64" + ], + true + ], + [ + "TO", + [ + 1, + "81" + ], + true + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_5_12.html b/autobahn/client/tungstenite_case_5_12.html new file mode 100644 index 0000000..436efff --- /dev/null +++ b/autobahn/client/tungstenite_case_5_12.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 5.12 : Pass - 0 ms @ 2020-09-07T18:43:53.955Z

+

Case Description

Send unfragmented Text Message after Continuation Frame with FIN = false, where there is nothing to continue, sent in one chop.

+

Case Expectation

The connection is failed immediately, since there is no message to continue.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=56&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 2Yk4zS3fQkbuWxPWoqJaJw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: XIlwVGBHrAkzHXp8esJ93pufr00=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
15115
26126
2061206
Total3247
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
01
11
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3536266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=24, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               non-continuation payload
+
003 TX OCTETS: 00186e6f6e2d636f6e74696e756174696f6e207061796c6f6164
+
004 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               Hello, world!
+
005 TX OCTETS: 810d48656c6c6f2c20776f726c6421
+
006 FAIL CONNECTION AFTER 1.000000 sec
+
007 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_5_12.json b/autobahn/client/tungstenite_case_5_12.json new file mode 100644 index 0000000..a8f63ca --- /dev/null +++ b/autobahn/client/tungstenite_case_5_12.json @@ -0,0 +1,122 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 56, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send unfragmented Text Message after Continuation Frame with FIN = false, where there is nothing to continue, sent in one chop.", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since there is no message to continue.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=56&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 2Yk4zS3fQkbuWxPWoqJaJw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: XIlwVGBHrAkzHXp8esJ93pufr00=\r\n\r\n", + "id": "5.12", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:53.955Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1 + }, + "txOctetStats": { + "15": 1, + "26": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3536266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 24, + "non-continuation payload" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 26, + "00186e6f6e2d636f6e74696e756174696f6e207061796c6f6164" + ], + false + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 15, + "810d48656c6c6f2c20776f726c6421" + ], + false + ], + [ + "KL", + 1 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_5_13.html b/autobahn/client/tungstenite_case_5_13.html new file mode 100644 index 0000000..75e8c5f --- /dev/null +++ b/autobahn/client/tungstenite_case_5_13.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 5.13 : Pass - 0 ms @ 2020-09-07T18:43:53.956Z

+

Case Description

Send unfragmented Text Message after Continuation Frame with FIN = false, where there is nothing to continue, sent in per-frame chops.

+

Case Expectation

The connection is failed immediately, since there is no message to continue.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=57&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: DJGmB3mVSofRzIY04hlXOQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: YWJJAjFlOke48FZwguZ93gucYmk=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
15115
26126
2061206
Total3247
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
01
11
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3537266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=24, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=True
+
               non-continuation payload
+
003 TX OCTETS: 00186e6f6e2d636f6e74696e756174696f6e207061796c6f6164
+
004 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=True
+
               Hello, world!
+
005 FAIL CONNECTION AFTER 1.000000 sec
+
006 TX OCTETS: 810d48656c6c6f2c20776f726c6421
+
007 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_5_13.json b/autobahn/client/tungstenite_case_5_13.json new file mode 100644 index 0000000..569f46a --- /dev/null +++ b/autobahn/client/tungstenite_case_5_13.json @@ -0,0 +1,122 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 57, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send unfragmented Text Message after Continuation Frame with FIN = false, where there is nothing to continue, sent in per-frame chops.", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since there is no message to continue.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=57&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: DJGmB3mVSofRzIY04hlXOQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: YWJJAjFlOke48FZwguZ93gucYmk=\r\n\r\n", + "id": "5.13", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:53.956Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1 + }, + "txOctetStats": { + "15": 1, + "26": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3537266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 24, + "non-continuation payload" + ], + 0, + false, + 0, + null, + null, + null, + true + ], + [ + "TO", + [ + 26, + "00186e6f6e2d636f6e74696e756174696f6e207061796c6f6164" + ], + true + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + null, + null, + null, + true + ], + [ + "KL", + 1 + ], + [ + "TO", + [ + 15, + "810d48656c6c6f2c20776f726c6421" + ], + true + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_5_14.html b/autobahn/client/tungstenite_case_5_14.html new file mode 100644 index 0000000..05592f0 --- /dev/null +++ b/autobahn/client/tungstenite_case_5_14.html @@ -0,0 +1,317 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 5.14 : Pass - 1 ms @ 2020-09-07T18:43:53.957Z

+

Case Description

Send unfragmented Text Message after Continuation Frame with FIN = false, where there is nothing to continue, sent in octet-wise chops.

+

Case Expectation

The connection is failed immediately, since there is no message to continue.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=58&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: lrlTCf5UAzTZtQNlfYs7OA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 37IOmXvXElwvVPoprSWFJ61TTEw=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
12727
2061206
Total28233
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
01
11
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3538266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=24, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               non-continuation payload
+
003 TX OCTETS: 00
+
004 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               Hello, world!
+
005 FAIL CONNECTION AFTER 1.000000 sec
+
006 TX OCTETS: 18
+
007 TX OCTETS: 6e
+
008 TX OCTETS: 6f
+
009 TX OCTETS: 6e
+
010 TX OCTETS: 2d
+
011 TX OCTETS: 63
+
012 TX OCTETS: 6f
+
013 TX OCTETS: 6e
+
014 TX OCTETS: 74
+
015 TX OCTETS: 69
+
016 TX OCTETS: 6e
+
017 TX OCTETS: 75
+
018 TX OCTETS: 61
+
019 TX OCTETS: 74
+
020 TX OCTETS: 69
+
021 TX OCTETS: 6f
+
022 TX OCTETS: 6e
+
023 TX OCTETS: 20
+
024 TX OCTETS: 70
+
025 TX OCTETS: 61
+
026 TX OCTETS: 79
+
027 TX OCTETS: 6c
+
028 TX OCTETS: 6f
+
029 TX OCTETS: 61
+
030 TX OCTETS: 64
+
031 TX OCTETS: 81
+
032 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_5_14.json b/autobahn/client/tungstenite_case_5_14.json new file mode 100644 index 0000000..4f01f1d --- /dev/null +++ b/autobahn/client/tungstenite_case_5_14.json @@ -0,0 +1,321 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 58, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send unfragmented Text Message after Continuation Frame with FIN = false, where there is nothing to continue, sent in octet-wise chops.", + "droppedByMe": false, + "duration": 1, + "expectation": "The connection is failed immediately, since there is no message to continue.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=58&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: lrlTCf5UAzTZtQNlfYs7OA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 37IOmXvXElwvVPoprSWFJ61TTEw=\r\n\r\n", + "id": "5.14", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:53.957Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1 + }, + "txOctetStats": { + "1": 27, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3538266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 24, + "non-continuation payload" + ], + 0, + false, + 0, + null, + null, + 1, + false + ], + [ + "TO", + [ + 1, + "00" + ], + true + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + null, + null, + 1, + false + ], + [ + "KL", + 1 + ], + [ + "TO", + [ + 1, + "18" + ], + true + ], + [ + "TO", + [ + 1, + "6e" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "6e" + ], + true + ], + [ + "TO", + [ + 1, + "2d" + ], + true + ], + [ + "TO", + [ + 1, + "63" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "6e" + ], + true + ], + [ + "TO", + [ + 1, + "74" + ], + true + ], + [ + "TO", + [ + 1, + "69" + ], + true + ], + [ + "TO", + [ + 1, + "6e" + ], + true + ], + [ + "TO", + [ + 1, + "75" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "74" + ], + true + ], + [ + "TO", + [ + 1, + "69" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "6e" + ], + true + ], + [ + "TO", + [ + 1, + "20" + ], + true + ], + [ + "TO", + [ + 1, + "70" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "79" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "64" + ], + true + ], + [ + "TO", + [ + 1, + "81" + ], + true + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_5_15.html b/autobahn/client/tungstenite_case_5_15.html new file mode 100644 index 0000000..751724c --- /dev/null +++ b/autobahn/client/tungstenite_case_5_15.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 5.15 : Pass - 0 ms @ 2020-09-07T18:43:53.958Z

+

Case Description

Send text Message fragmented into 2 fragments, then Continuation Frame with FIN = false where there is nothing to continue, then unfragmented Text Message, all sent in one chop.

+

Case Expectation

The connection is failed immediately, since there is no message to continue.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'NON-STRICT': [], 'OK': [('message', u'fragment1fragment2', False)]}

+ Observed:
[('message', u'fragment1fragment2', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=59&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: WuKpGl3SERZ1CK2sSnGdkA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: +7sXlHD6zOY3T1/9+tbQAd2Avo0=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
24124
2561256
Total2280
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
11444
2061206
Total5250
+

Frames Received by Opcode

+ + + + +
OpcodeCount
11
Total1
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
02
12
Total4
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3539266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment1
+
003 TX OCTETS: 0109667261676d656e7431
+
004 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment2
+
005 TX OCTETS: 8009667261676d656e7432
+
006 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment3
+
007 TX OCTETS: 0009667261676d656e7433
+
008 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment4
+
009 TX OCTETS: 8109667261676d656e7434
+
010 FAIL CONNECTION AFTER 1.000000 sec
+
011 RX OCTETS: 81928865d8b9ee17b9dee500b6cdb903aad8ef08bdd7fc57
+
012 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=18, MASKED=True, MASK=3838363564386239
+
               fragment1fragment2
+
013 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_5_15.json b/autobahn/client/tungstenite_case_5_15.json new file mode 100644 index 0000000..3752264 --- /dev/null +++ b/autobahn/client/tungstenite_case_5_15.json @@ -0,0 +1,200 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 59, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send text Message fragmented into 2 fragments, then Continuation Frame with FIN = false where there is nothing to continue, then unfragmented Text Message, all sent in one chop.", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since there is no message to continue.", + "expected": { + "NON-STRICT": [], + "OK": [ + [ + "message", + "fragment1fragment2", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=59&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: WuKpGl3SERZ1CK2sSnGdkA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: +7sXlHD6zOY3T1/9+tbQAd2Avo0=\r\n\r\n", + "id": "5.15", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [ + [ + "message", + "fragment1fragment2", + false + ] + ], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1 + }, + "rxOctetStats": { + "24": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.958Z", + "trafficStats": null, + "txFrameStats": { + "0": 2, + "1": 2 + }, + "txOctetStats": { + "11": 4, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3539266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 9, + "fragment1" + ], + 1, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "0109667261676d656e7431" + ], + false + ], + [ + "TF", + [ + 9, + "fragment2" + ], + 0, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "8009667261676d656e7432" + ], + false + ], + [ + "TF", + [ + 9, + "fragment3" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "0009667261676d656e7433" + ], + false + ], + [ + "TF", + [ + 9, + "fragment4" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "8109667261676d656e7434" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 24, + "81928865d8b9ee17b9dee500b6cdb903aad8ef08bdd7fc57" + ] + ], + [ + "RF", + [ + 18, + "fragment1fragment2" + ], + 1, + true, + 0, + true, + "8865d8b9" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_5_16.html b/autobahn/client/tungstenite_case_5_16.html new file mode 100644 index 0000000..7a8b358 --- /dev/null +++ b/autobahn/client/tungstenite_case_5_16.html @@ -0,0 +1,304 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 5.16 : Pass - 0 ms @ 2020-09-07T18:43:53.959Z

+

Case Description

Repeated 2x: Continuation Frame with FIN = false (where there is nothing to continue), then text Message fragmented into 2 fragments.

+

Case Expectation

The connection is failed immediately, since there is no message to continue.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=60&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: y+sjUtPg78/gwRlDJaU+CQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 6jnx5bzcDu1Bv0tKkBMbjSpVR18=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
11666
2061206
Total7272
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
04
12
Total6
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3630266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment1
+
003 TX OCTETS: 0009667261676d656e7431
+
004 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment2
+
005 TX OCTETS: 0109667261676d656e7432
+
006 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment3
+
007 TX OCTETS: 8009667261676d656e7433
+
008 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment1
+
009 TX OCTETS: 0009667261676d656e7431
+
010 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment2
+
011 TX OCTETS: 0109667261676d656e7432
+
012 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment3
+
013 TX OCTETS: 8009667261676d656e7433
+
014 FAIL CONNECTION AFTER 1.000000 sec
+
015 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_5_16.json b/autobahn/client/tungstenite_case_5_16.json new file mode 100644 index 0000000..db7df94 --- /dev/null +++ b/autobahn/client/tungstenite_case_5_16.json @@ -0,0 +1,209 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 60, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Repeated 2x: Continuation Frame with FIN = false (where there is nothing to continue), then text Message fragmented into 2 fragments.", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since there is no message to continue.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=60&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: y+sjUtPg78/gwRlDJaU+CQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 6jnx5bzcDu1Bv0tKkBMbjSpVR18=\r\n\r\n", + "id": "5.16", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:53.959Z", + "trafficStats": null, + "txFrameStats": { + "0": 4, + "1": 2 + }, + "txOctetStats": { + "11": 6, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3630266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 9, + "fragment1" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "0009667261676d656e7431" + ], + false + ], + [ + "TF", + [ + 9, + "fragment2" + ], + 1, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "0109667261676d656e7432" + ], + false + ], + [ + "TF", + [ + 9, + "fragment3" + ], + 0, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "8009667261676d656e7433" + ], + false + ], + [ + "TF", + [ + 9, + "fragment1" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "0009667261676d656e7431" + ], + false + ], + [ + "TF", + [ + 9, + "fragment2" + ], + 1, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "0109667261676d656e7432" + ], + false + ], + [ + "TF", + [ + 9, + "fragment3" + ], + 0, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "8009667261676d656e7433" + ], + false + ], + [ + "KL", + 1 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_5_17.html b/autobahn/client/tungstenite_case_5_17.html new file mode 100644 index 0000000..b1040f9 --- /dev/null +++ b/autobahn/client/tungstenite_case_5_17.html @@ -0,0 +1,304 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 5.17 : Pass - 1 ms @ 2020-09-07T18:43:53.959Z

+

Case Description

Repeated 2x: Continuation Frame with FIN = true (where there is nothing to continue), then text Message fragmented into 2 fragments.

+

Case Expectation

The connection is failed immediately, since there is no message to continue.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=61&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 5ZBBiarZEOlpT/w5Zgghmg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: S3wGOwLJbiKX/NgrmbHN2qsTAFU=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
11666
2061206
Total7272
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
04
12
Total6
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3631266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment1
+
003 TX OCTETS: 8009667261676d656e7431
+
004 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment2
+
005 TX OCTETS: 0109667261676d656e7432
+
006 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment3
+
007 TX OCTETS: 8009667261676d656e7433
+
008 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment1
+
009 TX OCTETS: 8009667261676d656e7431
+
010 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment2
+
011 TX OCTETS: 0109667261676d656e7432
+
012 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment3
+
013 TX OCTETS: 8009667261676d656e7433
+
014 FAIL CONNECTION AFTER 1.000000 sec
+
015 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_5_17.json b/autobahn/client/tungstenite_case_5_17.json new file mode 100644 index 0000000..b105032 --- /dev/null +++ b/autobahn/client/tungstenite_case_5_17.json @@ -0,0 +1,209 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 61, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Repeated 2x: Continuation Frame with FIN = true (where there is nothing to continue), then text Message fragmented into 2 fragments.", + "droppedByMe": false, + "duration": 1, + "expectation": "The connection is failed immediately, since there is no message to continue.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=61&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 5ZBBiarZEOlpT/w5Zgghmg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: S3wGOwLJbiKX/NgrmbHN2qsTAFU=\r\n\r\n", + "id": "5.17", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:53.959Z", + "trafficStats": null, + "txFrameStats": { + "0": 4, + "1": 2 + }, + "txOctetStats": { + "11": 6, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3631266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 9, + "fragment1" + ], + 0, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "8009667261676d656e7431" + ], + false + ], + [ + "TF", + [ + 9, + "fragment2" + ], + 1, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "0109667261676d656e7432" + ], + false + ], + [ + "TF", + [ + 9, + "fragment3" + ], + 0, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "8009667261676d656e7433" + ], + false + ], + [ + "TF", + [ + 9, + "fragment1" + ], + 0, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "8009667261676d656e7431" + ], + false + ], + [ + "TF", + [ + 9, + "fragment2" + ], + 1, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "0109667261676d656e7432" + ], + false + ], + [ + "TF", + [ + 9, + "fragment3" + ], + 0, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "8009667261676d656e7433" + ], + false + ], + [ + "KL", + 1 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_5_18.html b/autobahn/client/tungstenite_case_5_18.html new file mode 100644 index 0000000..a7302c5 --- /dev/null +++ b/autobahn/client/tungstenite_case_5_18.html @@ -0,0 +1,291 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 5.18 : Pass - 0 ms @ 2020-09-07T18:43:53.960Z

+

Case Description

Send text Message fragmented into 2 fragments, with both frame opcodes set to text, sent in one chop.

+

Case Expectation

The connection is failed immediately, since all data frames after the initial data frame must have opcode 0.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=62&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: UXekEnG0fDtK/iTfJFS29Q==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: S6mcCfVAgHPawATCmytcFFLsQGI=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
11222
2061206
Total3228
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
12
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3632266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment1
+
003 TX OCTETS: 0109667261676d656e7431
+
004 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment2
+
005 TX OCTETS: 8109667261676d656e7432
+
006 FAIL CONNECTION AFTER 1.000000 sec
+
007 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_5_18.json b/autobahn/client/tungstenite_case_5_18.json new file mode 100644 index 0000000..e06e98f --- /dev/null +++ b/autobahn/client/tungstenite_case_5_18.json @@ -0,0 +1,120 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 62, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send text Message fragmented into 2 fragments, with both frame opcodes set to text, sent in one chop.", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since all data frames after the initial data frame must have opcode 0.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=62&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: UXekEnG0fDtK/iTfJFS29Q==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: S6mcCfVAgHPawATCmytcFFLsQGI=\r\n\r\n", + "id": "5.18", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:53.960Z", + "trafficStats": null, + "txFrameStats": { + "1": 2 + }, + "txOctetStats": { + "11": 2, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3632266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 9, + "fragment1" + ], + 1, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "0109667261676d656e7431" + ], + false + ], + [ + "TF", + [ + 9, + "fragment2" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "8109667261676d656e7432" + ], + false + ], + [ + "KL", + 1 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_5_19.html b/autobahn/client/tungstenite_case_5_19.html new file mode 100644 index 0000000..62a6e57 --- /dev/null +++ b/autobahn/client/tungstenite_case_5_19.html @@ -0,0 +1,338 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 5.19 : Pass - 1003 ms @ 2020-09-07T18:43:53.961Z

+

Case Description

A fragmented text message is sent in multiple frames. After + sending the first 2 frames of the text message, a Ping is sent. Then we wait 1s, + then we send 2 more text fragments, another Ping and then the final text fragment. + Everything is legal.

+

Case Expectation

The peer immediately answers the first Ping before + it has received the last text message fragment. The peer pong's back the Ping's + payload exactly, and echo's the payload of the fragmented message back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('pong', u'pongme 1!'), ('pong', u'pongme 2!'), ('message', u'fragment1fragment2fragment3fragment4fragment5', False)]}

+ Observed:
[('pong', u'pongme 1!'), ('pong', u'pongme 2!'), ('message', u'fragment1fragment2fragment3fragment4fragment5', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=63&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 0C+9zMX2E8rq+ZCjqbM4oQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Kvfl6yVQC0IIro0XN0X+LJ4Gmow=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
15115
66166
2561256
Total4345
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
11777
2061206
Total9287
+

Frames Received by Opcode

+ + + + + + +
OpcodeCount
11
81
102
Total4
+

Frames Transmitted by Opcode

+ + + + + + + +
OpcodeCount
04
11
81
92
Total8
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3633266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment1
+
003 TX OCTETS: 0109667261676d656e7431
+
004 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment2
+
005 TX OCTETS: 0009667261676d656e7432
+
006 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               pongme 1!
+
007 TX OCTETS: 8909706f6e676d65203121
+
008 DELAY 1.000000 sec for TAG None
+
009 RX OCTETS: 8a89c313d0b1b37cbed6ae76f080e2
+
010 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=6333313364306231
+
               pongme 1!
+
011 DELAY TIMEOUT on TAG None
+
012 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment3
+
013 TX OCTETS: 0009667261676d656e7433
+
014 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment4
+
015 TX OCTETS: 0009667261676d656e7434
+
016 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               pongme 2!
+
017 TX OCTETS: 8909706f6e676d65203221
+
018 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment5
+
019 TX OCTETS: 8009667261676d656e7435
+
020 CLOSE CONNECTION AFTER 1.000000 sec
+
021 RX OCTETS: 8a89d72c4c89a74322eeba496cbbf681ad4688ac2e20facd492bedc25a77eede4f21e5c94032baca5c27efc14b28fc9f4834
+
               e9cb4323e6d81a20facd492bedc2 ...
+
022 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=6437326334633839
+
               pongme 2!
+
023 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=45, MASKED=True, MASK=3436383861633265
+
               fragment1fragment2fragment3fragment4fragment5
+
024 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
025 TX OCTETS: 880203e8
+
026 RX OCTETS: 8882c836cc9dcbde
+
027 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6338333663633964
+
               0x03e8
+
028 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_5_19.json b/autobahn/client/tungstenite_case_5_19.json new file mode 100644 index 0000000..754ad53 --- /dev/null +++ b/autobahn/client/tungstenite_case_5_19.json @@ -0,0 +1,369 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 63, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "A fragmented text message is sent in multiple frames. After\n sending the first 2 frames of the text message, a Ping is sent. Then we wait 1s,\n then we send 2 more text fragments, another Ping and then the final text fragment.\n Everything is legal.", + "droppedByMe": true, + "duration": 1003, + "expectation": "The peer immediately answers the first Ping before\n it has received the last text message fragment. The peer pong's back the Ping's\n payload exactly, and echo's the payload of the fragmented message back to us.", + "expected": { + "OK": [ + [ + "pong", + "pongme 1!" + ], + [ + "pong", + "pongme 2!" + ], + [ + "message", + "fragment1fragment2fragment3fragment4fragment5", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=63&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 0C+9zMX2E8rq+ZCjqbM4oQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Kvfl6yVQC0IIro0XN0X+LJ4Gmow=\r\n\r\n", + "id": "5.19", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "pong", + "pongme 1!" + ], + [ + "pong", + "pongme 2!" + ], + [ + "message", + "fragment1fragment2fragment3fragment4fragment5", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1, + "10": 2 + }, + "rxOctetStats": { + "8": 1, + "15": 1, + "66": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.961Z", + "trafficStats": null, + "txFrameStats": { + "0": 4, + "1": 1, + "8": 1, + "9": 2 + }, + "txOctetStats": { + "4": 1, + "11": 7, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3633266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 9, + "fragment1" + ], + 1, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "0109667261676d656e7431" + ], + false + ], + [ + "TF", + [ + 9, + "fragment2" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "0009667261676d656e7432" + ], + false + ], + [ + "TF", + [ + 9, + "pongme 1!" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "8909706f6e676d65203121" + ], + false + ], + [ + "CT", + 1, + null + ], + [ + "RO", + [ + 15, + "8a89c313d0b1b37cbed6ae76f080e2" + ] + ], + [ + "RF", + [ + 9, + "pongme 1!" + ], + 10, + true, + 0, + true, + "c313d0b1" + ], + [ + "CTE", + null + ], + [ + "TF", + [ + 9, + "fragment3" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "0009667261676d656e7433" + ], + false + ], + [ + "TF", + [ + 9, + "fragment4" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "0009667261676d656e7434" + ], + false + ], + [ + "TF", + [ + 9, + "pongme 2!" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "8909706f6e676d65203221" + ], + false + ], + [ + "TF", + [ + 9, + "fragment5" + ], + 0, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "8009667261676d656e7435" + ], + false + ], + [ + "TI", + 1 + ], + [ + "RO", + [ + 66, + "8a89d72c4c89a74322eeba496cbbf681ad4688ac2e20facd492bedc25a77eede4f21e5c94032baca5c27efc14b28fc9f4834e9cb4323e6d81a20facd492bedc2 ..." + ] + ], + [ + "RF", + [ + 9, + "pongme 2!" + ], + 10, + true, + 0, + true, + "d72c4c89" + ], + [ + "RF", + [ + 45, + "fragment1fragment2fragment3fragment4fragment5" + ], + 1, + true, + 0, + true, + "4688ac2e" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882c836cc9dcbde" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "c836cc9d" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_5_2.html b/autobahn/client/tungstenite_case_5_2.html new file mode 100644 index 0000000..241e680 --- /dev/null +++ b/autobahn/client/tungstenite_case_5_2.html @@ -0,0 +1,292 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 5.2 : Pass - 0 ms @ 2020-09-07T18:43:53.945Z

+

Case Description

Send Pong fragmented into 2 fragments.

+

Case Expectation

Connection is failed immediately, since control message MUST NOT be fragmented.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=46&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Xq+Fq8pE/7cWQtIeOyrRMw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: H7hwkUK5v9arAVVFB3GdH/UOSpM=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
11222
2061206
Total3228
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
01
101
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3436266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=10, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment1
+
003 TX OCTETS: 0a09667261676d656e7431
+
004 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment2
+
005 TX OCTETS: 8009667261676d656e7432
+
006 FAIL CONNECTION AFTER 1.000000 sec
+
007 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_5_2.json b/autobahn/client/tungstenite_case_5_2.json new file mode 100644 index 0000000..6af7027 --- /dev/null +++ b/autobahn/client/tungstenite_case_5_2.json @@ -0,0 +1,121 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 46, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send Pong fragmented into 2 fragments.", + "droppedByMe": false, + "duration": 0, + "expectation": "Connection is failed immediately, since control message MUST NOT be fragmented.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=46&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Xq+Fq8pE/7cWQtIeOyrRMw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: H7hwkUK5v9arAVVFB3GdH/UOSpM=\r\n\r\n", + "id": "5.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:53.945Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "10": 1 + }, + "txOctetStats": { + "11": 2, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3436266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 9, + "fragment1" + ], + 10, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "0a09667261676d656e7431" + ], + false + ], + [ + "TF", + [ + 9, + "fragment2" + ], + 0, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "8009667261676d656e7432" + ], + false + ], + [ + "KL", + 1 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_5_20.html b/autobahn/client/tungstenite_case_5_20.html new file mode 100644 index 0000000..2ee81bb --- /dev/null +++ b/autobahn/client/tungstenite_case_5_20.html @@ -0,0 +1,337 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 5.20 : Pass - 1004 ms @ 2020-09-07T18:43:54.966Z

+

Case Description

Same as Case 5.19, but send all frames with SYNC = True. + Note, this does not change the octets sent in any way, only how the stream + is chopped up on the wire.

+

Case Expectation

Same as Case 5.19. Implementations must be agnostic to how + octet stream is chopped up on wire (must be TCP clean).

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('pong', u'pongme 1!'), ('pong', u'pongme 2!'), ('message', u'fragment1fragment2fragment3fragment4fragment5', False)]}

+ Observed:
[('pong', u'pongme 1!'), ('pong', u'pongme 2!'), ('message', u'fragment1fragment2fragment3fragment4fragment5', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=64&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: jnMNEB0RO93//ukXawIyuQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: lQHBtIj9LufCUPKfXe4t4noGcV0=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
15230
51151
2561256
Total5345
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
11777
2061206
Total9287
+

Frames Received by Opcode

+ + + + + + +
OpcodeCount
11
81
102
Total4
+

Frames Transmitted by Opcode

+ + + + + + + +
OpcodeCount
04
11
81
92
Total8
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3634266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=True
+
               fragment1
+
003 TX OCTETS: 0109667261676d656e7431
+
004 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=True
+
               fragment2
+
005 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=True
+
               pongme 1!
+
006 DELAY 1.000000 sec for TAG None
+
007 TX OCTETS: 0009667261676d656e7432
+
008 TX OCTETS: 8909706f6e676d65203121
+
009 RX OCTETS: 8a891285d2f362eabc947fe0f2c233
+
010 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=3132383564326633
+
               pongme 1!
+
011 DELAY TIMEOUT on TAG None
+
012 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=True
+
               fragment3
+
013 TX OCTETS: 0009667261676d656e7433
+
014 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=True
+
               fragment4
+
015 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=True
+
               pongme 2!
+
016 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=True
+
               fragment5
+
017 CLOSE CONNECTION AFTER 1.000000 sec
+
018 TX OCTETS: 0009667261676d656e7434
+
019 TX OCTETS: 8909706f6e676d65203221
+
020 TX OCTETS: 8009667261676d656e7435
+
021 RX OCTETS: 8a89f82ec7a68841a9c1954be794d9
+
022 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=6638326563376136
+
               pongme 2!
+
023 RX OCTETS: 81ad413177c0274316a72c5419b4705705a1265c12ae350311b220561aa52f4544a6335010ad245f03f4274316a72c5419b4
+
               74
+
024 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=45, MASKED=True, MASK=3431333137376330
+
               fragment1fragment2fragment3fragment4fragment5
+
025 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
026 TX OCTETS: 880203e8
+
027 RX OCTETS: 8882ec225bbeefca
+
028 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6563323235626265
+
               0x03e8
+
029 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_5_20.json b/autobahn/client/tungstenite_case_5_20.json new file mode 100644 index 0000000..aefc99d --- /dev/null +++ b/autobahn/client/tungstenite_case_5_20.json @@ -0,0 +1,376 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 64, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Same as Case 5.19, but send all frames with SYNC = True.\n Note, this does not change the octets sent in any way, only how the stream\n is chopped up on the wire.", + "droppedByMe": true, + "duration": 1004, + "expectation": "Same as Case 5.19. Implementations must be agnostic to how\n octet stream is chopped up on wire (must be TCP clean).", + "expected": { + "OK": [ + [ + "pong", + "pongme 1!" + ], + [ + "pong", + "pongme 2!" + ], + [ + "message", + "fragment1fragment2fragment3fragment4fragment5", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=64&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: jnMNEB0RO93//ukXawIyuQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: lQHBtIj9LufCUPKfXe4t4noGcV0=\r\n\r\n", + "id": "5.20", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "pong", + "pongme 1!" + ], + [ + "pong", + "pongme 2!" + ], + [ + "message", + "fragment1fragment2fragment3fragment4fragment5", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1, + "10": 2 + }, + "rxOctetStats": { + "8": 1, + "15": 2, + "51": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:54.966Z", + "trafficStats": null, + "txFrameStats": { + "0": 4, + "1": 1, + "8": 1, + "9": 2 + }, + "txOctetStats": { + "4": 1, + "11": 7, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3634266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 9, + "fragment1" + ], + 1, + false, + 0, + null, + null, + null, + true + ], + [ + "TO", + [ + 11, + "0109667261676d656e7431" + ], + true + ], + [ + "TF", + [ + 9, + "fragment2" + ], + 0, + false, + 0, + null, + null, + null, + true + ], + [ + "TF", + [ + 9, + "pongme 1!" + ], + 9, + true, + 0, + null, + null, + null, + true + ], + [ + "CT", + 1, + null + ], + [ + "TO", + [ + 11, + "0009667261676d656e7432" + ], + true + ], + [ + "TO", + [ + 11, + "8909706f6e676d65203121" + ], + true + ], + [ + "RO", + [ + 15, + "8a891285d2f362eabc947fe0f2c233" + ] + ], + [ + "RF", + [ + 9, + "pongme 1!" + ], + 10, + true, + 0, + true, + "1285d2f3" + ], + [ + "CTE", + null + ], + [ + "TF", + [ + 9, + "fragment3" + ], + 0, + false, + 0, + null, + null, + null, + true + ], + [ + "TO", + [ + 11, + "0009667261676d656e7433" + ], + true + ], + [ + "TF", + [ + 9, + "fragment4" + ], + 0, + false, + 0, + null, + null, + null, + true + ], + [ + "TF", + [ + 9, + "pongme 2!" + ], + 9, + true, + 0, + null, + null, + null, + true + ], + [ + "TF", + [ + 9, + "fragment5" + ], + 0, + true, + 0, + null, + null, + null, + true + ], + [ + "TI", + 1 + ], + [ + "TO", + [ + 11, + "0009667261676d656e7434" + ], + true + ], + [ + "TO", + [ + 11, + "8909706f6e676d65203221" + ], + true + ], + [ + "TO", + [ + 11, + "8009667261676d656e7435" + ], + true + ], + [ + "RO", + [ + 15, + "8a89f82ec7a68841a9c1954be794d9" + ] + ], + [ + "RF", + [ + 9, + "pongme 2!" + ], + 10, + true, + 0, + true, + "f82ec7a6" + ], + [ + "RO", + [ + 51, + "81ad413177c0274316a72c5419b4705705a1265c12ae350311b220561aa52f4544a6335010ad245f03f4274316a72c5419b474" + ] + ], + [ + "RF", + [ + 45, + "fragment1fragment2fragment3fragment4fragment5" + ], + 1, + true, + 0, + true, + "413177c0" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882ec225bbeefca" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "ec225bbe" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_5_3.html b/autobahn/client/tungstenite_case_5_3.html new file mode 100644 index 0000000..34af272 --- /dev/null +++ b/autobahn/client/tungstenite_case_5_3.html @@ -0,0 +1,307 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 5.3 : Pass - 1 ms @ 2020-09-07T18:43:53.945Z

+

Case Description

Send text Message fragmented into 2 fragments.

+

Case Expectation

Message is processed and echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'fragment1fragment2', False)]}

+ Observed:
[('message', u'fragment1fragment2', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=47&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: rlcFc40E9b6EKfnVlJZ8IQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: s+SDI96Xq5/WepbJa9BMqGPZ3Pk=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
24124
2561256
Total3288
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
11222
2061206
Total4232
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
01
11
81
Total3
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3437266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment1
+
003 TX OCTETS: 0109667261676d656e7431
+
004 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment2
+
005 TX OCTETS: 8009667261676d656e7432
+
006 CLOSE CONNECTION AFTER 1.000000 sec
+
007 RX OCTETS: 819235171a7553657b125872740104716814527a7f1b4125
+
008 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=18, MASKED=True, MASK=3335313731613735
+
               fragment1fragment2
+
009 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
010 TX OCTETS: 880203e8
+
011 RX OCTETS: 8882feaeaed7fd46
+
012 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6665616561656437
+
               0x03e8
+
013 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_5_3.json b/autobahn/client/tungstenite_case_5_3.json new file mode 100644 index 0000000..c4fd40b --- /dev/null +++ b/autobahn/client/tungstenite_case_5_3.json @@ -0,0 +1,200 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 47, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text Message fragmented into 2 fragments.", + "droppedByMe": true, + "duration": 1, + "expectation": "Message is processed and echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "fragment1fragment2", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=47&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: rlcFc40E9b6EKfnVlJZ8IQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: s+SDI96Xq5/WepbJa9BMqGPZ3Pk=\r\n\r\n", + "id": "5.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "fragment1fragment2", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "24": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.945Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "11": 2, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3437266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 9, + "fragment1" + ], + 1, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "0109667261676d656e7431" + ], + false + ], + [ + "TF", + [ + 9, + "fragment2" + ], + 0, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "8009667261676d656e7432" + ], + false + ], + [ + "TI", + 1 + ], + [ + "RO", + [ + 24, + "819235171a7553657b125872740104716814527a7f1b4125" + ] + ], + [ + "RF", + [ + 18, + "fragment1fragment2" + ], + 1, + true, + 0, + true, + "35171a75" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882feaeaed7fd46" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "feaeaed7" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_5_4.html b/autobahn/client/tungstenite_case_5_4.html new file mode 100644 index 0000000..72ab11f --- /dev/null +++ b/autobahn/client/tungstenite_case_5_4.html @@ -0,0 +1,307 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 5.4 : Pass - 0 ms @ 2020-09-07T18:43:53.946Z

+

Case Description

Send text Message fragmented into 2 fragments, octets are sent in frame-wise chops.

+

Case Expectation

Message is processed and echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'fragment1fragment2', False)]}

+ Observed:
[('message', u'fragment1fragment2', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=48&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ot5bKBTA9kGAVh8Olhe4Dg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Ilc7zN7wH2LnlCYfyPsXcY0Fxrg=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
24124
2561256
Total3288
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
11222
2061206
Total4232
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
01
11
81
Total3
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3438266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=True
+
               fragment1
+
003 TX OCTETS: 0109667261676d656e7431
+
004 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=True
+
               fragment2
+
005 CLOSE CONNECTION AFTER 1.000000 sec
+
006 TX OCTETS: 8009667261676d656e7432
+
007 RX OCTETS: 8192d45f8c86b22dede1b93ae2f2e539fee7b332e9e8a06d
+
008 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=18, MASKED=True, MASK=6434356638633836
+
               fragment1fragment2
+
009 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
010 TX OCTETS: 880203e8
+
011 RX OCTETS: 88829ded33c89e05
+
012 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3964656433336338
+
               0x03e8
+
013 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_5_4.json b/autobahn/client/tungstenite_case_5_4.json new file mode 100644 index 0000000..c97dfca --- /dev/null +++ b/autobahn/client/tungstenite_case_5_4.json @@ -0,0 +1,200 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 48, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text Message fragmented into 2 fragments, octets are sent in frame-wise chops.", + "droppedByMe": true, + "duration": 0, + "expectation": "Message is processed and echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "fragment1fragment2", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=48&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ot5bKBTA9kGAVh8Olhe4Dg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Ilc7zN7wH2LnlCYfyPsXcY0Fxrg=\r\n\r\n", + "id": "5.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "fragment1fragment2", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "24": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.946Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "11": 2, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3438266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 9, + "fragment1" + ], + 1, + false, + 0, + null, + null, + null, + true + ], + [ + "TO", + [ + 11, + "0109667261676d656e7431" + ], + true + ], + [ + "TF", + [ + 9, + "fragment2" + ], + 0, + true, + 0, + null, + null, + null, + true + ], + [ + "TI", + 1 + ], + [ + "TO", + [ + 11, + "8009667261676d656e7432" + ], + true + ], + [ + "RO", + [ + 24, + "8192d45f8c86b22dede1b93ae2f2e539fee7b332e9e8a06d" + ] + ], + [ + "RF", + [ + 18, + "fragment1fragment2" + ], + 1, + true, + 0, + true, + "d45f8c86" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88829ded33c89e05" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "9ded33c8" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_5_5.html b/autobahn/client/tungstenite_case_5_5.html new file mode 100644 index 0000000..f9f711c --- /dev/null +++ b/autobahn/client/tungstenite_case_5_5.html @@ -0,0 +1,327 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 5.5 : Pass - 1 ms @ 2020-09-07T18:43:53.947Z

+

Case Description

Send text Message fragmented into 2 fragments, octets are sent in octet-wise chops.

+

Case Expectation

Message is processed and echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'fragment1fragment2', False)]}

+ Observed:
[('message', u'fragment1fragment2', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=49&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: MdOUZWRLhCsG3rXKmOXVuQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: CB25GXbUoMuGpLAZ8j2f2wLHcLE=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
24124
2561256
Total3288
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
12222
414
2061206
Total24232
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
01
11
81
Total3
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3439266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               fragment1
+
003 TX OCTETS: 01
+
004 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               fragment2
+
005 CLOSE CONNECTION AFTER 1.000000 sec
+
006 TX OCTETS: 09
+
007 TX OCTETS: 66
+
008 TX OCTETS: 72
+
009 TX OCTETS: 61
+
010 TX OCTETS: 67
+
011 TX OCTETS: 6d
+
012 TX OCTETS: 65
+
013 TX OCTETS: 6e
+
014 TX OCTETS: 74
+
015 TX OCTETS: 31
+
016 TX OCTETS: 80
+
017 TX OCTETS: 09
+
018 TX OCTETS: 66
+
019 TX OCTETS: 72
+
020 TX OCTETS: 61
+
021 TX OCTETS: 67
+
022 TX OCTETS: 6d
+
023 TX OCTETS: 65
+
024 TX OCTETS: 6e
+
025 TX OCTETS: 74
+
026 TX OCTETS: 32
+
027 RX OCTETS: 819295ac06bdf3de67daf8c968c9a4ca74dcf2c163d3e19e
+
028 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=18, MASKED=True, MASK=3935616330366264
+
               fragment1fragment2
+
029 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
030 TX OCTETS: 880203e8
+
031 RX OCTETS: 888287599d2584b1
+
032 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3837353939643235
+
               0x03e8
+
033 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_5_5.json b/autobahn/client/tungstenite_case_5_5.json new file mode 100644 index 0000000..6a8067e --- /dev/null +++ b/autobahn/client/tungstenite_case_5_5.json @@ -0,0 +1,360 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 49, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text Message fragmented into 2 fragments, octets are sent in octet-wise chops.", + "droppedByMe": true, + "duration": 1, + "expectation": "Message is processed and echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "fragment1fragment2", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=49&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: MdOUZWRLhCsG3rXKmOXVuQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: CB25GXbUoMuGpLAZ8j2f2wLHcLE=\r\n\r\n", + "id": "5.5", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "fragment1fragment2", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "24": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.947Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1, + "8": 1 + }, + "txOctetStats": { + "1": 22, + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3439266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 9, + "fragment1" + ], + 1, + false, + 0, + null, + null, + 1, + false + ], + [ + "TO", + [ + 1, + "01" + ], + true + ], + [ + "TF", + [ + 9, + "fragment2" + ], + 0, + true, + 0, + null, + null, + 1, + false + ], + [ + "TI", + 1 + ], + [ + "TO", + [ + 1, + "09" + ], + true + ], + [ + "TO", + [ + 1, + "66" + ], + true + ], + [ + "TO", + [ + 1, + "72" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "67" + ], + true + ], + [ + "TO", + [ + 1, + "6d" + ], + true + ], + [ + "TO", + [ + 1, + "65" + ], + true + ], + [ + "TO", + [ + 1, + "6e" + ], + true + ], + [ + "TO", + [ + 1, + "74" + ], + true + ], + [ + "TO", + [ + 1, + "31" + ], + true + ], + [ + "TO", + [ + 1, + "80" + ], + true + ], + [ + "TO", + [ + 1, + "09" + ], + true + ], + [ + "TO", + [ + 1, + "66" + ], + true + ], + [ + "TO", + [ + 1, + "72" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "67" + ], + true + ], + [ + "TO", + [ + 1, + "6d" + ], + true + ], + [ + "TO", + [ + 1, + "65" + ], + true + ], + [ + "TO", + [ + 1, + "6e" + ], + true + ], + [ + "TO", + [ + 1, + "74" + ], + true + ], + [ + "TO", + [ + 1, + "32" + ], + true + ], + [ + "RO", + [ + 24, + "819295ac06bdf3de67daf8c968c9a4ca74dcf2c163d3e19e" + ] + ], + [ + "RF", + [ + 18, + "fragment1fragment2" + ], + 1, + true, + 0, + true, + "95ac06bd" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888287599d2584b1" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "87599d25" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_5_6.html b/autobahn/client/tungstenite_case_5_6.html new file mode 100644 index 0000000..9ead769 --- /dev/null +++ b/autobahn/client/tungstenite_case_5_6.html @@ -0,0 +1,315 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 5.6 : Pass - 0 ms @ 2020-09-07T18:43:53.948Z

+

Case Description

Send text Message fragmented into 2 fragments, one ping with payload in-between.

+

Case Expectation

A pong is received, then the message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('pong', u'ping payload'), ('message', u'fragment1fragment2', False)]}

+ Observed:
[('pong', u'ping payload'), ('message', u'fragment1fragment2', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=50&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: fEDWooFwFK3hNymCOo2s6Q==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 3eyBR1lfTWKzOeu8CNlo9mrUr4c=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
42142
2561256
Total3306
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
414
11222
14114
2061206
Total5246
+

Frames Received by Opcode

+ + + + + + +
OpcodeCount
11
81
101
Total3
+

Frames Transmitted by Opcode

+ + + + + + + +
OpcodeCount
01
11
81
91
Total4
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3530266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment1
+
003 TX OCTETS: 0109667261676d656e7431
+
004 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=12, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ping payload
+
005 TX OCTETS: 890c70696e67207061796c6f6164
+
006 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment2
+
007 TX OCTETS: 8009667261676d656e7432
+
008 CLOSE CONNECTION AFTER 1.000000 sec
+
009 RX OCTETS: 8a8c92c9e096e2a08ef1b2b981effea681f2819295c564eaf3b7058df8a00a9ea4a3168bf2a80184e1f7
+
010 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=12, MASKED=True, MASK=3932633965303936
+
               ping payload
+
011 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=18, MASKED=True, MASK=3935633536346561
+
               fragment1fragment2
+
012 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
013 TX OCTETS: 880203e8
+
014 RX OCTETS: 88820131936d02d9
+
015 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3031333139333664
+
               0x03e8
+
016 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_5_6.json b/autobahn/client/tungstenite_case_5_6.json new file mode 100644 index 0000000..a5069d7 --- /dev/null +++ b/autobahn/client/tungstenite_case_5_6.json @@ -0,0 +1,245 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 50, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text Message fragmented into 2 fragments, one ping with payload in-between.", + "droppedByMe": true, + "duration": 0, + "expectation": "A pong is received, then the message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "pong", + "ping payload" + ], + [ + "message", + "fragment1fragment2", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=50&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: fEDWooFwFK3hNymCOo2s6Q==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 3eyBR1lfTWKzOeu8CNlo9mrUr4c=\r\n\r\n", + "id": "5.6", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "pong", + "ping payload" + ], + [ + "message", + "fragment1fragment2", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1, + "10": 1 + }, + "rxOctetStats": { + "8": 1, + "42": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.948Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1, + "8": 1, + "9": 1 + }, + "txOctetStats": { + "4": 1, + "11": 2, + "14": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3530266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 9, + "fragment1" + ], + 1, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "0109667261676d656e7431" + ], + false + ], + [ + "TF", + [ + 12, + "ping payload" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 14, + "890c70696e67207061796c6f6164" + ], + false + ], + [ + "TF", + [ + 9, + "fragment2" + ], + 0, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "8009667261676d656e7432" + ], + false + ], + [ + "TI", + 1 + ], + [ + "RO", + [ + 42, + "8a8c92c9e096e2a08ef1b2b981effea681f2819295c564eaf3b7058df8a00a9ea4a3168bf2a80184e1f7" + ] + ], + [ + "RF", + [ + 12, + "ping payload" + ], + 10, + true, + 0, + true, + "92c9e096" + ], + [ + "RF", + [ + 18, + "fragment1fragment2" + ], + 1, + true, + 0, + true, + "95c564ea" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88820131936d02d9" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "0131936d" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_5_7.html b/autobahn/client/tungstenite_case_5_7.html new file mode 100644 index 0000000..994803d --- /dev/null +++ b/autobahn/client/tungstenite_case_5_7.html @@ -0,0 +1,317 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 5.7 : Pass - 1 ms @ 2020-09-07T18:43:53.949Z

+

Case Description

Send text Message fragmented into 2 fragments, one ping with payload in-between. Octets are sent in frame-wise chops.

+

Case Expectation

A pong is received, then the message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('pong', u'ping payload'), ('message', u'fragment1fragment2', False)]}

+ Observed:
[('pong', u'ping payload'), ('message', u'fragment1fragment2', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=51&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 0l53PLvkqGpYizuR9/vcyg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: GV8kQGv44ulS9DFK7Iyu5iZfxpc=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
18118
24124
2561256
Total4306
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
414
11222
14114
2061206
Total5246
+

Frames Received by Opcode

+ + + + + + +
OpcodeCount
11
81
101
Total3
+

Frames Transmitted by Opcode

+ + + + + + + +
OpcodeCount
01
11
81
91
Total4
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3531266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=True
+
               fragment1
+
003 TX OCTETS: 0109667261676d656e7431
+
004 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=12, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=True
+
               ping payload
+
005 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=True
+
               fragment2
+
006 CLOSE CONNECTION AFTER 1.000000 sec
+
007 TX OCTETS: 890c70696e67207061796c6f6164
+
008 TX OCTETS: 8009667261676d656e7432
+
009 RX OCTETS: 8a8cb1e893f3c181fd949198f28add87f297
+
010 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=12, MASKED=True, MASK=6231653839336633
+
               ping payload
+
011 RX OCTETS: 8192e53d27ec834f468b88584998d45b558d82504282910f
+
012 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=18, MASKED=True, MASK=6535336432376563
+
               fragment1fragment2
+
013 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
014 TX OCTETS: 880203e8
+
015 RX OCTETS: 88827ff359807c1b
+
016 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3766663335393830
+
               0x03e8
+
017 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_5_7.json b/autobahn/client/tungstenite_case_5_7.json new file mode 100644 index 0000000..33c642b --- /dev/null +++ b/autobahn/client/tungstenite_case_5_7.json @@ -0,0 +1,253 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 51, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text Message fragmented into 2 fragments, one ping with payload in-between. Octets are sent in frame-wise chops.", + "droppedByMe": true, + "duration": 1, + "expectation": "A pong is received, then the message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "pong", + "ping payload" + ], + [ + "message", + "fragment1fragment2", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=51&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 0l53PLvkqGpYizuR9/vcyg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: GV8kQGv44ulS9DFK7Iyu5iZfxpc=\r\n\r\n", + "id": "5.7", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "pong", + "ping payload" + ], + [ + "message", + "fragment1fragment2", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1, + "10": 1 + }, + "rxOctetStats": { + "8": 1, + "18": 1, + "24": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.949Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1, + "8": 1, + "9": 1 + }, + "txOctetStats": { + "4": 1, + "11": 2, + "14": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3531266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 9, + "fragment1" + ], + 1, + false, + 0, + null, + null, + null, + true + ], + [ + "TO", + [ + 11, + "0109667261676d656e7431" + ], + true + ], + [ + "TF", + [ + 12, + "ping payload" + ], + 9, + true, + 0, + null, + null, + null, + true + ], + [ + "TF", + [ + 9, + "fragment2" + ], + 0, + true, + 0, + null, + null, + null, + true + ], + [ + "TI", + 1 + ], + [ + "TO", + [ + 14, + "890c70696e67207061796c6f6164" + ], + true + ], + [ + "TO", + [ + 11, + "8009667261676d656e7432" + ], + true + ], + [ + "RO", + [ + 18, + "8a8cb1e893f3c181fd949198f28add87f297" + ] + ], + [ + "RF", + [ + 12, + "ping payload" + ], + 10, + true, + 0, + true, + "b1e893f3" + ], + [ + "RO", + [ + 24, + "8192e53d27ec834f468b88584998d45b558d82504282910f" + ] + ], + [ + "RF", + [ + 18, + "fragment1fragment2" + ], + 1, + true, + 0, + true, + "e53d27ec" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88827ff359807c1b" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "7ff35980" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_5_8.html b/autobahn/client/tungstenite_case_5_8.html new file mode 100644 index 0000000..611ef9f --- /dev/null +++ b/autobahn/client/tungstenite_case_5_8.html @@ -0,0 +1,349 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 5.8 : Pass - 2 ms @ 2020-09-07T18:43:53.950Z

+

Case Description

Send text Message fragmented into 2 fragments, one ping with payload in-between. Octets are sent in octet-wise chops.

+

Case Expectation

A pong is received, then the message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('pong', u'ping payload'), ('message', u'fragment1fragment2', False)]}

+ Observed:
[('pong', u'ping payload'), ('message', u'fragment1fragment2', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=52&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: vLo1rABtHblqidV7CqXFxA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: KMPjDmX001WwGBjkzce43DZRW8I=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
18118
24124
2561256
Total4306
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
13636
414
2061206
Total38246
+

Frames Received by Opcode

+ + + + + + +
OpcodeCount
11
81
101
Total3
+

Frames Transmitted by Opcode

+ + + + + + + +
OpcodeCount
01
11
81
91
Total4
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3532266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               fragment1
+
003 TX OCTETS: 01
+
004 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=12, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               ping payload
+
005 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=1, SYNC=False
+
               fragment2
+
006 CLOSE CONNECTION AFTER 1.000000 sec
+
007 TX OCTETS: 09
+
008 TX OCTETS: 66
+
009 TX OCTETS: 72
+
010 TX OCTETS: 61
+
011 TX OCTETS: 67
+
012 TX OCTETS: 6d
+
013 TX OCTETS: 65
+
014 TX OCTETS: 6e
+
015 TX OCTETS: 74
+
016 TX OCTETS: 31
+
017 TX OCTETS: 89
+
018 TX OCTETS: 0c
+
019 TX OCTETS: 70
+
020 TX OCTETS: 69
+
021 TX OCTETS: 6e
+
022 TX OCTETS: 67
+
023 TX OCTETS: 20
+
024 TX OCTETS: 70
+
025 TX OCTETS: 61
+
026 TX OCTETS: 79
+
027 TX OCTETS: 6c
+
028 TX OCTETS: 6f
+
029 TX OCTETS: 61
+
030 TX OCTETS: 64
+
031 TX OCTETS: 80
+
032 RX OCTETS: 8a8cc78f9495b7e6faf2e7fff5ecabe0f5f1
+
033 RX FRAME : OPCODE=10, FIN=True, RSV=0, PAYLOAD-LEN=12, MASKED=True, MASK=6337386639343935
+
               ping payload
+
034 TX OCTETS: 09
+
035 TX OCTETS: 66
+
036 TX OCTETS: 72
+
037 TX OCTETS: 61
+
038 TX OCTETS: 67
+
039 TX OCTETS: 6d
+
040 TX OCTETS: 65
+
041 TX OCTETS: 6e
+
042 TX OCTETS: 74
+
043 TX OCTETS: 32
+
044 RX OCTETS: 81921f3abd2a7948dc4d725fd35e2e5ccf4b7857d8446b08
+
045 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=18, MASKED=True, MASK=3166336162643261
+
               fragment1fragment2
+
046 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
047 TX OCTETS: 880203e8
+
048 RX OCTETS: 888244aa44d14742
+
049 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3434616134346431
+
               0x03e8
+
050 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_5_8.json b/autobahn/client/tungstenite_case_5_8.json new file mode 100644 index 0000000..d97481a --- /dev/null +++ b/autobahn/client/tungstenite_case_5_8.json @@ -0,0 +1,516 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 52, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text Message fragmented into 2 fragments, one ping with payload in-between. Octets are sent in octet-wise chops.", + "droppedByMe": true, + "duration": 2, + "expectation": "A pong is received, then the message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "pong", + "ping payload" + ], + [ + "message", + "fragment1fragment2", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=52&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: vLo1rABtHblqidV7CqXFxA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: KMPjDmX001WwGBjkzce43DZRW8I=\r\n\r\n", + "id": "5.8", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "pong", + "ping payload" + ], + [ + "message", + "fragment1fragment2", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1, + "10": 1 + }, + "rxOctetStats": { + "8": 1, + "18": 1, + "24": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:53.950Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1, + "8": 1, + "9": 1 + }, + "txOctetStats": { + "1": 36, + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3532266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 9, + "fragment1" + ], + 1, + false, + 0, + null, + null, + 1, + false + ], + [ + "TO", + [ + 1, + "01" + ], + true + ], + [ + "TF", + [ + 12, + "ping payload" + ], + 9, + true, + 0, + null, + null, + 1, + false + ], + [ + "TF", + [ + 9, + "fragment2" + ], + 0, + true, + 0, + null, + null, + 1, + false + ], + [ + "TI", + 1 + ], + [ + "TO", + [ + 1, + "09" + ], + true + ], + [ + "TO", + [ + 1, + "66" + ], + true + ], + [ + "TO", + [ + 1, + "72" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "67" + ], + true + ], + [ + "TO", + [ + 1, + "6d" + ], + true + ], + [ + "TO", + [ + 1, + "65" + ], + true + ], + [ + "TO", + [ + 1, + "6e" + ], + true + ], + [ + "TO", + [ + 1, + "74" + ], + true + ], + [ + "TO", + [ + 1, + "31" + ], + true + ], + [ + "TO", + [ + 1, + "89" + ], + true + ], + [ + "TO", + [ + 1, + "0c" + ], + true + ], + [ + "TO", + [ + 1, + "70" + ], + true + ], + [ + "TO", + [ + 1, + "69" + ], + true + ], + [ + "TO", + [ + 1, + "6e" + ], + true + ], + [ + "TO", + [ + 1, + "67" + ], + true + ], + [ + "TO", + [ + 1, + "20" + ], + true + ], + [ + "TO", + [ + 1, + "70" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "79" + ], + true + ], + [ + "TO", + [ + 1, + "6c" + ], + true + ], + [ + "TO", + [ + 1, + "6f" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "64" + ], + true + ], + [ + "TO", + [ + 1, + "80" + ], + true + ], + [ + "RO", + [ + 18, + "8a8cc78f9495b7e6faf2e7fff5ecabe0f5f1" + ] + ], + [ + "RF", + [ + 12, + "ping payload" + ], + 10, + true, + 0, + true, + "c78f9495" + ], + [ + "TO", + [ + 1, + "09" + ], + true + ], + [ + "TO", + [ + 1, + "66" + ], + true + ], + [ + "TO", + [ + 1, + "72" + ], + true + ], + [ + "TO", + [ + 1, + "61" + ], + true + ], + [ + "TO", + [ + 1, + "67" + ], + true + ], + [ + "TO", + [ + 1, + "6d" + ], + true + ], + [ + "TO", + [ + 1, + "65" + ], + true + ], + [ + "TO", + [ + 1, + "6e" + ], + true + ], + [ + "TO", + [ + 1, + "74" + ], + true + ], + [ + "TO", + [ + 1, + "32" + ], + true + ], + [ + "RO", + [ + 24, + "81921f3abd2a7948dc4d725fd35e2e5ccf4b7857d8446b08" + ] + ], + [ + "RF", + [ + 18, + "fragment1fragment2" + ], + 1, + true, + 0, + true, + "1f3abd2a" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888244aa44d14742" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "44aa44d1" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_5_9.html b/autobahn/client/tungstenite_case_5_9.html new file mode 100644 index 0000000..b1e8671 --- /dev/null +++ b/autobahn/client/tungstenite_case_5_9.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 5.9 : Pass - 0 ms @ 2020-09-07T18:43:53.953Z

+

Case Description

Send unfragmented Text Message after Continuation Frame with FIN = true, where there is nothing to continue, sent in one chop.

+

Case Expectation

The connection is failed immediately, since there is no message to continue.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=53&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 41Aas+9XMiaOfrjcpffq3g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: ASVg30zjj+XO8uGT47/YGPYabXY=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
15115
26126
2061206
Total3247
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
01
11
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3533266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=24, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               non-continuation payload
+
003 TX OCTETS: 80186e6f6e2d636f6e74696e756174696f6e207061796c6f6164
+
004 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               Hello, world!
+
005 TX OCTETS: 810d48656c6c6f2c20776f726c6421
+
006 FAIL CONNECTION AFTER 1.000000 sec
+
007 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_5_9.json b/autobahn/client/tungstenite_case_5_9.json new file mode 100644 index 0000000..76ea3ef --- /dev/null +++ b/autobahn/client/tungstenite_case_5_9.json @@ -0,0 +1,122 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 53, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send unfragmented Text Message after Continuation Frame with FIN = true, where there is nothing to continue, sent in one chop.", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since there is no message to continue.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": false, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=53&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 41Aas+9XMiaOfrjcpffq3g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: ASVg30zjj+XO8uGT47/YGPYabXY=\r\n\r\n", + "id": "5.9", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:53.953Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1 + }, + "txOctetStats": { + "15": 1, + "26": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3533266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 24, + "non-continuation payload" + ], + 0, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 26, + "80186e6f6e2d636f6e74696e756174696f6e207061796c6f6164" + ], + false + ], + [ + "TF", + [ + 13, + "Hello, world!" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 15, + "810d48656c6c6f2c20776f726c6421" + ], + false + ], + [ + "KL", + 1 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_10_1.html b/autobahn/client/tungstenite_case_6_10_1.html new file mode 100644 index 0000000..6df4344 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_10_1.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.10.1 : Pass - 0 ms @ 2020-09-07T18:44:02.034Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf7bfbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=104&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: R7rZvg4qd7MmJaijuQi+Fg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: EeII9R4tlC1DVCvTPLiM4rulyAU=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
616
2061206
Total2212
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313034266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xf7bfbfbf
+
003 TX OCTETS: 8104f7bfbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_10_1.json b/autobahn/client/tungstenite_case_6_10_1.json new file mode 100644 index 0000000..c77e1cf --- /dev/null +++ b/autobahn/client/tungstenite_case_6_10_1.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 104, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf7bfbfbf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=104&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: R7rZvg4qd7MmJaijuQi+Fg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: EeII9R4tlC1DVCvTPLiM4rulyAU=\r\n\r\n", + "id": "6.10.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.034Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "6": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313034266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "0xf7bfbfbf" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f7bfbfbf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_10_2.html b/autobahn/client/tungstenite_case_6_10_2.html new file mode 100644 index 0000000..bc47373 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_10_2.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.10.2 : Pass - 0 ms @ 2020-09-07T18:44:02.035Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfbbfbfbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=105&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: aYSSMpWI71ZxhKSyUa9MxA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: whXJjgLK8WLnUVebWvgXQgW3tfI=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
717
2061206
Total2213
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313035266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=5, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xfbbfbfbfbf
+
003 TX OCTETS: 8105fbbfbfbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_10_2.json b/autobahn/client/tungstenite_case_6_10_2.json new file mode 100644 index 0000000..3f0842d --- /dev/null +++ b/autobahn/client/tungstenite_case_6_10_2.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 105, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfbbfbfbfbf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=105&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: aYSSMpWI71ZxhKSyUa9MxA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: whXJjgLK8WLnUVebWvgXQgW3tfI=\r\n\r\n", + "id": "6.10.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.035Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "7": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313035266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 5, + "0xfbbfbfbfbf" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 7, + "8105fbbfbfbfbf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_10_3.html b/autobahn/client/tungstenite_case_6_10_3.html new file mode 100644 index 0000000..ea90d78 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_10_3.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.10.3 : Pass - 0 ms @ 2020-09-07T18:44:02.036Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfdbfbfbfbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=106&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: bgmdwuik4KxyEPKtDG1ydA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: hoeOxULFMnq/vakZqqw48/TC068=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2061206
Total2214
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313036266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=6, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xfdbfbfbfbfbf
+
003 TX OCTETS: 8106fdbfbfbfbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_10_3.json b/autobahn/client/tungstenite_case_6_10_3.json new file mode 100644 index 0000000..72b8030 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_10_3.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 106, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfdbfbfbfbfbf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=106&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: bgmdwuik4KxyEPKtDG1ydA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: hoeOxULFMnq/vakZqqw48/TC068=\r\n\r\n", + "id": "6.10.3", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.036Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "8": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313036266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 6, + "0xfdbfbfbfbfbf" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 8, + "8106fdbfbfbfbfbf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_11_1.html b/autobahn/client/tungstenite_case_6_11_1.html new file mode 100644 index 0000000..a44ed0f --- /dev/null +++ b/autobahn/client/tungstenite_case_6_11_1.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.11.1 : Pass - 1 ms @ 2020-09-07T18:44:02.036Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xed9fbf

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\ud7ff', False)]}

+ Observed:
[('message', u'\ud7ff', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=107&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: rypBONrvTW0vgmX86q4Gsw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: W9OicA2hdo5OVqZfd5qKa0tpR0w=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
919
2571257
Total3274
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
515
2061206
Total3215
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313037266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ퟿
+
003 TX OCTETS: 8103ed9fbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8183f768b27b1af70d
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASKED=True, MASK=6637363862323762
+
               ퟿
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88824acbdfcc4923
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3461636264666363
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_11_1.json b/autobahn/client/tungstenite_case_6_11_1.json new file mode 100644 index 0000000..0230b4e --- /dev/null +++ b/autobahn/client/tungstenite_case_6_11_1.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 107, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xed9fbf", + "droppedByMe": true, + "duration": 1, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ud7ff", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=107&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: rypBONrvTW0vgmX86q4Gsw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: W9OicA2hdo5OVqZfd5qKa0tpR0w=\r\n\r\n", + "id": "6.11.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ud7ff", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "9": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.036Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "5": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313037266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "\ud7ff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103ed9fbf" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 9, + "8183f768b27b1af70d" + ] + ], + [ + "RF", + [ + 3, + "\ud7ff" + ], + 1, + true, + 0, + true, + "f768b27b" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88824acbdfcc4923" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "4acbdfcc" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_11_2.html b/autobahn/client/tungstenite_case_6_11_2.html new file mode 100644 index 0000000..8afe783 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_11_2.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.11.2 : Pass - 0 ms @ 2020-09-07T18:44:02.037Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xee8080

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\ue000', False)]}

+ Observed:
[('message', u'\ue000', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=108&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 1uru/zwkaxmLLnhriEFNCg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Fq05m6qn3TUSsN5Rzl6umeNM3zQ=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
919
2571257
Total3274
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
515
2061206
Total3215
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313038266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               
+
003 TX OCTETS: 8103ee8080
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 81835f2257b3b1a2d7
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASKED=True, MASK=3566323235376233
+
               
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882752dcab676c5
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3735326463616236
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_11_2.json b/autobahn/client/tungstenite_case_6_11_2.json new file mode 100644 index 0000000..a993e14 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_11_2.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 108, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xee8080", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ue000", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=108&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 1uru/zwkaxmLLnhriEFNCg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Fq05m6qn3TUSsN5Rzl6umeNM3zQ=\r\n\r\n", + "id": "6.11.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ue000", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "9": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.037Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "5": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313038266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "\ue000" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103ee8080" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 9, + "81835f2257b3b1a2d7" + ] + ], + [ + "RF", + [ + 3, + "\ue000" + ], + 1, + true, + 0, + true, + "5f2257b3" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882752dcab676c5" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "752dcab6" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_11_3.html b/autobahn/client/tungstenite_case_6_11_3.html new file mode 100644 index 0000000..68a781c --- /dev/null +++ b/autobahn/client/tungstenite_case_6_11_3.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.11.3 : Pass - 0 ms @ 2020-09-07T18:44:02.038Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbd

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\ufffd', False)]}

+ Observed:
[('message', u'\ufffd', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=109&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: fw+oP8xEH6rZ72kPGaSM8A==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: e5mAvFn5NTZE3i0DL0A8bzSRSmI=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
919
2571257
Total3274
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
515
2061206
Total3215
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313039266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               �
+
003 TX OCTETS: 8103efbfbd
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 81837463c7c09bdc7a
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASKED=True, MASK=3734363363376330
+
               �
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882c26404c9c18c
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6332363430346339
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_11_3.json b/autobahn/client/tungstenite_case_6_11_3.json new file mode 100644 index 0000000..2134333 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_11_3.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 109, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbd", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ufffd", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=109&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: fw+oP8xEH6rZ72kPGaSM8A==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: e5mAvFn5NTZE3i0DL0A8bzSRSmI=\r\n\r\n", + "id": "6.11.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ufffd", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "9": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.038Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "5": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313039266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "\ufffd" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103efbfbd" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 9, + "81837463c7c09bdc7a" + ] + ], + [ + "RF", + [ + 3, + "\ufffd" + ], + 1, + true, + 0, + true, + "7463c7c0" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882c26404c9c18c" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "c26404c9" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_11_4.html b/autobahn/client/tungstenite_case_6_11_4.html new file mode 100644 index 0000000..cd8aa58 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_11_4.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.11.4 : Pass - 0 ms @ 2020-09-07T18:44:02.039Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf48fbfbf

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U0010ffff', False)]}

+ Observed:
[('message', u'\U0010ffff', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=110&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: XQ7uGyfSLsZriIFtSEFqog==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 1s9rlkf/Ts6phiAmy7bD77u5u+I=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313130266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ô¿¿
+
003 TX OCTETS: 8104f48fbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 81843533525dc1bcede2
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=3335333335323564
+
               ô¿¿
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882fec78fe4fd2f
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6665633738666534
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_11_4.json b/autobahn/client/tungstenite_case_6_11_4.json new file mode 100644 index 0000000..9938dd4 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_11_4.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 110, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf48fbfbf", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\udbff\udfff", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=110&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: XQ7uGyfSLsZriIFtSEFqog==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 1s9rlkf/Ts6phiAmy7bD77u5u+I=\r\n\r\n", + "id": "6.11.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\udbff\udfff", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.039Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313130266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\udbff\udfff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f48fbfbf" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "81843533525dc1bcede2" + ] + ], + [ + "RF", + [ + 4, + "\udbff\udfff" + ], + 1, + true, + 0, + true, + "3533525d" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882fec78fe4fd2f" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "fec78fe4" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_11_5.html b/autobahn/client/tungstenite_case_6_11_5.html new file mode 100644 index 0000000..7d11756 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_11_5.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.11.5 : Pass - 0 ms @ 2020-09-07T18:44:02.039Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf4908080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=111&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ATTrKPsrdteQOZ1WYWPwgQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: z09G9UoYshjvYKev0msrCVBmEqk=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
616
2061206
Total2212
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313131266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xf4908080
+
003 TX OCTETS: 8104f4908080
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_11_5.json b/autobahn/client/tungstenite_case_6_11_5.json new file mode 100644 index 0000000..965cef3 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_11_5.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 111, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf4908080", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=111&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ATTrKPsrdteQOZ1WYWPwgQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: z09G9UoYshjvYKev0msrCVBmEqk=\r\n\r\n", + "id": "6.11.5", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.039Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "6": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313131266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "0xf4908080" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f4908080" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_12_1.html b/autobahn/client/tungstenite_case_6_12_1.html new file mode 100644 index 0000000..ffc336d --- /dev/null +++ b/autobahn/client/tungstenite_case_6_12_1.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.12.1 : Pass - 0 ms @ 2020-09-07T18:44:02.040Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0x80

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=112&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: dE3sc62dilUrJAxltnApPw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: ZxE5Zphtb7xbBUoij0WCB5rlE98=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
313
2061206
Total2209
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313132266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x80
+
003 TX OCTETS: 810180
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_12_1.json b/autobahn/client/tungstenite_case_6_12_1.json new file mode 100644 index 0000000..a35ce79 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_12_1.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 112, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0x80", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=112&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dE3sc62dilUrJAxltnApPw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: ZxE5Zphtb7xbBUoij0WCB5rlE98=\r\n\r\n", + "id": "6.12.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.040Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "3": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313132266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 1, + "0x80" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "810180" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_12_2.html b/autobahn/client/tungstenite_case_6_12_2.html new file mode 100644 index 0000000..2c326cf --- /dev/null +++ b/autobahn/client/tungstenite_case_6_12_2.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.12.2 : Pass - 0 ms @ 2020-09-07T18:44:02.041Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=113&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: o7f6JXlpUb5st+gvDHLV5w==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: pZPvlhKKDNXR/3/+CGYUAJ8AYEc=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
313
2061206
Total2209
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313133266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xbf
+
003 TX OCTETS: 8101bf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_12_2.json b/autobahn/client/tungstenite_case_6_12_2.json new file mode 100644 index 0000000..33bbe45 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_12_2.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 113, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xbf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=113&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: o7f6JXlpUb5st+gvDHLV5w==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: pZPvlhKKDNXR/3/+CGYUAJ8AYEc=\r\n\r\n", + "id": "6.12.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.041Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "3": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313133266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 1, + "0xbf" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "8101bf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_12_3.html b/autobahn/client/tungstenite_case_6_12_3.html new file mode 100644 index 0000000..77b7076 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_12_3.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.12.3 : Pass - 0 ms @ 2020-09-07T18:44:02.042Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0x80bf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=114&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: O1j3TBiEST2Sjt+cY0Qi2g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: KAzkgk7MgbsTW/5+9LoidUq41NA=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313134266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x80bf
+
003 TX OCTETS: 810280bf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_12_3.json b/autobahn/client/tungstenite_case_6_12_3.json new file mode 100644 index 0000000..f29268c --- /dev/null +++ b/autobahn/client/tungstenite_case_6_12_3.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 114, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0x80bf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=114&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: O1j3TBiEST2Sjt+cY0Qi2g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: KAzkgk7MgbsTW/5+9LoidUq41NA=\r\n\r\n", + "id": "6.12.3", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.042Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313134266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x80bf" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "810280bf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_12_4.html b/autobahn/client/tungstenite_case_6_12_4.html new file mode 100644 index 0000000..ae3af90 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_12_4.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.12.4 : Pass - 0 ms @ 2020-09-07T18:44:02.043Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0x80bf80

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=115&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: iuN/ttWXtSG27BcxTZ+aFg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 8aPzkhxqKYBHEm1CW/B0V6L1ruQ=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
515
2061206
Total2211
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313135266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x80bf80
+
003 TX OCTETS: 810380bf80
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_12_4.json b/autobahn/client/tungstenite_case_6_12_4.json new file mode 100644 index 0000000..a50e303 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_12_4.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 115, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0x80bf80", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=115&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: iuN/ttWXtSG27BcxTZ+aFg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 8aPzkhxqKYBHEm1CW/B0V6L1ruQ=\r\n\r\n", + "id": "6.12.4", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.043Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "5": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313135266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "0x80bf80" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "810380bf80" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_12_5.html b/autobahn/client/tungstenite_case_6_12_5.html new file mode 100644 index 0000000..1bd5c8d --- /dev/null +++ b/autobahn/client/tungstenite_case_6_12_5.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.12.5 : Pass - 0 ms @ 2020-09-07T18:44:02.043Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0x80bf80bf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=116&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: UlyBO2dy9iKIo8zJN5I9oA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: uMQcj6r9SlSVo5SZ1CAf0wKyOfo=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
616
2061206
Total2212
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313136266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x80bf80bf
+
003 TX OCTETS: 810480bf80bf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_12_5.json b/autobahn/client/tungstenite_case_6_12_5.json new file mode 100644 index 0000000..e16cd93 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_12_5.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 116, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0x80bf80bf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=116&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: UlyBO2dy9iKIo8zJN5I9oA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: uMQcj6r9SlSVo5SZ1CAf0wKyOfo=\r\n\r\n", + "id": "6.12.5", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.043Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "6": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313136266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "0x80bf80bf" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "810480bf80bf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_12_6.html b/autobahn/client/tungstenite_case_6_12_6.html new file mode 100644 index 0000000..d5cfe0e --- /dev/null +++ b/autobahn/client/tungstenite_case_6_12_6.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.12.6 : Pass - 0 ms @ 2020-09-07T18:44:02.043Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0x80bf80bf80

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=117&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: fMc6LDiXkDYrsiVJWNXu1w==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: uC0piLBW7Ww+dcCD5PKWVQWEXhU=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
717
2061206
Total2213
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313137266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=5, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x80bf80bf80
+
003 TX OCTETS: 810580bf80bf80
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_12_6.json b/autobahn/client/tungstenite_case_6_12_6.json new file mode 100644 index 0000000..71eb90c --- /dev/null +++ b/autobahn/client/tungstenite_case_6_12_6.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 117, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0x80bf80bf80", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=117&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: fMc6LDiXkDYrsiVJWNXu1w==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: uC0piLBW7Ww+dcCD5PKWVQWEXhU=\r\n\r\n", + "id": "6.12.6", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.043Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "7": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313137266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 5, + "0x80bf80bf80" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 7, + "810580bf80bf80" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_12_7.html b/autobahn/client/tungstenite_case_6_12_7.html new file mode 100644 index 0000000..1384db2 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_12_7.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.12.7 : Pass - 0 ms @ 2020-09-07T18:44:02.044Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0x80bf80bf80bf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=118&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: KnfZnjPP3bkDk6XZcrjbpA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: KKSlIRWkxPS4Z1uBasRl4OOCwOk=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2061206
Total2214
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313138266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=6, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x80bf80bf80bf
+
003 TX OCTETS: 810680bf80bf80bf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_12_7.json b/autobahn/client/tungstenite_case_6_12_7.json new file mode 100644 index 0000000..af5eea1 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_12_7.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 118, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0x80bf80bf80bf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=118&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: KnfZnjPP3bkDk6XZcrjbpA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: KKSlIRWkxPS4Z1uBasRl4OOCwOk=\r\n\r\n", + "id": "6.12.7", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.044Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "8": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313138266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 6, + "0x80bf80bf80bf" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 8, + "810680bf80bf80bf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_12_8.html b/autobahn/client/tungstenite_case_6_12_8.html new file mode 100644 index 0000000..5a4e7b6 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_12_8.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.12.8 : Pass - 0 ms @ 2020-09-07T18:44:02.045Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0x808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbe

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=119&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: nRcE4/+1T6iS94yQt+wPTQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: RLtBuDo1JBe2M0RFtojn/U25mII=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
65165
2061206
Total2271
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313139266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=63, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0
+
               b1b2b3b4b5b6b7b8b9babbbcbdbe ...
+
003 TX OCTETS: 813f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeaf
+
               b0b1b2b3b4b5b6b7b8b9babbbcbd ...
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_12_8.json b/autobahn/client/tungstenite_case_6_12_8.json new file mode 100644 index 0000000..1b70f83 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_12_8.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 119, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0x808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbe", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=119&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: nRcE4/+1T6iS94yQt+wPTQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: RLtBuDo1JBe2M0RFtojn/U25mII=\r\n\r\n", + "id": "6.12.8", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.045Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "65": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313139266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 63, + "0x808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbe ..." + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 65, + "813f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbd ..." + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_13_1.html b/autobahn/client/tungstenite_case_6_13_1.html new file mode 100644 index 0000000..2288539 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_13_1.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.13.1 : Pass - 0 ms @ 2020-09-07T18:44:02.045Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xc020c120c220c320c420c520c620c720c820c920ca20cb20cc20cd20ce20cf20d020d120d220d320d420d520d620d720d820d920da20db20dc20dd20de20

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=120&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 70ezgAd7avrmu5GfRmyuJA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: lEGJdb8K23EhqG6+aAaFjDYQ/aQ=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
64164
2061206
Total2270
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313230266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=62, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xc020c120c220c320c420c520c620c720c820c920ca20cb20cc20cd20ce20cf20d020d120d220d320d420d520d620d720d8
+
               20d920da20db20dc20dd20de20 ...
+
003 TX OCTETS: 813ec020c120c220c320c420c520c620c720c820c920ca20cb20cc20cd20ce20cf20d020d120d220d320d420d520d620d720
+
               d820d920da20db20dc20dd20de20 ...
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_13_1.json b/autobahn/client/tungstenite_case_6_13_1.json new file mode 100644 index 0000000..e24b0e2 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_13_1.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 120, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xc020c120c220c320c420c520c620c720c820c920ca20cb20cc20cd20ce20cf20d020d120d220d320d420d520d620d720d820d920da20db20dc20dd20de20", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=120&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 70ezgAd7avrmu5GfRmyuJA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: lEGJdb8K23EhqG6+aAaFjDYQ/aQ=\r\n\r\n", + "id": "6.13.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.045Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "64": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313230266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 62, + "0xc020c120c220c320c420c520c620c720c820c920ca20cb20cc20cd20ce20cf20d020d120d220d320d420d520d620d720d820d920da20db20dc20dd20de20 ..." + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 64, + "813ec020c120c220c320c420c520c620c720c820c920ca20cb20cc20cd20ce20cf20d020d120d220d320d420d520d620d720d820d920da20db20dc20dd20de20 ..." + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_13_2.html b/autobahn/client/tungstenite_case_6_13_2.html new file mode 100644 index 0000000..899b8e4 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_13_2.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.13.2 : Pass - 0 ms @ 2020-09-07T18:44:02.046Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xe020e120e220e320e420e520e620e720e820e920ea20eb20ec20ed20ee20

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=121&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: OhR6Z5PUf4PLSci7iHlVHQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 50F9ddOiwuwJ9xTPUIvNOSqIHfg=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
32132
2061206
Total2238
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313231266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=30, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xe020e120e220e320e420e520e620e720e820e920ea20eb20ec20ed20ee20
+
003 TX OCTETS: 811ee020e120e220e320e420e520e620e720e820e920ea20eb20ec20ed20ee20
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_13_2.json b/autobahn/client/tungstenite_case_6_13_2.json new file mode 100644 index 0000000..f4205ed --- /dev/null +++ b/autobahn/client/tungstenite_case_6_13_2.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 121, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xe020e120e220e320e420e520e620e720e820e920ea20eb20ec20ed20ee20", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=121&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: OhR6Z5PUf4PLSci7iHlVHQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 50F9ddOiwuwJ9xTPUIvNOSqIHfg=\r\n\r\n", + "id": "6.13.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.046Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "32": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313231266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 30, + "0xe020e120e220e320e420e520e620e720e820e920ea20eb20ec20ed20ee20" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 32, + "811ee020e120e220e320e420e520e620e720e820e920ea20eb20ec20ed20ee20" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_13_3.html b/autobahn/client/tungstenite_case_6_13_3.html new file mode 100644 index 0000000..f699572 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_13_3.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.13.3 : Pass - 0 ms @ 2020-09-07T18:44:02.046Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf020f120f220f320f420f520f620

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=122&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 4dZ0jXO20xosVuDQE05WIw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: u/kBaFB2IXWxYwp7BaTrs82Her4=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
16116
2061206
Total2222
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313232266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=14, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xf020f120f220f320f420f520f620
+
003 TX OCTETS: 810ef020f120f220f320f420f520f620
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_13_3.json b/autobahn/client/tungstenite_case_6_13_3.json new file mode 100644 index 0000000..9455cba --- /dev/null +++ b/autobahn/client/tungstenite_case_6_13_3.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 122, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf020f120f220f320f420f520f620", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=122&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 4dZ0jXO20xosVuDQE05WIw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: u/kBaFB2IXWxYwp7BaTrs82Her4=\r\n\r\n", + "id": "6.13.3", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.046Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "16": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313232266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 14, + "0xf020f120f220f320f420f520f620" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 16, + "810ef020f120f220f320f420f520f620" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_13_4.html b/autobahn/client/tungstenite_case_6_13_4.html new file mode 100644 index 0000000..981da5d --- /dev/null +++ b/autobahn/client/tungstenite_case_6_13_4.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.13.4 : Pass - 0 ms @ 2020-09-07T18:44:02.047Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf820f920fa20

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=123&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: BlgJYxJLhVc1BjXFoh0XGA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: xbVc7zeF52S4BigKej+u67v7eDI=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2061206
Total2214
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313233266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=6, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xf820f920fa20
+
003 TX OCTETS: 8106f820f920fa20
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_13_4.json b/autobahn/client/tungstenite_case_6_13_4.json new file mode 100644 index 0000000..3482fb3 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_13_4.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 123, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf820f920fa20", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=123&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: BlgJYxJLhVc1BjXFoh0XGA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: xbVc7zeF52S4BigKej+u67v7eDI=\r\n\r\n", + "id": "6.13.4", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.047Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "8": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313233266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 6, + "0xf820f920fa20" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 8, + "8106f820f920fa20" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_13_5.html b/autobahn/client/tungstenite_case_6_13_5.html new file mode 100644 index 0000000..f99f011 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_13_5.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.13.5 : Pass - 0 ms @ 2020-09-07T18:44:02.047Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfc20

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=124&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: TAiAxwO4fAt+12Od2iGlsg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: +pAQuP1GXq94DJzDOQRxXAcGJsI=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313234266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xfc20
+
003 TX OCTETS: 8102fc20
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_13_5.json b/autobahn/client/tungstenite_case_6_13_5.json new file mode 100644 index 0000000..31b4448 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_13_5.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 124, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfc20", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=124&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: TAiAxwO4fAt+12Od2iGlsg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: +pAQuP1GXq94DJzDOQRxXAcGJsI=\r\n\r\n", + "id": "6.13.5", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.047Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313234266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0xfc20" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "8102fc20" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_14_1.html b/autobahn/client/tungstenite_case_6_14_1.html new file mode 100644 index 0000000..a183ef9 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_14_1.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.14.1 : Pass - 0 ms @ 2020-09-07T18:44:02.048Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xc0

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=125&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 1ui0ZXZfSLgnkMlHF5aO0A==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: upbqMc6Peb5NMaBAzwvvvFzsEDo=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
313
2061206
Total2209
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313235266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xc0
+
003 TX OCTETS: 8101c0
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_14_1.json b/autobahn/client/tungstenite_case_6_14_1.json new file mode 100644 index 0000000..67bc8ca --- /dev/null +++ b/autobahn/client/tungstenite_case_6_14_1.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 125, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xc0", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=125&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 1ui0ZXZfSLgnkMlHF5aO0A==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: upbqMc6Peb5NMaBAzwvvvFzsEDo=\r\n\r\n", + "id": "6.14.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.048Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "3": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313235266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 1, + "0xc0" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "8101c0" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_14_10.html b/autobahn/client/tungstenite_case_6_14_10.html new file mode 100644 index 0000000..ef6cb14 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_14_10.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.14.10 : Pass - 0 ms @ 2020-09-07T18:44:02.053Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfdbfbfbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=134&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: LZ/cXn/OT5K+cCM/MAb90Q==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 3i7eih+LypQSmsbRiA1AvhD05yg=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
717
2061206
Total2213
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313334266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=5, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xfdbfbfbfbf
+
003 TX OCTETS: 8105fdbfbfbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_14_10.json b/autobahn/client/tungstenite_case_6_14_10.json new file mode 100644 index 0000000..7830635 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_14_10.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 134, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfdbfbfbfbf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=134&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: LZ/cXn/OT5K+cCM/MAb90Q==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 3i7eih+LypQSmsbRiA1AvhD05yg=\r\n\r\n", + "id": "6.14.10", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.053Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "7": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313334266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 5, + "0xfdbfbfbfbf" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 7, + "8105fdbfbfbfbf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_14_2.html b/autobahn/client/tungstenite_case_6_14_2.html new file mode 100644 index 0000000..ee385d0 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_14_2.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.14.2 : Pass - 0 ms @ 2020-09-07T18:44:02.048Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xe080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=126&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: lF6hUxub4kcDxOIvYjuS+w==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: /AK5LKQezIF/wcdCjjIoybLHPBM=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313236266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xe080
+
003 TX OCTETS: 8102e080
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_14_2.json b/autobahn/client/tungstenite_case_6_14_2.json new file mode 100644 index 0000000..a86eeaf --- /dev/null +++ b/autobahn/client/tungstenite_case_6_14_2.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 126, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xe080", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=126&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: lF6hUxub4kcDxOIvYjuS+w==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: /AK5LKQezIF/wcdCjjIoybLHPBM=\r\n\r\n", + "id": "6.14.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.048Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313236266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0xe080" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "8102e080" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_14_3.html b/autobahn/client/tungstenite_case_6_14_3.html new file mode 100644 index 0000000..84d5854 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_14_3.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.14.3 : Pass - 0 ms @ 2020-09-07T18:44:02.049Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf08080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=127&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: LbP+d2jRUXKJJkIfG5kuSQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: pKDxW4oX0DoJTKIdR3K6F046sEg=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
515
2061206
Total2211
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313237266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xf08080
+
003 TX OCTETS: 8103f08080
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_14_3.json b/autobahn/client/tungstenite_case_6_14_3.json new file mode 100644 index 0000000..ef51880 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_14_3.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 127, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf08080", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=127&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: LbP+d2jRUXKJJkIfG5kuSQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: pKDxW4oX0DoJTKIdR3K6F046sEg=\r\n\r\n", + "id": "6.14.3", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.049Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "5": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313237266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "0xf08080" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103f08080" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_14_4.html b/autobahn/client/tungstenite_case_6_14_4.html new file mode 100644 index 0000000..83dc22e --- /dev/null +++ b/autobahn/client/tungstenite_case_6_14_4.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.14.4 : Pass - 0 ms @ 2020-09-07T18:44:02.049Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf8808080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=128&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: iJ9DO78dU0xstdidHWOH/Q==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: KrC/p7LYvkWRa3gAgO1pBHMxe8M=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
616
2061206
Total2212
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313238266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xf8808080
+
003 TX OCTETS: 8104f8808080
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_14_4.json b/autobahn/client/tungstenite_case_6_14_4.json new file mode 100644 index 0000000..4f3f7d6 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_14_4.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 128, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf8808080", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=128&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: iJ9DO78dU0xstdidHWOH/Q==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: KrC/p7LYvkWRa3gAgO1pBHMxe8M=\r\n\r\n", + "id": "6.14.4", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.049Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "6": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313238266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "0xf8808080" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f8808080" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_14_5.html b/autobahn/client/tungstenite_case_6_14_5.html new file mode 100644 index 0000000..e1de751 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_14_5.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.14.5 : Pass - 0 ms @ 2020-09-07T18:44:02.050Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfc80808080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=129&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 759ueo9zlAOz2FROZulMcA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: t59B+WOqoeXwmHNWlGzyJAEzcUg=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
717
2061206
Total2213
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313239266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=5, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xfc80808080
+
003 TX OCTETS: 8105fc80808080
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_14_5.json b/autobahn/client/tungstenite_case_6_14_5.json new file mode 100644 index 0000000..67ea054 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_14_5.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 129, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfc80808080", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=129&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 759ueo9zlAOz2FROZulMcA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: t59B+WOqoeXwmHNWlGzyJAEzcUg=\r\n\r\n", + "id": "6.14.5", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.050Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "7": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313239266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 5, + "0xfc80808080" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 7, + "8105fc80808080" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_14_6.html b/autobahn/client/tungstenite_case_6_14_6.html new file mode 100644 index 0000000..54d0c41 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_14_6.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.14.6 : Pass - 0 ms @ 2020-09-07T18:44:02.050Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xdf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=130&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: eSNB0CLx/nyzxu430R1Hug==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: yO1OQs4vpjLyXXFUAFopaqMgZIs=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
313
2061206
Total2209
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313330266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xdf
+
003 TX OCTETS: 8101df
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_14_6.json b/autobahn/client/tungstenite_case_6_14_6.json new file mode 100644 index 0000000..f5e18bb --- /dev/null +++ b/autobahn/client/tungstenite_case_6_14_6.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 130, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xdf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=130&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: eSNB0CLx/nyzxu430R1Hug==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: yO1OQs4vpjLyXXFUAFopaqMgZIs=\r\n\r\n", + "id": "6.14.6", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.050Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "3": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313330266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 1, + "0xdf" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "8101df" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_14_7.html b/autobahn/client/tungstenite_case_6_14_7.html new file mode 100644 index 0000000..4502ff3 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_14_7.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.14.7 : Pass - 0 ms @ 2020-09-07T18:44:02.051Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xefbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=131&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 2ZxZmqVUdujcA8ppo+TrvQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: toPIbgr5Uv8J/MsPApE+WX/0o7Y=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313331266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xefbf
+
003 TX OCTETS: 8102efbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_14_7.json b/autobahn/client/tungstenite_case_6_14_7.json new file mode 100644 index 0000000..293c8b4 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_14_7.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 131, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xefbf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=131&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 2ZxZmqVUdujcA8ppo+TrvQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: toPIbgr5Uv8J/MsPApE+WX/0o7Y=\r\n\r\n", + "id": "6.14.7", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.051Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313331266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0xefbf" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "8102efbf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_14_8.html b/autobahn/client/tungstenite_case_6_14_8.html new file mode 100644 index 0000000..db402d2 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_14_8.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.14.8 : Pass - 0 ms @ 2020-09-07T18:44:02.051Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf7bfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=132&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 3XH68MgkuPoohv1xRdfvVQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: imPXi63x/hfitxLcAXFBt41PuNQ=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
515
2061206
Total2211
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313332266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xf7bfbf
+
003 TX OCTETS: 8103f7bfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_14_8.json b/autobahn/client/tungstenite_case_6_14_8.json new file mode 100644 index 0000000..8b266a6 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_14_8.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 132, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf7bfbf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=132&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 3XH68MgkuPoohv1xRdfvVQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: imPXi63x/hfitxLcAXFBt41PuNQ=\r\n\r\n", + "id": "6.14.8", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.051Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "5": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313332266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "0xf7bfbf" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103f7bfbf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_14_9.html b/autobahn/client/tungstenite_case_6_14_9.html new file mode 100644 index 0000000..24d5df6 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_14_9.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.14.9 : Pass - 0 ms @ 2020-09-07T18:44:02.052Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfbbfbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=133&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 8DnhF66nmm27Oxl5Rz7fHQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: fDLkpnAO5q25KJXMBn7knsYpRfQ=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
616
2061206
Total2212
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313333266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xfbbfbfbf
+
003 TX OCTETS: 8104fbbfbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_14_9.json b/autobahn/client/tungstenite_case_6_14_9.json new file mode 100644 index 0000000..22b782a --- /dev/null +++ b/autobahn/client/tungstenite_case_6_14_9.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 133, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfbbfbfbf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=133&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 8DnhF66nmm27Oxl5Rz7fHQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: fDLkpnAO5q25KJXMBn7knsYpRfQ=\r\n\r\n", + "id": "6.14.9", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.052Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "6": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313333266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "0xfbbfbfbf" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104fbbfbfbf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_15_1.html b/autobahn/client/tungstenite_case_6_15_1.html new file mode 100644 index 0000000..df17996 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_15_1.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.15.1 : Pass - 0 ms @ 2020-09-07T18:44:02.053Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xc0e080f08080f8808080fc80808080dfefbff7bfbffbbfbfbffdbfbfbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=135&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: +gWE+NSk/AQx87URi0gMkQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: iEclg+rkx2gveOFtTH5FMY2NCyo=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
32132
2061206
Total2238
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313335266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=30, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xc0e080f08080f8808080fc80808080dfefbff7bfbffbbfbfbffdbfbfbfbf
+
003 TX OCTETS: 811ec0e080f08080f8808080fc80808080dfefbff7bfbffbbfbfbffdbfbfbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_15_1.json b/autobahn/client/tungstenite_case_6_15_1.json new file mode 100644 index 0000000..fa71530 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_15_1.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 135, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xc0e080f08080f8808080fc80808080dfefbff7bfbffbbfbfbffdbfbfbfbf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=135&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: +gWE+NSk/AQx87URi0gMkQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: iEclg+rkx2gveOFtTH5FMY2NCyo=\r\n\r\n", + "id": "6.15.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.053Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "32": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313335266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 30, + "0xc0e080f08080f8808080fc80808080dfefbff7bfbffbbfbfbffdbfbfbfbf" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 32, + "811ec0e080f08080f8808080fc80808080dfefbff7bfbffbbfbfbffdbfbfbfbf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_16_1.html b/autobahn/client/tungstenite_case_6_16_1.html new file mode 100644 index 0000000..cfc7a0a --- /dev/null +++ b/autobahn/client/tungstenite_case_6_16_1.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.16.1 : Pass - 0 ms @ 2020-09-07T18:44:02.054Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfe

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=136&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 2ZKiAm4B9tFeno1jXQMWZw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: KY26fhNIqHdLPjUpPW5uSvY2SsA=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
313
2061206
Total2209
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313336266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xfe
+
003 TX OCTETS: 8101fe
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_16_1.json b/autobahn/client/tungstenite_case_6_16_1.json new file mode 100644 index 0000000..e2b7580 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_16_1.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 136, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfe", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=136&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 2ZKiAm4B9tFeno1jXQMWZw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: KY26fhNIqHdLPjUpPW5uSvY2SsA=\r\n\r\n", + "id": "6.16.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.054Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "3": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313336266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 1, + "0xfe" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "8101fe" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_16_2.html b/autobahn/client/tungstenite_case_6_16_2.html new file mode 100644 index 0000000..ec9d7f8 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_16_2.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.16.2 : Pass - 0 ms @ 2020-09-07T18:44:02.055Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xff

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=137&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 6bmqw+pmPH12SaegnbfDYg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: sUkH4WBl1T4UlAiFIuQdZgyHGBs=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
313
2061206
Total2209
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313337266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xff
+
003 TX OCTETS: 8101ff
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_16_2.json b/autobahn/client/tungstenite_case_6_16_2.json new file mode 100644 index 0000000..1ac3c6d --- /dev/null +++ b/autobahn/client/tungstenite_case_6_16_2.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 137, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xff", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=137&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 6bmqw+pmPH12SaegnbfDYg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: sUkH4WBl1T4UlAiFIuQdZgyHGBs=\r\n\r\n", + "id": "6.16.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.055Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "3": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313337266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 1, + "0xff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "8101ff" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_16_3.html b/autobahn/client/tungstenite_case_6_16_3.html new file mode 100644 index 0000000..b1d074a --- /dev/null +++ b/autobahn/client/tungstenite_case_6_16_3.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.16.3 : Pass - 0 ms @ 2020-09-07T18:44:02.055Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfefeffff

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=138&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: R4BNuLSyFHjHwGd5S+pvrQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: tg2UnPv630inBdeNM7WTMo0pENc=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
616
2061206
Total2212
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313338266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xfefeffff
+
003 TX OCTETS: 8104fefeffff
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_16_3.json b/autobahn/client/tungstenite_case_6_16_3.json new file mode 100644 index 0000000..9b9fddb --- /dev/null +++ b/autobahn/client/tungstenite_case_6_16_3.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 138, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfefeffff", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=138&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: R4BNuLSyFHjHwGd5S+pvrQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: tg2UnPv630inBdeNM7WTMo0pENc=\r\n\r\n", + "id": "6.16.3", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.055Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "6": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313338266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "0xfefeffff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104fefeffff" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_17_1.html b/autobahn/client/tungstenite_case_6_17_1.html new file mode 100644 index 0000000..cd04318 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_17_1.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.17.1 : Pass - 0 ms @ 2020-09-07T18:44:02.056Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xc0af

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=139&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: m4RAg6O1utFyJ7jJHe7vrA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 9Jib8mThYfnxFIgKAdX4iBZ/zP4=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313339266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xc0af
+
003 TX OCTETS: 8102c0af
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_17_1.json b/autobahn/client/tungstenite_case_6_17_1.json new file mode 100644 index 0000000..e054f08 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_17_1.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 139, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xc0af", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=139&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: m4RAg6O1utFyJ7jJHe7vrA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 9Jib8mThYfnxFIgKAdX4iBZ/zP4=\r\n\r\n", + "id": "6.17.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.056Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313339266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0xc0af" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "8102c0af" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_17_2.html b/autobahn/client/tungstenite_case_6_17_2.html new file mode 100644 index 0000000..80965b7 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_17_2.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.17.2 : Pass - 0 ms @ 2020-09-07T18:44:02.056Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xe080af

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=140&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 1adqAOG0Lk20CWPf4aNqGw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: elLCugqdAmRRCSbN4Lal1imNmd4=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
515
2061206
Total2211
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313430266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xe080af
+
003 TX OCTETS: 8103e080af
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_17_2.json b/autobahn/client/tungstenite_case_6_17_2.json new file mode 100644 index 0000000..1dd3d3b --- /dev/null +++ b/autobahn/client/tungstenite_case_6_17_2.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 140, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xe080af", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=140&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 1adqAOG0Lk20CWPf4aNqGw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: elLCugqdAmRRCSbN4Lal1imNmd4=\r\n\r\n", + "id": "6.17.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.056Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "5": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313430266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "0xe080af" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103e080af" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_17_3.html b/autobahn/client/tungstenite_case_6_17_3.html new file mode 100644 index 0000000..903e36f --- /dev/null +++ b/autobahn/client/tungstenite_case_6_17_3.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.17.3 : Pass - 0 ms @ 2020-09-07T18:44:02.057Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf08080af

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=141&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: nMQdPXIrXw+DNMwsXZ4mfw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 075IGTNyVvE3Qoe2xpXQ58dmH/4=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
616
2061206
Total2212
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313431266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xf08080af
+
003 TX OCTETS: 8104f08080af
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_17_3.json b/autobahn/client/tungstenite_case_6_17_3.json new file mode 100644 index 0000000..458e6f5 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_17_3.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 141, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf08080af", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=141&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: nMQdPXIrXw+DNMwsXZ4mfw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 075IGTNyVvE3Qoe2xpXQ58dmH/4=\r\n\r\n", + "id": "6.17.3", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.057Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "6": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313431266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "0xf08080af" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f08080af" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_17_4.html b/autobahn/client/tungstenite_case_6_17_4.html new file mode 100644 index 0000000..2f9b344 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_17_4.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.17.4 : Pass - 0 ms @ 2020-09-07T18:44:02.058Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf8808080af

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=142&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 4y2zZiruM1aXSq1OMOYS+g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Kz6j9vJx43ZR/wr3lWvirjMmjQc=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
717
2061206
Total2213
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313432266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=5, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xf8808080af
+
003 TX OCTETS: 8105f8808080af
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_17_4.json b/autobahn/client/tungstenite_case_6_17_4.json new file mode 100644 index 0000000..03e171d --- /dev/null +++ b/autobahn/client/tungstenite_case_6_17_4.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 142, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf8808080af", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=142&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 4y2zZiruM1aXSq1OMOYS+g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Kz6j9vJx43ZR/wr3lWvirjMmjQc=\r\n\r\n", + "id": "6.17.4", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.058Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "7": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313432266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 5, + "0xf8808080af" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 7, + "8105f8808080af" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_17_5.html b/autobahn/client/tungstenite_case_6_17_5.html new file mode 100644 index 0000000..e4be285 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_17_5.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.17.5 : Pass - 0 ms @ 2020-09-07T18:44:02.058Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfc80808080af

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=143&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: BNZxGCkiq97vuQpN6kAkOg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Ju6pNuGHayFHyI+BKpJB4FMa1F0=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2061206
Total2214
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313433266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=6, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xfc80808080af
+
003 TX OCTETS: 8106fc80808080af
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_17_5.json b/autobahn/client/tungstenite_case_6_17_5.json new file mode 100644 index 0000000..501467c --- /dev/null +++ b/autobahn/client/tungstenite_case_6_17_5.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 143, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfc80808080af", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=143&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: BNZxGCkiq97vuQpN6kAkOg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Ju6pNuGHayFHyI+BKpJB4FMa1F0=\r\n\r\n", + "id": "6.17.5", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.058Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "8": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313433266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 6, + "0xfc80808080af" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 8, + "8106fc80808080af" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_18_1.html b/autobahn/client/tungstenite_case_6_18_1.html new file mode 100644 index 0000000..9c41292 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_18_1.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.18.1 : Pass - 1 ms @ 2020-09-07T18:44:02.059Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xc1bf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=144&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: T04HlwL+tlEsKRXgzzNFVw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 3y7G0RW54WwfgMRJ48s6RHQbFA0=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313434266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xc1bf
+
003 TX OCTETS: 8102c1bf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_18_1.json b/autobahn/client/tungstenite_case_6_18_1.json new file mode 100644 index 0000000..d68e535 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_18_1.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 144, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xc1bf", + "droppedByMe": false, + "duration": 1, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=144&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: T04HlwL+tlEsKRXgzzNFVw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 3y7G0RW54WwfgMRJ48s6RHQbFA0=\r\n\r\n", + "id": "6.18.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.059Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313434266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0xc1bf" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "8102c1bf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_18_2.html b/autobahn/client/tungstenite_case_6_18_2.html new file mode 100644 index 0000000..7fbdaa6 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_18_2.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.18.2 : Pass - 0 ms @ 2020-09-07T18:44:02.060Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xe09fbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=145&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Lz46p7jZtnVK3FOfq2EAbQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: b0+5zcOSEWEy7Ag8sb/TYWdTXXg=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
515
2061206
Total2211
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313435266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xe09fbf
+
003 TX OCTETS: 8103e09fbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_18_2.json b/autobahn/client/tungstenite_case_6_18_2.json new file mode 100644 index 0000000..e0ffc30 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_18_2.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 145, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xe09fbf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=145&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Lz46p7jZtnVK3FOfq2EAbQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: b0+5zcOSEWEy7Ag8sb/TYWdTXXg=\r\n\r\n", + "id": "6.18.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.060Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "5": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313435266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "0xe09fbf" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103e09fbf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_18_3.html b/autobahn/client/tungstenite_case_6_18_3.html new file mode 100644 index 0000000..3a1e04e --- /dev/null +++ b/autobahn/client/tungstenite_case_6_18_3.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.18.3 : Pass - 0 ms @ 2020-09-07T18:44:02.061Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf08fbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=146&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 2Q1BE+KRuRpFl/VKrwynPQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: YSJVhD4ms64hFzloSelU76akRsc=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
616
2061206
Total2212
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313436266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xf08fbfbf
+
003 TX OCTETS: 8104f08fbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_18_3.json b/autobahn/client/tungstenite_case_6_18_3.json new file mode 100644 index 0000000..77efc4f --- /dev/null +++ b/autobahn/client/tungstenite_case_6_18_3.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 146, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf08fbfbf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=146&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 2Q1BE+KRuRpFl/VKrwynPQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: YSJVhD4ms64hFzloSelU76akRsc=\r\n\r\n", + "id": "6.18.3", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.061Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "6": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313436266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "0xf08fbfbf" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f08fbfbf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_18_4.html b/autobahn/client/tungstenite_case_6_18_4.html new file mode 100644 index 0000000..5337fb7 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_18_4.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.18.4 : Pass - 0 ms @ 2020-09-07T18:44:02.061Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf887bfbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=147&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: XJyN+oAI0p5rQqhUsxNYmQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: S/jfeRGrWzXgC/I0W0edM7R4SeM=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
717
2061206
Total2213
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313437266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=5, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xf887bfbfbf
+
003 TX OCTETS: 8105f887bfbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_18_4.json b/autobahn/client/tungstenite_case_6_18_4.json new file mode 100644 index 0000000..868527f --- /dev/null +++ b/autobahn/client/tungstenite_case_6_18_4.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 147, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf887bfbfbf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=147&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: XJyN+oAI0p5rQqhUsxNYmQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: S/jfeRGrWzXgC/I0W0edM7R4SeM=\r\n\r\n", + "id": "6.18.4", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.061Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "7": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313437266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 5, + "0xf887bfbfbf" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 7, + "8105f887bfbfbf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_18_5.html b/autobahn/client/tungstenite_case_6_18_5.html new file mode 100644 index 0000000..adbb630 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_18_5.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.18.5 : Pass - 0 ms @ 2020-09-07T18:44:02.062Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfc83bfbfbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=148&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: a9SyEaPjfXUiAZdLPKts/g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: RFxMnUXpE9VtzAqLF3QqwR2QP/k=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2061206
Total2214
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313438266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=6, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xfc83bfbfbfbf
+
003 TX OCTETS: 8106fc83bfbfbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_18_5.json b/autobahn/client/tungstenite_case_6_18_5.json new file mode 100644 index 0000000..efb3f84 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_18_5.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 148, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfc83bfbfbfbf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=148&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: a9SyEaPjfXUiAZdLPKts/g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: RFxMnUXpE9VtzAqLF3QqwR2QP/k=\r\n\r\n", + "id": "6.18.5", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.062Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "8": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313438266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 6, + "0xfc83bfbfbfbf" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 8, + "8106fc83bfbfbfbf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_19_1.html b/autobahn/client/tungstenite_case_6_19_1.html new file mode 100644 index 0000000..58da102 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_19_1.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.19.1 : Pass - 0 ms @ 2020-09-07T18:44:02.063Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xc080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=149&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: U13tbtg67Qd6/62F2iQjFQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: XuMhwyzj4ogPlhuVuREZm2krAWU=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313439266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xc080
+
003 TX OCTETS: 8102c080
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_19_1.json b/autobahn/client/tungstenite_case_6_19_1.json new file mode 100644 index 0000000..3c01f46 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_19_1.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 149, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xc080", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=149&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: U13tbtg67Qd6/62F2iQjFQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: XuMhwyzj4ogPlhuVuREZm2krAWU=\r\n\r\n", + "id": "6.19.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.063Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313439266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0xc080" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "8102c080" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_19_2.html b/autobahn/client/tungstenite_case_6_19_2.html new file mode 100644 index 0000000..719b384 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_19_2.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.19.2 : Pass - 0 ms @ 2020-09-07T18:44:02.063Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xe08080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=150&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: T7StDsoHk/UWfXBMiUUddg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: ey7NR5vT93hwq6No+8Nn2to3jIE=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
515
2061206
Total2211
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313530266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xe08080
+
003 TX OCTETS: 8103e08080
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_19_2.json b/autobahn/client/tungstenite_case_6_19_2.json new file mode 100644 index 0000000..a08bcc0 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_19_2.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 150, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xe08080", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=150&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: T7StDsoHk/UWfXBMiUUddg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: ey7NR5vT93hwq6No+8Nn2to3jIE=\r\n\r\n", + "id": "6.19.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.063Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "5": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313530266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "0xe08080" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103e08080" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_19_3.html b/autobahn/client/tungstenite_case_6_19_3.html new file mode 100644 index 0000000..494835a --- /dev/null +++ b/autobahn/client/tungstenite_case_6_19_3.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.19.3 : Pass - 0 ms @ 2020-09-07T18:44:02.064Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf0808080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=151&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: pTxK/UO/4XGwi7v2NHWH5Q==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: vfjNrgfSIT7wejR/gKYSzF9kbgY=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
616
2061206
Total2212
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313531266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xf0808080
+
003 TX OCTETS: 8104f0808080
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_19_3.json b/autobahn/client/tungstenite_case_6_19_3.json new file mode 100644 index 0000000..ac9868f --- /dev/null +++ b/autobahn/client/tungstenite_case_6_19_3.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 151, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf0808080", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=151&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: pTxK/UO/4XGwi7v2NHWH5Q==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: vfjNrgfSIT7wejR/gKYSzF9kbgY=\r\n\r\n", + "id": "6.19.3", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.064Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "6": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313531266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "0xf0808080" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f0808080" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_19_4.html b/autobahn/client/tungstenite_case_6_19_4.html new file mode 100644 index 0000000..b703300 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_19_4.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.19.4 : Pass - 0 ms @ 2020-09-07T18:44:02.064Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf880808080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=152&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: C6wDAYkcrBMFVf+1XPzeGQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: KnoLOEoUu4PLbjLAvqgRpp6gFa0=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
717
2061206
Total2213
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313532266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=5, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xf880808080
+
003 TX OCTETS: 8105f880808080
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_19_4.json b/autobahn/client/tungstenite_case_6_19_4.json new file mode 100644 index 0000000..046e739 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_19_4.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 152, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf880808080", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=152&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: C6wDAYkcrBMFVf+1XPzeGQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: KnoLOEoUu4PLbjLAvqgRpp6gFa0=\r\n\r\n", + "id": "6.19.4", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.064Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "7": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313532266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 5, + "0xf880808080" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 7, + "8105f880808080" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_19_5.html b/autobahn/client/tungstenite_case_6_19_5.html new file mode 100644 index 0000000..5688c70 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_19_5.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.19.5 : Pass - 0 ms @ 2020-09-07T18:44:02.065Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfc8080808080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=153&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 8JhEigvvaSLkAM/j/MjZcg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: JMg+wwr8rjnXxWzdj+YJq0v5PM0=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2061206
Total2214
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313533266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=6, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xfc8080808080
+
003 TX OCTETS: 8106fc8080808080
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_19_5.json b/autobahn/client/tungstenite_case_6_19_5.json new file mode 100644 index 0000000..edb27c7 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_19_5.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 153, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfc8080808080", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=153&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 8JhEigvvaSLkAM/j/MjZcg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: JMg+wwr8rjnXxWzdj+YJq0v5PM0=\r\n\r\n", + "id": "6.19.5", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.065Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "8": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313533266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 6, + "0xfc8080808080" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 8, + "8106fc8080808080" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_1_1.html b/autobahn/client/tungstenite_case_6_1_1.html new file mode 100644 index 0000000..b366995 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_1_1.html @@ -0,0 +1,301 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.1.1 : Pass - 2 ms @ 2020-09-07T18:43:55.972Z

+

Case Description

Send text message of length 0.

+

Case Expectation

A message is echo'ed back to us (with empty payload).

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'', False)]}

+ Observed:
[('message', u'', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=65&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: KxfKIYSoNDY/fCml7D8KeA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: SSYviXLYTLiKnaJ78F0bvqrP+1Y=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
616
818
2561256
Total3270
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
212
414
2061206
Total3212
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3635266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
003 TX OCTETS: 8100
+
004 CLOSE CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 818073af1fca
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=0, MASKED=True, MASK=3733616631666361
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88820723338b04cb
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3037323333333862
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_1_1.json b/autobahn/client/tungstenite_case_6_1_1.json new file mode 100644 index 0000000..0461a5c --- /dev/null +++ b/autobahn/client/tungstenite_case_6_1_1.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 65, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text message of length 0.", + "droppedByMe": true, + "duration": 2, + "expectation": "A message is echo'ed back to us (with empty payload).", + "expected": { + "OK": [ + [ + "message", + "", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=65&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: KxfKIYSoNDY/fCml7D8KeA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: SSYviXLYTLiKnaJ78F0bvqrP+1Y=\r\n\r\n", + "id": "6.1.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "6": 1, + "8": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:55.972Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3635266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8100" + ], + false + ], + [ + "TI", + 1 + ], + [ + "RO", + [ + 6, + "818073af1fca" + ] + ], + [ + "RF", + [ + 0, + "" + ], + 1, + true, + 0, + true, + "73af1fca" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88820723338b04cb" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "0723338b" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_1_2.html b/autobahn/client/tungstenite_case_6_1_2.html new file mode 100644 index 0000000..8ff8b22 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_1_2.html @@ -0,0 +1,306 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.1.2 : Pass - 3 ms @ 2020-09-07T18:43:55.976Z

+

Case Description

Send fragmented text message, 3 fragments each of length 0.

+

Case Expectation

A message is echo'ed back to us (with empty payload).

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'', False)]}

+ Observed:
[('message', u'', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=66&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: QZIQOKO4RS11rXSMBg/yQw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: PVipiKI5tI9eV5Pm8IcJm/KBmZw=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
616
818
2561256
Total3270
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
236
414
2061206
Total5216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
02
11
81
Total4
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3636266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
003 TX OCTETS: 0100
+
004 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
005 TX OCTETS: 0000
+
006 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
007 TX OCTETS: 8000
+
008 CLOSE CONNECTION AFTER 1.000000 sec
+
009 RX OCTETS: 8180eb376871
+
010 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=0, MASKED=True, MASK=6562333736383731
+
011 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
012 TX OCTETS: 880203e8
+
013 RX OCTETS: 8882a846d364abae
+
014 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6138343664333634
+
               0x03e8
+
015 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_1_2.json b/autobahn/client/tungstenite_case_6_1_2.json new file mode 100644 index 0000000..00ca9fc --- /dev/null +++ b/autobahn/client/tungstenite_case_6_1_2.json @@ -0,0 +1,222 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 66, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send fragmented text message, 3 fragments each of length 0.", + "droppedByMe": true, + "duration": 3, + "expectation": "A message is echo'ed back to us (with empty payload).", + "expected": { + "OK": [ + [ + "message", + "", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=66&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: QZIQOKO4RS11rXSMBg/yQw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: PVipiKI5tI9eV5Pm8IcJm/KBmZw=\r\n\r\n", + "id": "6.1.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "6": 1, + "8": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:55.976Z", + "trafficStats": null, + "txFrameStats": { + "0": 2, + "1": 1, + "8": 1 + }, + "txOctetStats": { + "2": 3, + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3636266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 1, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "0100" + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "0000" + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 0, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8000" + ], + false + ], + [ + "TI", + 1 + ], + [ + "RO", + [ + 6, + "8180eb376871" + ] + ], + [ + "RF", + [ + 0, + "" + ], + 1, + true, + 0, + true, + "eb376871" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882a846d364abae" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "a846d364" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_1_3.html b/autobahn/client/tungstenite_case_6_1_3.html new file mode 100644 index 0000000..2fe6c05 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_1_3.html @@ -0,0 +1,309 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.1.3 : Pass - 2 ms @ 2020-09-07T18:43:55.981Z

+

Case Description

Send fragmented text message, 3 fragments, first and last of length 0, middle non-empty.

+

Case Expectation

A message is echo'ed back to us (with payload = payload of middle fragment).

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'middle frame payload', False)]}

+ Observed:
[('message', u'middle frame payload', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=67&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: n59YV5PNJKjBadHnoodrPg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: /5uH2JuUH/dOtS9QvlNVl3ab3pU=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
26126
2561256
Total3290
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
224
414
22122
2061206
Total5236
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
02
11
81
Total4
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3637266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
003 TX OCTETS: 0100
+
004 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=20, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               middle frame payload
+
005 TX OCTETS: 00146d6964646c65206672616d65207061796c6f6164
+
006 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
007 TX OCTETS: 8000
+
008 CLOSE CONNECTION AFTER 1.000000 sec
+
009 RX OCTETS: 8194e09f81278df6e5438cfaa14192feec42c0efe05e8cf0e043
+
010 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=20, MASKED=True, MASK=6530396638313237
+
               middle frame payload
+
011 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
012 TX OCTETS: 880203e8
+
013 RX OCTETS: 888208462e9d0bae
+
014 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3038343632653964
+
               0x03e8
+
015 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_1_3.json b/autobahn/client/tungstenite_case_6_1_3.json new file mode 100644 index 0000000..7f86716 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_1_3.json @@ -0,0 +1,223 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 67, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send fragmented text message, 3 fragments, first and last of length 0, middle non-empty.", + "droppedByMe": true, + "duration": 2, + "expectation": "A message is echo'ed back to us (with payload = payload of middle fragment).", + "expected": { + "OK": [ + [ + "message", + "middle frame payload", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=67&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: n59YV5PNJKjBadHnoodrPg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: /5uH2JuUH/dOtS9QvlNVl3ab3pU=\r\n\r\n", + "id": "6.1.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "middle frame payload", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "26": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:55.981Z", + "trafficStats": null, + "txFrameStats": { + "0": 2, + "1": 1, + "8": 1 + }, + "txOctetStats": { + "2": 2, + "4": 1, + "22": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3637266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 1, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "0100" + ], + false + ], + [ + "TF", + [ + 20, + "middle frame payload" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 22, + "00146d6964646c65206672616d65207061796c6f6164" + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 0, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8000" + ], + false + ], + [ + "TI", + 1 + ], + [ + "RO", + [ + 26, + "8194e09f81278df6e5438cfaa14192feec42c0efe05e8cf0e043" + ] + ], + [ + "RF", + [ + 20, + "middle frame payload" + ], + 1, + true, + 0, + true, + "e09f8127" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888208462e9d0bae" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "08462e9d" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_20_1.html b/autobahn/client/tungstenite_case_6_20_1.html new file mode 100644 index 0000000..c19ae96 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_20_1.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.20.1 : Pass - 0 ms @ 2020-09-07T18:44:02.065Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xeda080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=154&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 3MEUEqnP6wFwRZLm0OsRBQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: vz2M2Ffeh5vtzoHB/XFvaw96cxA=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
515
2061206
Total2211
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313534266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               í €
+
003 TX OCTETS: 8103eda080
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_20_1.json b/autobahn/client/tungstenite_case_6_20_1.json new file mode 100644 index 0000000..62f11f3 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_20_1.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 154, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xeda080", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=154&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 3MEUEqnP6wFwRZLm0OsRBQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: vz2M2Ffeh5vtzoHB/XFvaw96cxA=\r\n\r\n", + "id": "6.20.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.065Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "5": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313534266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "\ud800" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103eda080" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_20_2.html b/autobahn/client/tungstenite_case_6_20_2.html new file mode 100644 index 0000000..2f72518 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_20_2.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.20.2 : Pass - 0 ms @ 2020-09-07T18:44:02.066Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedadbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=155&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ai4R4KUbnoqSjH2TPPjtTg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: K12VV7hHTNGzL0+6u7jKMaTCbdQ=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
515
2061206
Total2211
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313535266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               í­¿
+
003 TX OCTETS: 8103edadbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_20_2.json b/autobahn/client/tungstenite_case_6_20_2.json new file mode 100644 index 0000000..dac783a --- /dev/null +++ b/autobahn/client/tungstenite_case_6_20_2.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 155, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedadbf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=155&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ai4R4KUbnoqSjH2TPPjtTg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: K12VV7hHTNGzL0+6u7jKMaTCbdQ=\r\n\r\n", + "id": "6.20.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.066Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "5": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313535266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "\udb7f" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103edadbf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_20_3.html b/autobahn/client/tungstenite_case_6_20_3.html new file mode 100644 index 0000000..2514bf6 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_20_3.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.20.3 : Pass - 0 ms @ 2020-09-07T18:44:02.067Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedae80

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=156&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: BfSnMv6PJEVauoVvdeG87A==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: gOsXBcb7HtldYwBHBRSpRdatj/Q=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
515
2061206
Total2211
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313536266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               í®€
+
003 TX OCTETS: 8103edae80
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_20_3.json b/autobahn/client/tungstenite_case_6_20_3.json new file mode 100644 index 0000000..a708201 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_20_3.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 156, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedae80", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=156&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: BfSnMv6PJEVauoVvdeG87A==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: gOsXBcb7HtldYwBHBRSpRdatj/Q=\r\n\r\n", + "id": "6.20.3", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.067Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "5": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313536266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "\udb80" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103edae80" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_20_4.html b/autobahn/client/tungstenite_case_6_20_4.html new file mode 100644 index 0000000..718dc28 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_20_4.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.20.4 : Pass - 0 ms @ 2020-09-07T18:44:02.067Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedafbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=157&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Ga3sHK8+q64g3K32cOIXaA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: zsRGOgpnjSjnGxD5BkBt6KDfqjc=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
515
2061206
Total2211
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313537266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               í¯¿
+
003 TX OCTETS: 8103edafbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_20_4.json b/autobahn/client/tungstenite_case_6_20_4.json new file mode 100644 index 0000000..ac88df1 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_20_4.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 157, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedafbf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=157&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Ga3sHK8+q64g3K32cOIXaA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: zsRGOgpnjSjnGxD5BkBt6KDfqjc=\r\n\r\n", + "id": "6.20.4", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.067Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "5": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313537266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "\udbff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103edafbf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_20_5.html b/autobahn/client/tungstenite_case_6_20_5.html new file mode 100644 index 0000000..792b20b --- /dev/null +++ b/autobahn/client/tungstenite_case_6_20_5.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.20.5 : Pass - 0 ms @ 2020-09-07T18:44:02.068Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedb080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=158&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: th1xWmOdcVPqcWfQ8c8e4g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: +/qOp32RLViX6MwqeaiQtXo4fBs=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
515
2061206
Total2211
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313538266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               í°€
+
003 TX OCTETS: 8103edb080
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_20_5.json b/autobahn/client/tungstenite_case_6_20_5.json new file mode 100644 index 0000000..d9c572e --- /dev/null +++ b/autobahn/client/tungstenite_case_6_20_5.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 158, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedb080", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=158&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: th1xWmOdcVPqcWfQ8c8e4g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: +/qOp32RLViX6MwqeaiQtXo4fBs=\r\n\r\n", + "id": "6.20.5", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.068Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "5": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313538266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "\udc00" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103edb080" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_20_6.html b/autobahn/client/tungstenite_case_6_20_6.html new file mode 100644 index 0000000..ba00dd4 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_20_6.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.20.6 : Pass - 0 ms @ 2020-09-07T18:44:02.069Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedbe80

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=159&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: cBqdzGE2Eax8D057LZKUhg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: C24eWxp9ZM9oN/kR91uR/RX/CGs=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
515
2061206
Total2211
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313539266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               í¾€
+
003 TX OCTETS: 8103edbe80
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_20_6.json b/autobahn/client/tungstenite_case_6_20_6.json new file mode 100644 index 0000000..ca77a7a --- /dev/null +++ b/autobahn/client/tungstenite_case_6_20_6.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 159, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedbe80", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=159&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: cBqdzGE2Eax8D057LZKUhg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: C24eWxp9ZM9oN/kR91uR/RX/CGs=\r\n\r\n", + "id": "6.20.6", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.069Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "5": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313539266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "\udf80" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103edbe80" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_20_7.html b/autobahn/client/tungstenite_case_6_20_7.html new file mode 100644 index 0000000..6af849d --- /dev/null +++ b/autobahn/client/tungstenite_case_6_20_7.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.20.7 : Pass - 0 ms @ 2020-09-07T18:44:02.069Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=160&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: rvaZYhvRAUWhyrAoH7d5EQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: dFS0q5YA+wG8QaCsr7DKCW0p0z0=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
515
2061206
Total2211
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313630266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               í¿¿
+
003 TX OCTETS: 8103edbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_20_7.json b/autobahn/client/tungstenite_case_6_20_7.json new file mode 100644 index 0000000..efd3f86 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_20_7.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 160, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedbfbf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=160&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: rvaZYhvRAUWhyrAoH7d5EQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: dFS0q5YA+wG8QaCsr7DKCW0p0z0=\r\n\r\n", + "id": "6.20.7", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.069Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "5": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313630266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "\udfff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103edbfbf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_21_1.html b/autobahn/client/tungstenite_case_6_21_1.html new file mode 100644 index 0000000..603ec51 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_21_1.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.21.1 : Pass - 0 ms @ 2020-09-07T18:44:02.070Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xeda080edb080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=161&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Rdrum2kVOWuqDmRfgzNRrQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: TnNLZroq6GHJPM4Nz8nMitS2iwA=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2061206
Total2214
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313631266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=6, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ð€€
+
003 TX OCTETS: 8106eda080edb080
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_21_1.json b/autobahn/client/tungstenite_case_6_21_1.json new file mode 100644 index 0000000..5ac2533 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_21_1.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 161, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xeda080edb080", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=161&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Rdrum2kVOWuqDmRfgzNRrQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: TnNLZroq6GHJPM4Nz8nMitS2iwA=\r\n\r\n", + "id": "6.21.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.070Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "8": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313631266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 6, + "\ud800\udc00" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 8, + "8106eda080edb080" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_21_2.html b/autobahn/client/tungstenite_case_6_21_2.html new file mode 100644 index 0000000..db75b53 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_21_2.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.21.2 : Pass - 0 ms @ 2020-09-07T18:44:02.070Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xeda080edbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=162&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: /6B9MrXdNmlaH2WdMCPcaw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 8dFjacQRaRY+xowpCIyp6jMmRjw=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2061206
Total2214
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313632266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=6, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ð¿
+
003 TX OCTETS: 8106eda080edbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_21_2.json b/autobahn/client/tungstenite_case_6_21_2.json new file mode 100644 index 0000000..ff7f2bc --- /dev/null +++ b/autobahn/client/tungstenite_case_6_21_2.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 162, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xeda080edbfbf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=162&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: /6B9MrXdNmlaH2WdMCPcaw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 8dFjacQRaRY+xowpCIyp6jMmRjw=\r\n\r\n", + "id": "6.21.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.070Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "8": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313632266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 6, + "\ud800\udfff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 8, + "8106eda080edbfbf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_21_3.html b/autobahn/client/tungstenite_case_6_21_3.html new file mode 100644 index 0000000..4ced9e7 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_21_3.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.21.3 : Pass - 0 ms @ 2020-09-07T18:44:02.071Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedadbfedb080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=163&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: pVrAXMWpCemA7mcjUQE+zA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: f933bq7ezcSFBgsTuKrSjqbme1o=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2061206
Total2214
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313633266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=6, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ó¯°€
+
003 TX OCTETS: 8106edadbfedb080
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_21_3.json b/autobahn/client/tungstenite_case_6_21_3.json new file mode 100644 index 0000000..ff9eb35 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_21_3.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 163, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedadbfedb080", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=163&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: pVrAXMWpCemA7mcjUQE+zA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: f933bq7ezcSFBgsTuKrSjqbme1o=\r\n\r\n", + "id": "6.21.3", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.071Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "8": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313633266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 6, + "\udb7f\udc00" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 8, + "8106edadbfedb080" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_21_4.html b/autobahn/client/tungstenite_case_6_21_4.html new file mode 100644 index 0000000..d0fcd50 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_21_4.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.21.4 : Pass - 0 ms @ 2020-09-07T18:44:02.071Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedadbfedbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=164&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: f5i1zgUMZe8425aL2FHCbw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: lei6njyA9TaCGoFMBEGvqxQqlAc=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2061206
Total2214
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313634266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=6, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               󯿿
+
003 TX OCTETS: 8106edadbfedbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_21_4.json b/autobahn/client/tungstenite_case_6_21_4.json new file mode 100644 index 0000000..98de727 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_21_4.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 164, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedadbfedbfbf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=164&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: f5i1zgUMZe8425aL2FHCbw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: lei6njyA9TaCGoFMBEGvqxQqlAc=\r\n\r\n", + "id": "6.21.4", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.071Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "8": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313634266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 6, + "\udb7f\udfff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 8, + "8106edadbfedbfbf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_21_5.html b/autobahn/client/tungstenite_case_6_21_5.html new file mode 100644 index 0000000..f1a50de --- /dev/null +++ b/autobahn/client/tungstenite_case_6_21_5.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.21.5 : Pass - 0 ms @ 2020-09-07T18:44:02.072Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedae80edb080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=165&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 8q9PcTMo3JQRX5m6ygBQeA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: vYFFTJC6L3DLt2sKMZdIpVObzTs=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2061206
Total2214
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313635266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=6, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ó°€€
+
003 TX OCTETS: 8106edae80edb080
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_21_5.json b/autobahn/client/tungstenite_case_6_21_5.json new file mode 100644 index 0000000..3d273b6 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_21_5.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 165, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedae80edb080", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=165&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 8q9PcTMo3JQRX5m6ygBQeA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: vYFFTJC6L3DLt2sKMZdIpVObzTs=\r\n\r\n", + "id": "6.21.5", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.072Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "8": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313635266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 6, + "\udb80\udc00" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 8, + "8106edae80edb080" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_21_6.html b/autobahn/client/tungstenite_case_6_21_6.html new file mode 100644 index 0000000..710269b --- /dev/null +++ b/autobahn/client/tungstenite_case_6_21_6.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.21.6 : Pass - 0 ms @ 2020-09-07T18:44:02.073Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedae80edbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=166&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: UvtIzDmNp9Na9ymna6wdmw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: QlbUWQ6FyifUyK2Dm+8IqtnmVYs=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2061206
Total2214
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313636266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=6, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ó°¿
+
003 TX OCTETS: 8106edae80edbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_21_6.json b/autobahn/client/tungstenite_case_6_21_6.json new file mode 100644 index 0000000..5274253 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_21_6.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 166, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedae80edbfbf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=166&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: UvtIzDmNp9Na9ymna6wdmw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: QlbUWQ6FyifUyK2Dm+8IqtnmVYs=\r\n\r\n", + "id": "6.21.6", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.073Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "8": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313636266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 6, + "\udb80\udfff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 8, + "8106edae80edbfbf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_21_7.html b/autobahn/client/tungstenite_case_6_21_7.html new file mode 100644 index 0000000..8aad030 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_21_7.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.21.7 : Pass - 0 ms @ 2020-09-07T18:44:02.073Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedafbfedb080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=167&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: yaGzF8PThDSMqcMcqr4UwA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: GtUEbPOXfD2AtaZorrPQdPP2slA=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2061206
Total2214
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313637266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=6, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ô°€
+
003 TX OCTETS: 8106edafbfedb080
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_21_7.json b/autobahn/client/tungstenite_case_6_21_7.json new file mode 100644 index 0000000..704a428 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_21_7.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 167, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedafbfedb080", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=167&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: yaGzF8PThDSMqcMcqr4UwA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: GtUEbPOXfD2AtaZorrPQdPP2slA=\r\n\r\n", + "id": "6.21.7", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.073Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "8": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313637266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 6, + "\udbff\udc00" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 8, + "8106edafbfedb080" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_21_8.html b/autobahn/client/tungstenite_case_6_21_8.html new file mode 100644 index 0000000..a6b478f --- /dev/null +++ b/autobahn/client/tungstenite_case_6_21_8.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.21.8 : Pass - 0 ms @ 2020-09-07T18:44:02.074Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedafbfedbfbf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=168&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: FKF4EKzFlZEHddgACFywtw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: d0bAz9BVsday2emYtyb0+NaVJ8I=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2061206
Total2214
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313638266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=6, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ô¿¿
+
003 TX OCTETS: 8106edafbfedbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_21_8.json b/autobahn/client/tungstenite_case_6_21_8.json new file mode 100644 index 0000000..48c52a6 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_21_8.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 168, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xedafbfedbfbf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=168&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: FKF4EKzFlZEHddgACFywtw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: d0bAz9BVsday2emYtyb0+NaVJ8I=\r\n\r\n", + "id": "6.21.8", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.074Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "8": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313638266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 6, + "\udbff\udfff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 8, + "8106edafbfedbfbf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_1.html b/autobahn/client/tungstenite_case_6_22_1.html new file mode 100644 index 0000000..663a7d5 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_1.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.1 : Pass - 1 ms @ 2020-09-07T18:44:02.075Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbe

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\ufffe', False)]}

+ Observed:
[('message', u'\ufffe', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=169&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: L6w5DcQZzd+AbTKZV+asRw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 6/PPgfC4BShWrAVsbuazk3rjzlQ=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
919
2571257
Total3274
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
515
2061206
Total3215
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313639266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ￾
+
003 TX OCTETS: 8103efbfbe
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 818399869813763926
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASKED=True, MASK=3939383639383133
+
               ￾
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882ba67cfdcb98f
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6261363763666463
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_1.json b/autobahn/client/tungstenite_case_6_22_1.json new file mode 100644 index 0000000..d541bb2 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_1.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 169, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbe", + "droppedByMe": true, + "duration": 1, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ufffe", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=169&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: L6w5DcQZzd+AbTKZV+asRw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 6/PPgfC4BShWrAVsbuazk3rjzlQ=\r\n\r\n", + "id": "6.22.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ufffe", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "9": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.075Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "5": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313639266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "\ufffe" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103efbfbe" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 9, + "818399869813763926" + ] + ], + [ + "RF", + [ + 3, + "\ufffe" + ], + 1, + true, + 0, + true, + "99869813" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882ba67cfdcb98f" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "ba67cfdc" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_10.html b/autobahn/client/tungstenite_case_6_22_10.html new file mode 100644 index 0000000..c522a0d --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_10.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.10 : Pass - 0 ms @ 2020-09-07T18:44:02.083Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf18fbfbf

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U0004ffff', False)]}

+ Observed:
[('message', u'\U0004ffff', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=178&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: mQ5Oyde2+jofhazd0IkhXQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: MLgc2B/a2gQTwt8vReYV77o8XB8=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313738266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ñ¿¿
+
003 TX OCTETS: 8104f18fbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8184c0820d11310db2ae
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=6330383230643131
+
               ñ¿¿
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88821079df5b1391
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3130373964663562
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_10.json b/autobahn/client/tungstenite_case_6_22_10.json new file mode 100644 index 0000000..6a98845 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_10.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 178, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf18fbfbf", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ud8ff\udfff", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=178&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: mQ5Oyde2+jofhazd0IkhXQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: MLgc2B/a2gQTwt8vReYV77o8XB8=\r\n\r\n", + "id": "6.22.10", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ud8ff\udfff", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.083Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313738266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\ud8ff\udfff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f18fbfbf" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "8184c0820d11310db2ae" + ] + ], + [ + "RF", + [ + 4, + "\ud8ff\udfff" + ], + 1, + true, + 0, + true, + "c0820d11" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88821079df5b1391" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "1079df5b" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_11.html b/autobahn/client/tungstenite_case_6_22_11.html new file mode 100644 index 0000000..dbdfb3e --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_11.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.11 : Pass - 0 ms @ 2020-09-07T18:44:02.084Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf19fbfbe

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U0005fffe', False)]}

+ Observed:
[('message', u'\U0005fffe', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=179&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: la9HmUkYrlERUYo/6Xh3uQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: E4Z52WdSlcIi3M2K8AndtVpHL1s=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313739266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               񟿾
+
003 TX OCTETS: 8104f19fbfbe
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 818457089c3ea6972380
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=3537303839633365
+
               񟿾
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88826e9a21d56d72
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3665396132316435
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_11.json b/autobahn/client/tungstenite_case_6_22_11.json new file mode 100644 index 0000000..ee4694d --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_11.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 179, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf19fbfbe", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ud93f\udffe", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=179&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: la9HmUkYrlERUYo/6Xh3uQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: E4Z52WdSlcIi3M2K8AndtVpHL1s=\r\n\r\n", + "id": "6.22.11", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ud93f\udffe", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.084Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313739266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\ud93f\udffe" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f19fbfbe" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "818457089c3ea6972380" + ] + ], + [ + "RF", + [ + 4, + "\ud93f\udffe" + ], + 1, + true, + 0, + true, + "57089c3e" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88826e9a21d56d72" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "6e9a21d5" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_12.html b/autobahn/client/tungstenite_case_6_22_12.html new file mode 100644 index 0000000..ea235ee --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_12.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.12 : Pass - 0 ms @ 2020-09-07T18:44:02.085Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf19fbfbf

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U0005ffff', False)]}

+ Observed:
[('message', u'\U0005ffff', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=180&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: HU85wGqfADyfc9lgTCB/0g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: fK53v98CO6RHgK9rHz9wZb7KRKc=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313830266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               񟿿
+
003 TX OCTETS: 8104f19fbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8184860f49887790f637
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=3836306634393838
+
               񟿿
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 888272784f2d7190
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3732373834663264
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_12.json b/autobahn/client/tungstenite_case_6_22_12.json new file mode 100644 index 0000000..12e52e1 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_12.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 180, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf19fbfbf", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ud93f\udfff", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=180&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: HU85wGqfADyfc9lgTCB/0g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: fK53v98CO6RHgK9rHz9wZb7KRKc=\r\n\r\n", + "id": "6.22.12", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ud93f\udfff", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.085Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313830266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\ud93f\udfff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f19fbfbf" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "8184860f49887790f637" + ] + ], + [ + "RF", + [ + 4, + "\ud93f\udfff" + ], + 1, + true, + 0, + true, + "860f4988" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888272784f2d7190" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "72784f2d" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_13.html b/autobahn/client/tungstenite_case_6_22_13.html new file mode 100644 index 0000000..8fc4556 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_13.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.13 : Pass - 0 ms @ 2020-09-07T18:44:02.086Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf1afbfbe

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U0006fffe', False)]}

+ Observed:
[('message', u'\U0006fffe', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=181&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: IQGNa9MamGkA5qDmttWr3g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: sQ3ydY0PUJccoQEnFPB8K+47r5Q=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313831266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               񯿾
+
003 TX OCTETS: 8104f1afbfbe
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8184c2aa65ee3305da50
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=6332616136356565
+
               񯿾
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882800de02383e5
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3830306465303233
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_13.json b/autobahn/client/tungstenite_case_6_22_13.json new file mode 100644 index 0000000..cb1a644 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_13.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 181, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf1afbfbe", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ud97f\udffe", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=181&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: IQGNa9MamGkA5qDmttWr3g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: sQ3ydY0PUJccoQEnFPB8K+47r5Q=\r\n\r\n", + "id": "6.22.13", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ud97f\udffe", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.086Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313831266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\ud97f\udffe" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f1afbfbe" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "8184c2aa65ee3305da50" + ] + ], + [ + "RF", + [ + 4, + "\ud97f\udffe" + ], + 1, + true, + 0, + true, + "c2aa65ee" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882800de02383e5" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "800de023" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_14.html b/autobahn/client/tungstenite_case_6_22_14.html new file mode 100644 index 0000000..daacbea --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_14.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.14 : Pass - 0 ms @ 2020-09-07T18:44:02.086Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf1afbfbf

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U0006ffff', False)]}

+ Observed:
[('message', u'\U0006ffff', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=182&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Cpn5SDLlchHcQNuWitfZ2g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: PmMPnEISnhkPlnQgoOK+x0chYfk=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313832266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               񯿿
+
003 TX OCTETS: 8104f1afbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8184506a0ce8a1c5b357
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=3530366130636538
+
               񯿿
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88827c45f4657fad
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3763343566343635
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_14.json b/autobahn/client/tungstenite_case_6_22_14.json new file mode 100644 index 0000000..3e03045 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_14.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 182, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf1afbfbf", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ud97f\udfff", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=182&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Cpn5SDLlchHcQNuWitfZ2g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: PmMPnEISnhkPlnQgoOK+x0chYfk=\r\n\r\n", + "id": "6.22.14", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ud97f\udfff", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.086Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313832266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\ud97f\udfff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f1afbfbf" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "8184506a0ce8a1c5b357" + ] + ], + [ + "RF", + [ + 4, + "\ud97f\udfff" + ], + 1, + true, + 0, + true, + "506a0ce8" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88827c45f4657fad" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "7c45f465" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_15.html b/autobahn/client/tungstenite_case_6_22_15.html new file mode 100644 index 0000000..dc4a033 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_15.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.15 : Pass - 0 ms @ 2020-09-07T18:44:02.087Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf1bfbfbe

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U0007fffe', False)]}

+ Observed:
[('message', u'\U0007fffe', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=183&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: nOBEw6TkdgjnmCs6rlsMSg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: MwUYDqOEYCzj5ZPH92NW7diq5X0=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313833266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ñ¿¿¾
+
003 TX OCTETS: 8104f1bfbfbe
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8184dd14a4602cab1bde
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=6464313461343630
+
               ñ¿¿¾
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 888213abef0b1043
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3133616265663062
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_15.json b/autobahn/client/tungstenite_case_6_22_15.json new file mode 100644 index 0000000..0f29d31 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_15.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 183, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf1bfbfbe", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ud9bf\udffe", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=183&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: nOBEw6TkdgjnmCs6rlsMSg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: MwUYDqOEYCzj5ZPH92NW7diq5X0=\r\n\r\n", + "id": "6.22.15", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ud9bf\udffe", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.087Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313833266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\ud9bf\udffe" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f1bfbfbe" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "8184dd14a4602cab1bde" + ] + ], + [ + "RF", + [ + 4, + "\ud9bf\udffe" + ], + 1, + true, + 0, + true, + "dd14a460" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888213abef0b1043" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "13abef0b" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_16.html b/autobahn/client/tungstenite_case_6_22_16.html new file mode 100644 index 0000000..ee6984a --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_16.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.16 : Pass - 1 ms @ 2020-09-07T18:44:02.088Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf1bfbfbf

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U0007ffff', False)]}

+ Observed:
[('message', u'\U0007ffff', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=184&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 8wVDcrduVW4Z6HqXCoMD+A==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: jH7xnpTDFTEmxqPFZ56jtVa2X4I=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313834266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ñ¿¿¿
+
003 TX OCTETS: 8104f1bfbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 81845cae44d5ad11fb6a
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=3563616534346435
+
               ñ¿¿¿
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 888277f6f91c741e
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3737663666393163
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_16.json b/autobahn/client/tungstenite_case_6_22_16.json new file mode 100644 index 0000000..b421b9d --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_16.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 184, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf1bfbfbf", + "droppedByMe": true, + "duration": 1, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ud9bf\udfff", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=184&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 8wVDcrduVW4Z6HqXCoMD+A==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: jH7xnpTDFTEmxqPFZ56jtVa2X4I=\r\n\r\n", + "id": "6.22.16", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ud9bf\udfff", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.088Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313834266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\ud9bf\udfff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f1bfbfbf" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "81845cae44d5ad11fb6a" + ] + ], + [ + "RF", + [ + 4, + "\ud9bf\udfff" + ], + 1, + true, + 0, + true, + "5cae44d5" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888277f6f91c741e" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "77f6f91c" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_17.html b/autobahn/client/tungstenite_case_6_22_17.html new file mode 100644 index 0000000..c343cb1 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_17.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.17 : Pass - 0 ms @ 2020-09-07T18:44:02.089Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf28fbfbe

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U0008fffe', False)]}

+ Observed:
[('message', u'\U0008fffe', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=185&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: vZKxpbAv7Qplh1ZepZCeUg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: KBcsd5l2bblPGxovf5rsK3sMQw4=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313835266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ò¿¾
+
003 TX OCTETS: 8104f28fbfbe
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8184232ad748d1a568f6
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=3233326164373438
+
               ò¿¾
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88821adeee831936
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3161646565653833
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_17.json b/autobahn/client/tungstenite_case_6_22_17.json new file mode 100644 index 0000000..2df69f4 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_17.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 185, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf28fbfbe", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ud9ff\udffe", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=185&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: vZKxpbAv7Qplh1ZepZCeUg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: KBcsd5l2bblPGxovf5rsK3sMQw4=\r\n\r\n", + "id": "6.22.17", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ud9ff\udffe", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.089Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313835266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\ud9ff\udffe" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f28fbfbe" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "8184232ad748d1a568f6" + ] + ], + [ + "RF", + [ + 4, + "\ud9ff\udffe" + ], + 1, + true, + 0, + true, + "232ad748" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88821adeee831936" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "1adeee83" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_18.html b/autobahn/client/tungstenite_case_6_22_18.html new file mode 100644 index 0000000..68b50ce --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_18.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.18 : Pass - 0 ms @ 2020-09-07T18:44:02.089Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf28fbfbf

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U0008ffff', False)]}

+ Observed:
[('message', u'\U0008ffff', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=186&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: FKicrtGoj8PVvjLLS3ZuHw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: bs6fqBcdykvTW3c4XAXGAdjGzVg=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313836266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ò¿¿
+
003 TX OCTETS: 8104f28fbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8184fed7015a0c58bee5
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=6665643730313561
+
               ò¿¿
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 888271d914ab7231
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3731643931346162
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_18.json b/autobahn/client/tungstenite_case_6_22_18.json new file mode 100644 index 0000000..6126e7d --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_18.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 186, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf28fbfbf", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ud9ff\udfff", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=186&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: FKicrtGoj8PVvjLLS3ZuHw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: bs6fqBcdykvTW3c4XAXGAdjGzVg=\r\n\r\n", + "id": "6.22.18", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ud9ff\udfff", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.089Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313836266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\ud9ff\udfff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f28fbfbf" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "8184fed7015a0c58bee5" + ] + ], + [ + "RF", + [ + 4, + "\ud9ff\udfff" + ], + 1, + true, + 0, + true, + "fed7015a" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888271d914ab7231" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "71d914ab" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_19.html b/autobahn/client/tungstenite_case_6_22_19.html new file mode 100644 index 0000000..c9d7e5a --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_19.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.19 : Pass - 0 ms @ 2020-09-07T18:44:02.090Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf29fbfbe

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U0009fffe', False)]}

+ Observed:
[('message', u'\U0009fffe', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=187&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: vqyhxXGaQ2tV4llJAI/Niw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: xqoSfsRyCQ/g2rkfPGIQTZGH/dQ=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313837266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               򟿾
+
003 TX OCTETS: 8104f29fbfbe
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8184df2d91242db22e9a
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=6466326439313234
+
               򟿾
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882dd0957abdee1
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6464303935376162
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_19.json b/autobahn/client/tungstenite_case_6_22_19.json new file mode 100644 index 0000000..1ada02b --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_19.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 187, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf29fbfbe", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\uda3f\udffe", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=187&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: vqyhxXGaQ2tV4llJAI/Niw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: xqoSfsRyCQ/g2rkfPGIQTZGH/dQ=\r\n\r\n", + "id": "6.22.19", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\uda3f\udffe", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.090Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313837266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\uda3f\udffe" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f29fbfbe" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "8184df2d91242db22e9a" + ] + ], + [ + "RF", + [ + 4, + "\uda3f\udffe" + ], + 1, + true, + 0, + true, + "df2d9124" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882dd0957abdee1" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "dd0957ab" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_2.html b/autobahn/client/tungstenite_case_6_22_2.html new file mode 100644 index 0000000..7ac56c3 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_2.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.2 : Pass - 0 ms @ 2020-09-07T18:44:02.076Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbf

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\uffff', False)]}

+ Observed:
[('message', u'\uffff', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=170&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: NGVEO57eEbscPHEJX9K5Jw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: u+O5vpS1BtVjA62P6X08F21Z6To=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
919
2571257
Total3274
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
515
2061206
Total3215
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313730266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ï¿¿
+
003 TX OCTETS: 8103efbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 81831ec716fcf178a9
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASKED=True, MASK=3165633731366663
+
               ï¿¿
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882c8a21212cb4a
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6338613231323132
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_2.json b/autobahn/client/tungstenite_case_6_22_2.json new file mode 100644 index 0000000..0144db4 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_2.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 170, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbf", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\uffff", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=170&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: NGVEO57eEbscPHEJX9K5Jw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: u+O5vpS1BtVjA62P6X08F21Z6To=\r\n\r\n", + "id": "6.22.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\uffff", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "9": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.076Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "5": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313730266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "\uffff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103efbfbf" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 9, + "81831ec716fcf178a9" + ] + ], + [ + "RF", + [ + 3, + "\uffff" + ], + 1, + true, + 0, + true, + "1ec716fc" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882c8a21212cb4a" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "c8a21212" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_20.html b/autobahn/client/tungstenite_case_6_22_20.html new file mode 100644 index 0000000..034e4b9 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_20.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.20 : Pass - 0 ms @ 2020-09-07T18:44:02.091Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf29fbfbf

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U0009ffff', False)]}

+ Observed:
[('message', u'\U0009ffff', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=188&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Ka7pFEu1zE3OMZSZE8dNLg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: bsqWZ0tawwr4N5DsCD/QojXM83s=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313838266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               òŸ¿¿
+
003 TX OCTETS: 8104f29fbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8184e9d891a01b472e1f
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=6539643839316130
+
               òŸ¿¿
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88826f43a8526cab
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3666343361383532
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_20.json b/autobahn/client/tungstenite_case_6_22_20.json new file mode 100644 index 0000000..1ef8610 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_20.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 188, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf29fbfbf", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\uda3f\udfff", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=188&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Ka7pFEu1zE3OMZSZE8dNLg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: bsqWZ0tawwr4N5DsCD/QojXM83s=\r\n\r\n", + "id": "6.22.20", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\uda3f\udfff", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.091Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313838266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\uda3f\udfff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f29fbfbf" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "8184e9d891a01b472e1f" + ] + ], + [ + "RF", + [ + 4, + "\uda3f\udfff" + ], + 1, + true, + 0, + true, + "e9d891a0" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88826f43a8526cab" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "6f43a852" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_21.html b/autobahn/client/tungstenite_case_6_22_21.html new file mode 100644 index 0000000..57c5e0a --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_21.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.21 : Pass - 0 ms @ 2020-09-07T18:44:02.092Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf2afbfbe

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U000afffe', False)]}

+ Observed:
[('message', u'\U000afffe', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=189&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 4NhKV2AUsvCIeO9yx2zgqA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: PDWHjpNNok6yqhG8GbivQgh7omg=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313839266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               򯿾
+
003 TX OCTETS: 8104f2afbfbe
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 81842a4ac7a3d8e5781d
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=3261346163376133
+
               򯿾
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882e59eb58ee676
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6535396562353865
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_21.json b/autobahn/client/tungstenite_case_6_22_21.json new file mode 100644 index 0000000..b686dfc --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_21.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 189, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf2afbfbe", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\uda7f\udffe", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=189&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 4NhKV2AUsvCIeO9yx2zgqA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: PDWHjpNNok6yqhG8GbivQgh7omg=\r\n\r\n", + "id": "6.22.21", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\uda7f\udffe", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.092Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313839266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\uda7f\udffe" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f2afbfbe" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "81842a4ac7a3d8e5781d" + ] + ], + [ + "RF", + [ + 4, + "\uda7f\udffe" + ], + 1, + true, + 0, + true, + "2a4ac7a3" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882e59eb58ee676" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "e59eb58e" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_22.html b/autobahn/client/tungstenite_case_6_22_22.html new file mode 100644 index 0000000..685ef6b --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_22.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.22 : Pass - 0 ms @ 2020-09-07T18:44:02.093Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf2afbfbf

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U000affff', False)]}

+ Observed:
[('message', u'\U000affff', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=190&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: XySj5PvpA4AEPo2xPrTUxQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: xMbWIxCyFpnXnHrqwpKIHzFxzHI=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313930266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               򯿿
+
003 TX OCTETS: 8104f2afbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8184c43207ab369db814
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=6334333230376162
+
               򯿿
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 888254b5ee63575d
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3534623565653633
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_22.json b/autobahn/client/tungstenite_case_6_22_22.json new file mode 100644 index 0000000..4934f0c --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_22.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 190, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf2afbfbf", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\uda7f\udfff", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=190&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: XySj5PvpA4AEPo2xPrTUxQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: xMbWIxCyFpnXnHrqwpKIHzFxzHI=\r\n\r\n", + "id": "6.22.22", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\uda7f\udfff", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.093Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313930266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\uda7f\udfff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f2afbfbf" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "8184c43207ab369db814" + ] + ], + [ + "RF", + [ + 4, + "\uda7f\udfff" + ], + 1, + true, + 0, + true, + "c43207ab" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888254b5ee63575d" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "54b5ee63" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_23.html b/autobahn/client/tungstenite_case_6_22_23.html new file mode 100644 index 0000000..c214471 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_23.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.23 : Pass - 1 ms @ 2020-09-07T18:44:02.093Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf2bfbfbe

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U000bfffe', False)]}

+ Observed:
[('message', u'\U000bfffe', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=191&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: SktM8eNCq/lAAw/7eCpgBA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 6mNXXp4tc8FW5VR0O/zvwlY2n5k=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313931266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ò¿¿¾
+
003 TX OCTETS: 8104f2bfbfbe
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8184c63b412b3484fe95
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=6336336234313262
+
               ò¿¿¾
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88821ca082c51f48
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3163613038326335
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_23.json b/autobahn/client/tungstenite_case_6_22_23.json new file mode 100644 index 0000000..9a5c658 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_23.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 191, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf2bfbfbe", + "droppedByMe": true, + "duration": 1, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\udabf\udffe", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=191&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: SktM8eNCq/lAAw/7eCpgBA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 6mNXXp4tc8FW5VR0O/zvwlY2n5k=\r\n\r\n", + "id": "6.22.23", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\udabf\udffe", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.093Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313931266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\udabf\udffe" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f2bfbfbe" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "8184c63b412b3484fe95" + ] + ], + [ + "RF", + [ + 4, + "\udabf\udffe" + ], + 1, + true, + 0, + true, + "c63b412b" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88821ca082c51f48" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "1ca082c5" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_24.html b/autobahn/client/tungstenite_case_6_22_24.html new file mode 100644 index 0000000..b24035b --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_24.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.24 : Pass - 1 ms @ 2020-09-07T18:44:02.094Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf2bfbfbf

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U000bffff', False)]}

+ Observed:
[('message', u'\U000bffff', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=192&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: VcMYfa46zIMT4P8Qepzijw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: FeNqugp3khKelxhGusr1vdzfixc=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313932266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ò¿¿¿
+
003 TX OCTETS: 8104f2bfbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 81844b2426b8b99b9907
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=3462323432366238
+
               ò¿¿¿
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 888277294bae74c1
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3737323934626165
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_24.json b/autobahn/client/tungstenite_case_6_22_24.json new file mode 100644 index 0000000..2cd33e4 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_24.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 192, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf2bfbfbf", + "droppedByMe": true, + "duration": 1, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\udabf\udfff", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=192&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: VcMYfa46zIMT4P8Qepzijw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: FeNqugp3khKelxhGusr1vdzfixc=\r\n\r\n", + "id": "6.22.24", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\udabf\udfff", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.094Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313932266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\udabf\udfff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f2bfbfbf" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "81844b2426b8b99b9907" + ] + ], + [ + "RF", + [ + 4, + "\udabf\udfff" + ], + 1, + true, + 0, + true, + "4b2426b8" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888277294bae74c1" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "77294bae" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_25.html b/autobahn/client/tungstenite_case_6_22_25.html new file mode 100644 index 0000000..ad27dfe --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_25.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.25 : Pass - 0 ms @ 2020-09-07T18:44:02.095Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf38fbfbe

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U000cfffe', False)]}

+ Observed:
[('message', u'\U000cfffe', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=193&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: WcIGg2t4PZqetDCyoEuGjw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: h5qU0FWZH++A2FZmUV/7Iz9PxCk=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313933266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ó¿¾
+
003 TX OCTETS: 8104f38fbfbe
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8184028f4b9bf100f425
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=3032386634623962
+
               ó¿¾
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88824f7739ae4c9f
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3466373733396165
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_25.json b/autobahn/client/tungstenite_case_6_22_25.json new file mode 100644 index 0000000..53e0cd7 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_25.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 193, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf38fbfbe", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\udaff\udffe", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=193&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: WcIGg2t4PZqetDCyoEuGjw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: h5qU0FWZH++A2FZmUV/7Iz9PxCk=\r\n\r\n", + "id": "6.22.25", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\udaff\udffe", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.095Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313933266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\udaff\udffe" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f38fbfbe" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "8184028f4b9bf100f425" + ] + ], + [ + "RF", + [ + 4, + "\udaff\udffe" + ], + 1, + true, + 0, + true, + "028f4b9b" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88824f7739ae4c9f" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "4f7739ae" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_26.html b/autobahn/client/tungstenite_case_6_22_26.html new file mode 100644 index 0000000..8c04a2a --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_26.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.26 : Pass - 0 ms @ 2020-09-07T18:44:02.096Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf38fbfbf

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U000cffff', False)]}

+ Observed:
[('message', u'\U000cffff', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=194&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: kUuqAk3wfooPwSjujdfSVQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: eNXQOfc+OsrrLW063QBV9EAJhQ0=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313934266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ó¿¿
+
003 TX OCTETS: 8104f38fbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8184f2f8fc2b01774394
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=6632663866633262
+
               ó¿¿
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882f3682ec7f080
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6633363832656337
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_26.json b/autobahn/client/tungstenite_case_6_22_26.json new file mode 100644 index 0000000..bf1d14c --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_26.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 194, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf38fbfbf", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\udaff\udfff", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=194&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: kUuqAk3wfooPwSjujdfSVQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: eNXQOfc+OsrrLW063QBV9EAJhQ0=\r\n\r\n", + "id": "6.22.26", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\udaff\udfff", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.096Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313934266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\udaff\udfff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f38fbfbf" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "8184f2f8fc2b01774394" + ] + ], + [ + "RF", + [ + 4, + "\udaff\udfff" + ], + 1, + true, + 0, + true, + "f2f8fc2b" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882f3682ec7f080" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "f3682ec7" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_27.html b/autobahn/client/tungstenite_case_6_22_27.html new file mode 100644 index 0000000..a7d97f9 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_27.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.27 : Pass - 0 ms @ 2020-09-07T18:44:02.097Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf39fbfbe

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U000dfffe', False)]}

+ Observed:
[('message', u'\U000dfffe', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=195&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: bfHVlU0qDnGjiVXlsMBrMQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: HR+DYx+thlyahkQMj8JM/ypCspM=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313935266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               󟿾
+
003 TX OCTETS: 8104f39fbfbe
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8184428fc838b1107786
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=3432386663383338
+
               󟿾
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88826af9eb276911
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3661663965623237
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_27.json b/autobahn/client/tungstenite_case_6_22_27.json new file mode 100644 index 0000000..a184e13 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_27.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 195, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf39fbfbe", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\udb3f\udffe", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=195&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: bfHVlU0qDnGjiVXlsMBrMQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: HR+DYx+thlyahkQMj8JM/ypCspM=\r\n\r\n", + "id": "6.22.27", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\udb3f\udffe", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.097Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313935266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\udb3f\udffe" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f39fbfbe" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "8184428fc838b1107786" + ] + ], + [ + "RF", + [ + 4, + "\udb3f\udffe" + ], + 1, + true, + 0, + true, + "428fc838" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88826af9eb276911" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "6af9eb27" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_28.html b/autobahn/client/tungstenite_case_6_22_28.html new file mode 100644 index 0000000..dec3c42 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_28.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.28 : Pass - 0 ms @ 2020-09-07T18:44:02.098Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf39fbfbf

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U000dffff', False)]}

+ Observed:
[('message', u'\U000dffff', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=196&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: zIK5vn8/nJH7Gp0Rmws62g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: j2NPkI+1R/3AuVdEvmLNgW6eN0I=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313936266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               óŸ¿¿
+
003 TX OCTETS: 8104f39fbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8184b17d495642e2f6e9
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=6231376434393536
+
               óŸ¿¿
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882cd7809c8ce90
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6364373830396338
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_28.json b/autobahn/client/tungstenite_case_6_22_28.json new file mode 100644 index 0000000..411dc24 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_28.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 196, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf39fbfbf", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\udb3f\udfff", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=196&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: zIK5vn8/nJH7Gp0Rmws62g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: j2NPkI+1R/3AuVdEvmLNgW6eN0I=\r\n\r\n", + "id": "6.22.28", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\udb3f\udfff", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.098Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313936266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\udb3f\udfff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f39fbfbf" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "8184b17d495642e2f6e9" + ] + ], + [ + "RF", + [ + 4, + "\udb3f\udfff" + ], + 1, + true, + 0, + true, + "b17d4956" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882cd7809c8ce90" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "cd7809c8" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_29.html b/autobahn/client/tungstenite_case_6_22_29.html new file mode 100644 index 0000000..6aacf0f --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_29.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.29 : Pass - 0 ms @ 2020-09-07T18:44:02.099Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf3afbfbe

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U000efffe', False)]}

+ Observed:
[('message', u'\U000efffe', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=197&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 1rqMr/1P0GHWEXQkNy9wVQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 4+u1YyroTUe6MwbgrXDAIIoeHB4=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313937266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               󯿾
+
003 TX OCTETS: 8104f3afbfbe
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 818447fa64e6b455db58
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=3437666136346536
+
               󯿾
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88824e4ffe044da7
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3465346666653034
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_29.json b/autobahn/client/tungstenite_case_6_22_29.json new file mode 100644 index 0000000..7fc2057 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_29.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 197, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf3afbfbe", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\udb7f\udffe", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=197&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 1rqMr/1P0GHWEXQkNy9wVQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 4+u1YyroTUe6MwbgrXDAIIoeHB4=\r\n\r\n", + "id": "6.22.29", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\udb7f\udffe", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.099Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313937266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\udb7f\udffe" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f3afbfbe" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "818447fa64e6b455db58" + ] + ], + [ + "RF", + [ + 4, + "\udb7f\udffe" + ], + 1, + true, + 0, + true, + "47fa64e6" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88824e4ffe044da7" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "4e4ffe04" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_3.html b/autobahn/client/tungstenite_case_6_22_3.html new file mode 100644 index 0000000..84ade53 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_3.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.3 : Pass - 1 ms @ 2020-09-07T18:44:02.077Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf09fbfbe

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U0001fffe', False)]}

+ Observed:
[('message', u'\U0001fffe', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=171&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: qCkgFqWzNgA3d2DpLuwdqw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: AkaL7HsmknF2SHmGdokChk6NiXs=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313731266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               🿾
+
003 TX OCTETS: 8104f09fbfbe
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 81844990fc09b90f43b7
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=3439393066633039
+
               🿾
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882eefbfe43ed13
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6565666266653433
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_3.json b/autobahn/client/tungstenite_case_6_22_3.json new file mode 100644 index 0000000..4db2d8f --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_3.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 171, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf09fbfbe", + "droppedByMe": true, + "duration": 1, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ud83f\udffe", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=171&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: qCkgFqWzNgA3d2DpLuwdqw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: AkaL7HsmknF2SHmGdokChk6NiXs=\r\n\r\n", + "id": "6.22.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ud83f\udffe", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.077Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313731266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\ud83f\udffe" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f09fbfbe" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "81844990fc09b90f43b7" + ] + ], + [ + "RF", + [ + 4, + "\ud83f\udffe" + ], + 1, + true, + 0, + true, + "4990fc09" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882eefbfe43ed13" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "eefbfe43" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_30.html b/autobahn/client/tungstenite_case_6_22_30.html new file mode 100644 index 0000000..de89fa3 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_30.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.30 : Pass - 0 ms @ 2020-09-07T18:44:02.099Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf3afbfbf

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U000effff', False)]}

+ Observed:
[('message', u'\U000effff', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=198&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: G+wBlIscLQfA+I35/RxnQw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: WOE8P0O2DB2Pr8c+D4UfwR4J9sA=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313938266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               󯿿
+
003 TX OCTETS: 8104f3afbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 81845aa098efa90f2750
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=3561613039386566
+
               󯿿
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882092d95100ac5
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3039326439353130
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_30.json b/autobahn/client/tungstenite_case_6_22_30.json new file mode 100644 index 0000000..fab4529 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_30.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 198, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf3afbfbf", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\udb7f\udfff", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=198&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: G+wBlIscLQfA+I35/RxnQw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: WOE8P0O2DB2Pr8c+D4UfwR4J9sA=\r\n\r\n", + "id": "6.22.30", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\udb7f\udfff", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.099Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313938266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\udb7f\udfff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f3afbfbf" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "81845aa098efa90f2750" + ] + ], + [ + "RF", + [ + 4, + "\udb7f\udfff" + ], + 1, + true, + 0, + true, + "5aa098ef" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882092d95100ac5" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "092d9510" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_31.html b/autobahn/client/tungstenite_case_6_22_31.html new file mode 100644 index 0000000..6958a91 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_31.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.31 : Pass - 0 ms @ 2020-09-07T18:44:02.100Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf3bfbfbe

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U000ffffe', False)]}

+ Observed:
[('message', u'\U000ffffe', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=199&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: eNK4xmyjDfGpw582yESYbg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: rSYdKZ3IgvDTVrKj/UDr0K+m/Xg=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313939266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ó¿¿¾
+
003 TX OCTETS: 8104f3bfbfbe
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8184261744b7d5a8fb09
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=3236313734346237
+
               ó¿¿¾
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88821c8fea4e1f67
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3163386665613465
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_31.json b/autobahn/client/tungstenite_case_6_22_31.json new file mode 100644 index 0000000..b54ed3c --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_31.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 199, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf3bfbfbe", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\udbbf\udffe", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=199&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: eNK4xmyjDfGpw582yESYbg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: rSYdKZ3IgvDTVrKj/UDr0K+m/Xg=\r\n\r\n", + "id": "6.22.31", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\udbbf\udffe", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.100Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313939266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\udbbf\udffe" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f3bfbfbe" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "8184261744b7d5a8fb09" + ] + ], + [ + "RF", + [ + 4, + "\udbbf\udffe" + ], + 1, + true, + 0, + true, + "261744b7" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88821c8fea4e1f67" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "1c8fea4e" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_32.html b/autobahn/client/tungstenite_case_6_22_32.html new file mode 100644 index 0000000..71f0ac0 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_32.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.32 : Pass - 0 ms @ 2020-09-07T18:44:02.101Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf3bfbfbf

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U000fffff', False)]}

+ Observed:
[('message', u'\U000fffff', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=200&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: gcWmaQ5WKCFCx9mL0v4GLg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: o0BHPHvNHZ5yak7xXE+vxyfYco8=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323030266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ó¿¿¿
+
003 TX OCTETS: 8104f3bfbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 81840c53f086ffec4f39
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=3063353366303836
+
               ó¿¿¿
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88829b5cea2198b4
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3962356365613231
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_32.json b/autobahn/client/tungstenite_case_6_22_32.json new file mode 100644 index 0000000..c3369b5 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_32.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 200, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf3bfbfbf", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\udbbf\udfff", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=200&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: gcWmaQ5WKCFCx9mL0v4GLg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: o0BHPHvNHZ5yak7xXE+vxyfYco8=\r\n\r\n", + "id": "6.22.32", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\udbbf\udfff", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.101Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323030266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\udbbf\udfff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f3bfbfbf" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "81840c53f086ffec4f39" + ] + ], + [ + "RF", + [ + 4, + "\udbbf\udfff" + ], + 1, + true, + 0, + true, + "0c53f086" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88829b5cea2198b4" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "9b5cea21" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_33.html b/autobahn/client/tungstenite_case_6_22_33.html new file mode 100644 index 0000000..1327281 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_33.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.33 : Pass - 1 ms @ 2020-09-07T18:44:02.102Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf48fbfbe

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U0010fffe', False)]}

+ Observed:
[('message', u'\U0010fffe', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=201&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: mbrVnV1q0NT67fO/yOSakA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: OGnexW8SlfYlTH35Mk6OsaN9hyk=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323031266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ô¿¾
+
003 TX OCTETS: 8104f48fbfbe
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8184af7615de5bf9aa60
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=6166373631356465
+
               ô¿¾
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882cd58ff4eceb0
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6364353866663465
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_33.json b/autobahn/client/tungstenite_case_6_22_33.json new file mode 100644 index 0000000..9a5cac1 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_33.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 201, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf48fbfbe", + "droppedByMe": true, + "duration": 1, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\udbff\udffe", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=201&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: mbrVnV1q0NT67fO/yOSakA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: OGnexW8SlfYlTH35Mk6OsaN9hyk=\r\n\r\n", + "id": "6.22.33", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\udbff\udffe", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.102Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323031266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\udbff\udffe" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f48fbfbe" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "8184af7615de5bf9aa60" + ] + ], + [ + "RF", + [ + 4, + "\udbff\udffe" + ], + 1, + true, + 0, + true, + "af7615de" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882cd58ff4eceb0" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "cd58ff4e" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_34.html b/autobahn/client/tungstenite_case_6_22_34.html new file mode 100644 index 0000000..aa0014d --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_34.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.34 : Pass - 0 ms @ 2020-09-07T18:44:02.104Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf48fbfbf

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U0010ffff', False)]}

+ Observed:
[('message', u'\U0010ffff', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=202&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: +8oXS/X+XKs3b3TTO7Pcig==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: WrllROYKrXC5KWzezXXh/Kyk6n4=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323032266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ô¿¿
+
003 TX OCTETS: 8104f48fbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 81841f5aa8fbebd51744
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=3166356161386662
+
               ô¿¿
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 888212cfc7031127
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3132636663373033
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_34.json b/autobahn/client/tungstenite_case_6_22_34.json new file mode 100644 index 0000000..a1ef8d0 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_34.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 202, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf48fbfbf", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\udbff\udfff", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=202&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: +8oXS/X+XKs3b3TTO7Pcig==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: WrllROYKrXC5KWzezXXh/Kyk6n4=\r\n\r\n", + "id": "6.22.34", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\udbff\udfff", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.104Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323032266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\udbff\udfff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f48fbfbf" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "81841f5aa8fbebd51744" + ] + ], + [ + "RF", + [ + 4, + "\udbff\udfff" + ], + 1, + true, + 0, + true, + "1f5aa8fb" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888212cfc7031127" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "12cfc703" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_4.html b/autobahn/client/tungstenite_case_6_22_4.html new file mode 100644 index 0000000..a368cd6 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_4.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.4 : Pass - 1 ms @ 2020-09-07T18:44:02.078Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf09fbfbf

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U0001ffff', False)]}

+ Observed:
[('message', u'\U0001ffff', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=172&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: sXUCdEjaptVSKqcGtwc5Lg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: xqroI6fxxOzSj6T3jkMdKYW63jA=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313732266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               🿿
+
003 TX OCTETS: 8104f09fbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8184f7686cc807f7d377
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=6637363836636338
+
               🿿
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 888208b11a170b59
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3038623131613137
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_4.json b/autobahn/client/tungstenite_case_6_22_4.json new file mode 100644 index 0000000..d1e1171 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_4.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 172, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf09fbfbf", + "droppedByMe": true, + "duration": 1, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ud83f\udfff", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=172&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: sXUCdEjaptVSKqcGtwc5Lg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: xqroI6fxxOzSj6T3jkMdKYW63jA=\r\n\r\n", + "id": "6.22.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ud83f\udfff", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.078Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313732266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\ud83f\udfff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f09fbfbf" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "8184f7686cc807f7d377" + ] + ], + [ + "RF", + [ + 4, + "\ud83f\udfff" + ], + 1, + true, + 0, + true, + "f7686cc8" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888208b11a170b59" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "08b11a17" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_5.html b/autobahn/client/tungstenite_case_6_22_5.html new file mode 100644 index 0000000..c6a0b55 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_5.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.5 : Pass - 0 ms @ 2020-09-07T18:44:02.079Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf0afbfbe

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U0002fffe', False)]}

+ Observed:
[('message', u'\U0002fffe', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=173&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 2yiLQyjv7TVYPlLDABWMZQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: eq0+aBiTcpD1g2K9/V/RiO1nO0I=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313733266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               𯿾
+
003 TX OCTETS: 8104f0afbfbe
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 818480ccd59670636a28
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=3830636364353936
+
               𯿾
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88828838c8e28bd0
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3838333863386532
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_5.json b/autobahn/client/tungstenite_case_6_22_5.json new file mode 100644 index 0000000..afa494d --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_5.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 173, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf0afbfbe", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ud87f\udffe", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=173&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 2yiLQyjv7TVYPlLDABWMZQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: eq0+aBiTcpD1g2K9/V/RiO1nO0I=\r\n\r\n", + "id": "6.22.5", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ud87f\udffe", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.079Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313733266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\ud87f\udffe" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f0afbfbe" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "818480ccd59670636a28" + ] + ], + [ + "RF", + [ + 4, + "\ud87f\udffe" + ], + 1, + true, + 0, + true, + "80ccd596" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88828838c8e28bd0" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "8838c8e2" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_6.html b/autobahn/client/tungstenite_case_6_22_6.html new file mode 100644 index 0000000..5486d62 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_6.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.6 : Pass - 0 ms @ 2020-09-07T18:44:02.079Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf0afbfbf

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U0002ffff', False)]}

+ Observed:
[('message', u'\U0002ffff', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=174&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Elr3HhMqI3NxYQV51mizag==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 2w8I7o6WqYryuEsQcfAacqGkSkk=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313734266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               𯿿
+
003 TX OCTETS: 8104f0afbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8184525c4c26a2f3f399
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=3532356334633236
+
               𯿿
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88827a5328c379bb
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3761353332386333
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_6.json b/autobahn/client/tungstenite_case_6_22_6.json new file mode 100644 index 0000000..175a957 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_6.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 174, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf0afbfbf", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ud87f\udfff", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=174&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Elr3HhMqI3NxYQV51mizag==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 2w8I7o6WqYryuEsQcfAacqGkSkk=\r\n\r\n", + "id": "6.22.6", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ud87f\udfff", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.079Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313734266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\ud87f\udfff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f0afbfbf" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "8184525c4c26a2f3f399" + ] + ], + [ + "RF", + [ + 4, + "\ud87f\udfff" + ], + 1, + true, + 0, + true, + "525c4c26" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88827a5328c379bb" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "7a5328c3" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_7.html b/autobahn/client/tungstenite_case_6_22_7.html new file mode 100644 index 0000000..dcfaacc --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_7.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.7 : Pass - 1 ms @ 2020-09-07T18:44:02.081Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf0bfbfbe

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U0003fffe', False)]}

+ Observed:
[('message', u'\U0003fffe', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=175&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 1C7RTicmYBvevaRNPvpdjA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: SCJSt/CtQ7sVtbfoR3M02m5KkXA=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313735266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ð¿¿¾
+
003 TX OCTETS: 8104f0bfbfbe
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 81842d3308c0dd8cb77e
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=3264333330386330
+
               ð¿¿¾
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88822af5d597291d
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3261663564353937
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_7.json b/autobahn/client/tungstenite_case_6_22_7.json new file mode 100644 index 0000000..ecab25b --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_7.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 175, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf0bfbfbe", + "droppedByMe": true, + "duration": 1, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ud8bf\udffe", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=175&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 1C7RTicmYBvevaRNPvpdjA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: SCJSt/CtQ7sVtbfoR3M02m5KkXA=\r\n\r\n", + "id": "6.22.7", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ud8bf\udffe", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.081Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313735266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\ud8bf\udffe" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f0bfbfbe" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "81842d3308c0dd8cb77e" + ] + ], + [ + "RF", + [ + 4, + "\ud8bf\udffe" + ], + 1, + true, + 0, + true, + "2d3308c0" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88822af5d597291d" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "2af5d597" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_8.html b/autobahn/client/tungstenite_case_6_22_8.html new file mode 100644 index 0000000..515f5ee --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_8.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.8 : Pass - 0 ms @ 2020-09-07T18:44:02.082Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf0bfbfbf

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U0003ffff', False)]}

+ Observed:
[('message', u'\U0003ffff', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=176&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: +6VBZ9bsIcHWWteg72t7eg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: jlVebwyV5hFtjm2VLpk7l54megE=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313736266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ð¿¿¿
+
003 TX OCTETS: 8104f0bfbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 81841c6d9f58ecd220e7
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=3163366439663538
+
               ð¿¿¿
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88822fce54f92c26
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3266636535346639
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_8.json b/autobahn/client/tungstenite_case_6_22_8.json new file mode 100644 index 0000000..a032b6d --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_8.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 176, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf0bfbfbf", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ud8bf\udfff", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=176&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: +6VBZ9bsIcHWWteg72t7eg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: jlVebwyV5hFtjm2VLpk7l54megE=\r\n\r\n", + "id": "6.22.8", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ud8bf\udfff", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.082Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313736266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\ud8bf\udfff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f0bfbfbf" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "81841c6d9f58ecd220e7" + ] + ], + [ + "RF", + [ + 4, + "\ud8bf\udfff" + ], + 1, + true, + 0, + true, + "1c6d9f58" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88822fce54f92c26" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "2fce54f9" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_22_9.html b/autobahn/client/tungstenite_case_6_22_9.html new file mode 100644 index 0000000..d3fde54 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_9.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.22.9 : Pass - 0 ms @ 2020-09-07T18:44:02.082Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf18fbfbe

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U0004fffe', False)]}

+ Observed:
[('message', u'\U0004fffe', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=177&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: QB9QymV3LaHYWddaP9H/lA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: UOhMGithjSKMCnBH160VPSQO3eQ=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313737266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ñ¿¾
+
003 TX OCTETS: 8104f18fbfbe
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 818401e79549f0682af7
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=3031653739353439
+
               ñ¿¾
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88821a23f7a919cb
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3161323366376139
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_22_9.json b/autobahn/client/tungstenite_case_6_22_9.json new file mode 100644 index 0000000..7b47fcc --- /dev/null +++ b/autobahn/client/tungstenite_case_6_22_9.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 177, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf18fbfbe", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ud8ff\udffe", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=177&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: QB9QymV3LaHYWddaP9H/lA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: UOhMGithjSKMCnBH160VPSQO3eQ=\r\n\r\n", + "id": "6.22.9", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ud8ff\udffe", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.082Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313737266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\ud8ff\udffe" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f18fbfbe" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "818401e79549f0682af7" + ] + ], + [ + "RF", + [ + 4, + "\ud8ff\udffe" + ], + 1, + true, + 0, + true, + "01e79549" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88821a23f7a919cb" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "1a23f7a9" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_23_1.html b/autobahn/client/tungstenite_case_6_23_1.html new file mode 100644 index 0000000..9189890 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_23_1.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.23.1 : Pass - 0 ms @ 2020-09-07T18:44:02.105Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfb9

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\ufff9', False)]}

+ Observed:
[('message', u'\ufff9', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=203&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 9FgQzOLUX3ZBTmQNbI7OTA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: A4u0Ea0Zf/HCAp3jCKqcYfx3w6o=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
919
2571257
Total3274
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
515
2061206
Total3215
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323033266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               
+
003 TX OCTETS: 8103efbfb9
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8183129ce6f2fd235f
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASKED=True, MASK=3132396365366632
+
               
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882a1d43f9ba23c
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6131643433663962
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_23_1.json b/autobahn/client/tungstenite_case_6_23_1.json new file mode 100644 index 0000000..451266d --- /dev/null +++ b/autobahn/client/tungstenite_case_6_23_1.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 203, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfb9", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ufff9", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=203&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 9FgQzOLUX3ZBTmQNbI7OTA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: A4u0Ea0Zf/HCAp3jCKqcYfx3w6o=\r\n\r\n", + "id": "6.23.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ufff9", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "9": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.105Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "5": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323033266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "\ufff9" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103efbfb9" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 9, + "8183129ce6f2fd235f" + ] + ], + [ + "RF", + [ + 3, + "\ufff9" + ], + 1, + true, + 0, + true, + "129ce6f2" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882a1d43f9ba23c" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "a1d43f9b" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_23_2.html b/autobahn/client/tungstenite_case_6_23_2.html new file mode 100644 index 0000000..96c9178 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_23_2.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.23.2 : Pass - 0 ms @ 2020-09-07T18:44:02.106Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfba

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\ufffa', False)]}

+ Observed:
[('message', u'\ufffa', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=204&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: wANDh42kaYOKceYge6BGew==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: /44P9SUjafsGc9YLTT0lEewi/T4=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
919
2571257
Total3274
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
515
2061206
Total3215
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323034266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               
+
003 TX OCTETS: 8103efbfba
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 81839be6c54b74597f
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASKED=True, MASK=3962653663353462
+
               
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882d35192a5d0b9
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6433353139326135
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_23_2.json b/autobahn/client/tungstenite_case_6_23_2.json new file mode 100644 index 0000000..3855e7c --- /dev/null +++ b/autobahn/client/tungstenite_case_6_23_2.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 204, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfba", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ufffa", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=204&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: wANDh42kaYOKceYge6BGew==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: /44P9SUjafsGc9YLTT0lEewi/T4=\r\n\r\n", + "id": "6.23.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ufffa", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "9": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.106Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "5": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323034266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "\ufffa" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103efbfba" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 9, + "81839be6c54b74597f" + ] + ], + [ + "RF", + [ + 3, + "\ufffa" + ], + 1, + true, + 0, + true, + "9be6c54b" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882d35192a5d0b9" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "d35192a5" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_23_3.html b/autobahn/client/tungstenite_case_6_23_3.html new file mode 100644 index 0000000..52c8aef --- /dev/null +++ b/autobahn/client/tungstenite_case_6_23_3.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.23.3 : Pass - 0 ms @ 2020-09-07T18:44:02.107Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbb

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\ufffb', False)]}

+ Observed:
[('message', u'\ufffb', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=205&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: cSZRr8hWAIMVaqZ0WD11dA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: bq3MouZ5kzlY2GVMXakXSx6zn40=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
919
2571257
Total3274
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
515
2061206
Total3215
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323035266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ï¿»
+
003 TX OCTETS: 8103efbfbb
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 81830ca2b973e31d02
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASKED=True, MASK=3063613262393733
+
               ï¿»
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88826bba83806852
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3662626138333830
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_23_3.json b/autobahn/client/tungstenite_case_6_23_3.json new file mode 100644 index 0000000..9930bf4 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_23_3.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 205, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbb", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ufffb", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=205&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: cSZRr8hWAIMVaqZ0WD11dA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: bq3MouZ5kzlY2GVMXakXSx6zn40=\r\n\r\n", + "id": "6.23.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ufffb", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "9": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.107Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "5": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323035266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "\ufffb" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103efbfbb" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 9, + "81830ca2b973e31d02" + ] + ], + [ + "RF", + [ + 3, + "\ufffb" + ], + 1, + true, + 0, + true, + "0ca2b973" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88826bba83806852" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "6bba8380" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_23_4.html b/autobahn/client/tungstenite_case_6_23_4.html new file mode 100644 index 0000000..cc0fad4 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_23_4.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.23.4 : Pass - 0 ms @ 2020-09-07T18:44:02.107Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbc

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\ufffc', False)]}

+ Observed:
[('message', u'\ufffc', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=206&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: KWLyXxRyWj+6PFvT8fp2ZA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: gfj9rGS/6qpFUs3TPaw/vEiO8Ek=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
919
2571257
Total3274
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
515
2061206
Total3215
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323036266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               
+
003 TX OCTETS: 8103efbfbc
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 81838a4e479465f1fb
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASKED=True, MASK=3861346534373934
+
               
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88823a4db5b639a5
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3361346462356236
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_23_4.json b/autobahn/client/tungstenite_case_6_23_4.json new file mode 100644 index 0000000..20c9b5d --- /dev/null +++ b/autobahn/client/tungstenite_case_6_23_4.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 206, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbc", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ufffc", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=206&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: KWLyXxRyWj+6PFvT8fp2ZA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: gfj9rGS/6qpFUs3TPaw/vEiO8Ek=\r\n\r\n", + "id": "6.23.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ufffc", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "9": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.107Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "5": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323036266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "\ufffc" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103efbfbc" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 9, + "81838a4e479465f1fb" + ] + ], + [ + "RF", + [ + 3, + "\ufffc" + ], + 1, + true, + 0, + true, + "8a4e4794" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88823a4db5b639a5" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "3a4db5b6" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_23_5.html b/autobahn/client/tungstenite_case_6_23_5.html new file mode 100644 index 0000000..b78edbe --- /dev/null +++ b/autobahn/client/tungstenite_case_6_23_5.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.23.5 : Pass - 0 ms @ 2020-09-07T18:44:02.108Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbd

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\ufffd', False)]}

+ Observed:
[('message', u'\ufffd', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=207&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: t1TE0IsPL0iIoBLhtgQFhA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: hHOo2u0wCUUSfBCuERiBc55uovc=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
919
2571257
Total3274
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
515
2061206
Total3215
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323037266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               �
+
003 TX OCTETS: 8103efbfbd
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8183166920aff9d69d
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASKED=True, MASK=3136363932306166
+
               �
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88821732bcb514da
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3137333262636235
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_23_5.json b/autobahn/client/tungstenite_case_6_23_5.json new file mode 100644 index 0000000..6020da2 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_23_5.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 207, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbd", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ufffd", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=207&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: t1TE0IsPL0iIoBLhtgQFhA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: hHOo2u0wCUUSfBCuERiBc55uovc=\r\n\r\n", + "id": "6.23.5", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ufffd", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "9": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.108Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "5": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323037266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "\ufffd" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103efbfbd" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 9, + "8183166920aff9d69d" + ] + ], + [ + "RF", + [ + 3, + "\ufffd" + ], + 1, + true, + 0, + true, + "166920af" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88821732bcb514da" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "1732bcb5" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_23_6.html b/autobahn/client/tungstenite_case_6_23_6.html new file mode 100644 index 0000000..f271936 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_23_6.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.23.6 : Pass - 0 ms @ 2020-09-07T18:44:02.109Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbe

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\ufffe', False)]}

+ Observed:
[('message', u'\ufffe', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=208&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 9JWleDud0ni9pMNLxBo13w==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: mRUFIlnL/WEhjaSd+myh5/vzJL8=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
919
2571257
Total3274
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
515
2061206
Total3215
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323038266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ￾
+
003 TX OCTETS: 8103efbfbe
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8183d6711b3c39cea5
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASKED=True, MASK=6436373131623363
+
               ￾
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88822148c52322a0
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3231343863353233
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_23_6.json b/autobahn/client/tungstenite_case_6_23_6.json new file mode 100644 index 0000000..1d16de6 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_23_6.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 208, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbe", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ufffe", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=208&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 9JWleDud0ni9pMNLxBo13w==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: mRUFIlnL/WEhjaSd+myh5/vzJL8=\r\n\r\n", + "id": "6.23.6", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ufffe", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "9": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.109Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "5": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323038266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "\ufffe" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103efbfbe" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 9, + "8183d6711b3c39cea5" + ] + ], + [ + "RF", + [ + 3, + "\ufffe" + ], + 1, + true, + 0, + true, + "d6711b3c" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88822148c52322a0" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "2148c523" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_23_7.html b/autobahn/client/tungstenite_case_6_23_7.html new file mode 100644 index 0000000..40f840d --- /dev/null +++ b/autobahn/client/tungstenite_case_6_23_7.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.23.7 : Pass - 0 ms @ 2020-09-07T18:44:02.110Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbf

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\uffff', False)]}

+ Observed:
[('message', u'\uffff', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=209&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 952DnkaSpn47nESaqISerg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Du16QUewtDbgLMQ0NjRl9NASwCY=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
919
2571257
Total3274
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
515
2061206
Total3215
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323039266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ï¿¿
+
003 TX OCTETS: 8103efbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 81830b5700f8e4e8bf
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASKED=True, MASK=3062353730306638
+
               ï¿¿
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882abe2e808a80a
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6162653265383038
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_23_7.json b/autobahn/client/tungstenite_case_6_23_7.json new file mode 100644 index 0000000..59dc96f --- /dev/null +++ b/autobahn/client/tungstenite_case_6_23_7.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 209, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbf", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\uffff", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=209&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 952DnkaSpn47nESaqISerg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Du16QUewtDbgLMQ0NjRl9NASwCY=\r\n\r\n", + "id": "6.23.7", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\uffff", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "9": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.110Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "5": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323039266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "\uffff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103efbfbf" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 9, + "81830b5700f8e4e8bf" + ] + ], + [ + "RF", + [ + 3, + "\uffff" + ], + 1, + true, + 0, + true, + "0b5700f8" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882abe2e808a80a" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "abe2e808" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_2_1.html b/autobahn/client/tungstenite_case_6_2_1.html new file mode 100644 index 0000000..10c5ad6 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_2_1.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.2.1 : Pass - 1 ms @ 2020-09-07T18:43:55.984Z

+

Case Description

Send a valid UTF-8 text message in one fragment.

MESSAGE:
Hello-µ@ßöäüàá-UTF-8!!
48656c6c6f2dc2b540c39fc3b6c3a4c3bcc3a0c3a12d5554462d382121

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'Hello-\xb5@\xdf\xf6\xe4\xfc\xe0\xe1-UTF-8!!', False)]}

+ Observed:
[('message', u'Hello-\xb5@\xdf\xf6\xe4\xfc\xe0\xe1-UTF-8!!', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=68&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: BsVFx+56iQB9eMGVyn4d2Q==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: pzgo04PkKTokqHeVP4BX2osSE/I=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
35135
2561256
Total3299
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
31131
2061206
Total3241
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3638266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=29, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               Hello-µ@ßöäüàá-UTF-8!!
+
003 TX OCTETS: 811d48656c6c6f2dc2b540c39fc3b6c3a4c3bcc3a0c3a12d5554462d382121
+
004 CLOSE CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 819d3a532ffe72364392557eed4b7a90b03d8c908b3d86908f3d9b7e7aaa7c7e17df1b
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=29, MASKED=True, MASK=3361353332666665
+
               Hello-µ@ßöäüàá-UTF-8!!
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882416ce1ac4284
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3431366365316163
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_2_1.json b/autobahn/client/tungstenite_case_6_2_1.json new file mode 100644 index 0000000..fc84632 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_2_1.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 68, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a valid UTF-8 text message in one fragment.

MESSAGE:
Hello-\u00b5@\u00df\u00f6\u00e4\u00fc\u00e0\u00e1-UTF-8!!
48656c6c6f2dc2b540c39fc3b6c3a4c3bcc3a0c3a12d5554462d382121", + "droppedByMe": true, + "duration": 1, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "Hello-\u00b5@\u00df\u00f6\u00e4\u00fc\u00e0\u00e1-UTF-8!!", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=68&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: BsVFx+56iQB9eMGVyn4d2Q==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: pzgo04PkKTokqHeVP4BX2osSE/I=\r\n\r\n", + "id": "6.2.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "Hello-\u00b5@\u00df\u00f6\u00e4\u00fc\u00e0\u00e1-UTF-8!!", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "35": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:55.984Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "31": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3638266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 29, + "Hello-\u00b5@\u00df\u00f6\u00e4\u00fc\u00e0\u00e1-UTF-8!!" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 31, + "811d48656c6c6f2dc2b540c39fc3b6c3a4c3bcc3a0c3a12d5554462d382121" + ], + false + ], + [ + "TI", + 1 + ], + [ + "RO", + [ + 35, + "819d3a532ffe72364392557eed4b7a90b03d8c908b3d86908f3d9b7e7aaa7c7e17df1b" + ] + ], + [ + "RF", + [ + 29, + "Hello-\u00b5@\u00df\u00f6\u00e4\u00fc\u00e0\u00e1-UTF-8!!" + ], + 1, + true, + 0, + true, + "3a532ffe" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882416ce1ac4284" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "416ce1ac" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_2_2.html b/autobahn/client/tungstenite_case_6_2_2.html new file mode 100644 index 0000000..6a1c457 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_2_2.html @@ -0,0 +1,308 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.2.2 : Pass - 1 ms @ 2020-09-07T18:43:55.985Z

+

Case Description

Send a valid UTF-8 text message in two fragments, fragmented on UTF-8 code point boundary.

MESSAGE FRAGMENT 1:
Hello-µ@ßöä
48656c6c6f2dc2b540c39fc3b6c3a4

MESSAGE FRAGMENT 2:
üàá-UTF-8!!
c3bcc3a0c3a12d5554462d382121

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'Hello-\xb5@\xdf\xf6\xe4\xfc\xe0\xe1-UTF-8!!', False)]}

+ Observed:
[('message', u'Hello-\xb5@\xdf\xf6\xe4\xfc\xe0\xe1-UTF-8!!', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=69&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: NBy7xaw24IhfdhYyrb+1ag==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: XZd0gO6DTvqIx53V/ZmeqEo1wT0=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
35135
2561256
Total3299
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
414
16116
17117
2061206
Total4243
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
01
11
81
Total3
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3639266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=15, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               Hello-µ@ßöä
+
003 TX OCTETS: 010f48656c6c6f2dc2b540c39fc3b6c3a4
+
004 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=14, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               üàá-UTF-8!!
+
005 TX OCTETS: 800ec3bcc3a0c3a12d5554462d382121
+
006 CLOSE CONNECTION AFTER 1.000000 sec
+
007 RX OCTETS: 819dad817c19e5e41075c2acbeaced42e3da1b42d8da1142dcda0cac294debac44388c
+
008 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=29, MASKED=True, MASK=6164383137633139
+
               Hello-µ@ßöäüàá-UTF-8!!
+
009 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
010 TX OCTETS: 880203e8
+
011 RX OCTETS: 8882b7099ab0b4e1
+
012 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6237303939616230
+
               0x03e8
+
013 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_2_2.json b/autobahn/client/tungstenite_case_6_2_2.json new file mode 100644 index 0000000..fff7d91 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_2_2.json @@ -0,0 +1,201 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 69, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a valid UTF-8 text message in two fragments, fragmented on UTF-8 code point boundary.

MESSAGE FRAGMENT 1:
Hello-\u00b5@\u00df\u00f6\u00e4
48656c6c6f2dc2b540c39fc3b6c3a4

MESSAGE FRAGMENT 2:
\u00fc\u00e0\u00e1-UTF-8!!
c3bcc3a0c3a12d5554462d382121", + "droppedByMe": true, + "duration": 1, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "Hello-\u00b5@\u00df\u00f6\u00e4\u00fc\u00e0\u00e1-UTF-8!!", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=69&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: NBy7xaw24IhfdhYyrb+1ag==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: XZd0gO6DTvqIx53V/ZmeqEo1wT0=\r\n\r\n", + "id": "6.2.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "Hello-\u00b5@\u00df\u00f6\u00e4\u00fc\u00e0\u00e1-UTF-8!!", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "35": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:55.985Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "16": 1, + "17": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3639266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 15, + "Hello-\u00b5@\u00df\u00f6\u00e4" + ], + 1, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 17, + "010f48656c6c6f2dc2b540c39fc3b6c3a4" + ], + false + ], + [ + "TF", + [ + 14, + "\u00fc\u00e0\u00e1-UTF-8!!" + ], + 0, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 16, + "800ec3bcc3a0c3a12d5554462d382121" + ], + false + ], + [ + "TI", + 1 + ], + [ + "RO", + [ + 35, + "819dad817c19e5e41075c2acbeaced42e3da1b42d8da1142dcda0cac294debac44388c" + ] + ], + [ + "RF", + [ + 29, + "Hello-\u00b5@\u00df\u00f6\u00e4\u00fc\u00e0\u00e1-UTF-8!!" + ], + 1, + true, + 0, + true, + "ad817c19" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882b7099ab0b4e1" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "b7099ab0" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_2_3.html b/autobahn/client/tungstenite_case_6_2_3.html new file mode 100644 index 0000000..a8e3c12 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_2_3.html @@ -0,0 +1,391 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.2.3 : Pass - 1 ms @ 2020-09-07T18:43:55.986Z

+

Case Description

Send a valid UTF-8 text message in fragments of 1 octet, resulting in frames ending on positions which are not code point ends.

MESSAGE:
Hello-µ@ßöäüàá-UTF-8!!
48656c6c6f2dc2b540c39fc3b6c3a4c3bcc3a0c3a12d5554462d382121

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'Hello-\xb5@\xdf\xf6\xe4\xfc\xe0\xe1-UTF-8!!', False)]}

+ Observed:
[('message', u'Hello-\xb5@\xdf\xf6\xe4\xfc\xe0\xe1-UTF-8!!', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=70&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: UuY6BfLhqVlhq6bn1gKepg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: WtYhKKdOoXt9qy4fjoTaQVa+BrQ=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
35135
2561256
Total3299
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
212
32987
414
2061206
Total32299
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
029
11
81
Total31
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3730266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               H
+
003 TX OCTETS: 010148
+
004 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               e
+
005 TX OCTETS: 000165
+
006 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               l
+
007 TX OCTETS: 00016c
+
008 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               l
+
009 TX OCTETS: 00016c
+
010 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               o
+
011 TX OCTETS: 00016f
+
012 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               -
+
013 TX OCTETS: 00012d
+
014 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xc2
+
015 TX OCTETS: 0001c2
+
016 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xb5
+
017 TX OCTETS: 0001b5
+
018 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               @
+
019 TX OCTETS: 000140
+
020 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xc3
+
021 TX OCTETS: 0001c3
+
022 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x9f
+
023 TX OCTETS: 00019f
+
024 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xc3
+
025 TX OCTETS: 0001c3
+
026 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xb6
+
027 TX OCTETS: 0001b6
+
028 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xc3
+
029 TX OCTETS: 0001c3
+
030 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xa4
+
031 TX OCTETS: 0001a4
+
032 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xc3
+
033 TX OCTETS: 0001c3
+
034 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xbc
+
035 TX OCTETS: 0001bc
+
036 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xc3
+
037 TX OCTETS: 0001c3
+
038 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xa0
+
039 TX OCTETS: 0001a0
+
040 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xc3
+
041 TX OCTETS: 0001c3
+
042 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xa1
+
043 TX OCTETS: 0001a1
+
044 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               -
+
045 TX OCTETS: 00012d
+
046 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               U
+
047 TX OCTETS: 000155
+
048 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               T
+
049 TX OCTETS: 000154
+
050 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               F
+
051 TX OCTETS: 000146
+
052 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               -
+
053 TX OCTETS: 00012d
+
054 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               8
+
055 TX OCTETS: 000138
+
056 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               !
+
057 TX OCTETS: 000121
+
058 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               !
+
059 TX OCTETS: 000121
+
060 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
061 TX OCTETS: 8000
+
062 CLOSE CONNECTION AFTER 1.000000 sec
+
063 RX OCTETS: 819d707077f038151b9c1f5db54530b3e833c6b3d333ccb3d733d15d22a4365d4fd151
+
064 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=29, MASKED=True, MASK=3730373037376630
+
               Hello-µ@ßöäüàá-UTF-8!!
+
065 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
066 TX OCTETS: 880203e8
+
067 RX OCTETS: 8882c4a88d55c740
+
068 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6334613838643535
+
               0x03e8
+
069 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_2_3.json b/autobahn/client/tungstenite_case_6_2_3.json new file mode 100644 index 0000000..655d1a1 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_2_3.json @@ -0,0 +1,817 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 70, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a valid UTF-8 text message in fragments of 1 octet, resulting in frames ending on positions which are not code point ends.

MESSAGE:
Hello-\u00b5@\u00df\u00f6\u00e4\u00fc\u00e0\u00e1-UTF-8!!
48656c6c6f2dc2b540c39fc3b6c3a4c3bcc3a0c3a12d5554462d382121", + "droppedByMe": true, + "duration": 1, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "Hello-\u00b5@\u00df\u00f6\u00e4\u00fc\u00e0\u00e1-UTF-8!!", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=70&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: UuY6BfLhqVlhq6bn1gKepg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: WtYhKKdOoXt9qy4fjoTaQVa+BrQ=\r\n\r\n", + "id": "6.2.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "Hello-\u00b5@\u00df\u00f6\u00e4\u00fc\u00e0\u00e1-UTF-8!!", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "35": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:55.986Z", + "trafficStats": null, + "txFrameStats": { + "0": 29, + "1": 1, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "3": 29, + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3730266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 1, + "H" + ], + 1, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "010148" + ], + false + ], + [ + "TF", + [ + 1, + "e" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "000165" + ], + false + ], + [ + "TF", + [ + 1, + "l" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "00016c" + ], + false + ], + [ + "TF", + [ + 1, + "l" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "00016c" + ], + false + ], + [ + "TF", + [ + 1, + "o" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "00016f" + ], + false + ], + [ + "TF", + [ + 1, + "-" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "00012d" + ], + false + ], + [ + "TF", + [ + 1, + "0xc2" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001c2" + ], + false + ], + [ + "TF", + [ + 1, + "0xb5" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001b5" + ], + false + ], + [ + "TF", + [ + 1, + "@" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "000140" + ], + false + ], + [ + "TF", + [ + 1, + "0xc3" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001c3" + ], + false + ], + [ + "TF", + [ + 1, + "0x9f" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "00019f" + ], + false + ], + [ + "TF", + [ + 1, + "0xc3" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001c3" + ], + false + ], + [ + "TF", + [ + 1, + "0xb6" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001b6" + ], + false + ], + [ + "TF", + [ + 1, + "0xc3" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001c3" + ], + false + ], + [ + "TF", + [ + 1, + "0xa4" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001a4" + ], + false + ], + [ + "TF", + [ + 1, + "0xc3" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001c3" + ], + false + ], + [ + "TF", + [ + 1, + "0xbc" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001bc" + ], + false + ], + [ + "TF", + [ + 1, + "0xc3" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001c3" + ], + false + ], + [ + "TF", + [ + 1, + "0xa0" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001a0" + ], + false + ], + [ + "TF", + [ + 1, + "0xc3" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001c3" + ], + false + ], + [ + "TF", + [ + 1, + "0xa1" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001a1" + ], + false + ], + [ + "TF", + [ + 1, + "-" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "00012d" + ], + false + ], + [ + "TF", + [ + 1, + "U" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "000155" + ], + false + ], + [ + "TF", + [ + 1, + "T" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "000154" + ], + false + ], + [ + "TF", + [ + 1, + "F" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "000146" + ], + false + ], + [ + "TF", + [ + 1, + "-" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "00012d" + ], + false + ], + [ + "TF", + [ + 1, + "8" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "000138" + ], + false + ], + [ + "TF", + [ + 1, + "!" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "000121" + ], + false + ], + [ + "TF", + [ + 1, + "!" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "000121" + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 0, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8000" + ], + false + ], + [ + "TI", + 1 + ], + [ + "RO", + [ + 35, + "819d707077f038151b9c1f5db54530b3e833c6b3d333ccb3d733d15d22a4365d4fd151" + ] + ], + [ + "RF", + [ + 29, + "Hello-\u00b5@\u00df\u00f6\u00e4\u00fc\u00e0\u00e1-UTF-8!!" + ], + 1, + true, + 0, + true, + "707077f0" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882c4a88d55c740" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "c4a88d55" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_2_4.html b/autobahn/client/tungstenite_case_6_2_4.html new file mode 100644 index 0000000..0cc55de --- /dev/null +++ b/autobahn/client/tungstenite_case_6_2_4.html @@ -0,0 +1,337 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.2.4 : Pass - 2 ms @ 2020-09-07T18:43:55.987Z

+

Case Description

Send a valid UTF-8 text message in fragments of 1 octet, resulting in frames ending on positions which are not code point ends.

MESSAGE:
κόσμε
cebae1bdb9cf83cebcceb5

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\u03ba\u1f79\u03c3\u03bc\u03b5', False)]}

+ Observed:
[('message', u'\u03ba\u1f79\u03c3\u03bc\u03b5', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=71&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: bdxxqKc2bpEUuQ2LUzS0sw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: St4R6O5RXm+af0dFaU/aQFMCSgM=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
17117
2561256
Total3281
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
212
31133
414
2061206
Total14245
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
011
11
81
Total13
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3731266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xce
+
003 TX OCTETS: 0101ce
+
004 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xba
+
005 TX OCTETS: 0001ba
+
006 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xe1
+
007 TX OCTETS: 0001e1
+
008 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xbd
+
009 TX OCTETS: 0001bd
+
010 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xb9
+
011 TX OCTETS: 0001b9
+
012 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xcf
+
013 TX OCTETS: 0001cf
+
014 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x83
+
015 TX OCTETS: 000183
+
016 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xce
+
017 TX OCTETS: 0001ce
+
018 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xbc
+
019 TX OCTETS: 0001bc
+
020 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xce
+
021 TX OCTETS: 0001ce
+
022 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xb5
+
023 TX OCTETS: 0001b5
+
024 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
025 TX OCTETS: 8000
+
026 CLOSE CONNECTION AFTER 1.000000 sec
+
027 RX OCTETS: 818b3c2dfbdbf2971a6685e2781580e34e
+
028 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=11, MASKED=True, MASK=3363326466626462
+
               κόσμε
+
029 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
030 TX OCTETS: 880203e8
+
031 RX OCTETS: 8882c43cd8a2c7d4
+
032 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6334336364386132
+
               0x03e8
+
033 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_2_4.json b/autobahn/client/tungstenite_case_6_2_4.json new file mode 100644 index 0000000..1005836 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_2_4.json @@ -0,0 +1,421 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 71, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a valid UTF-8 text message in fragments of 1 octet, resulting in frames ending on positions which are not code point ends.

MESSAGE:
\u03ba\u1f79\u03c3\u03bc\u03b5
cebae1bdb9cf83cebcceb5", + "droppedByMe": true, + "duration": 2, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\u03ba\u1f79\u03c3\u03bc\u03b5", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=71&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: bdxxqKc2bpEUuQ2LUzS0sw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: St4R6O5RXm+af0dFaU/aQFMCSgM=\r\n\r\n", + "id": "6.2.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\u03ba\u1f79\u03c3\u03bc\u03b5", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "17": 1, + "256": 1 + }, + "started": "2020-09-07T18:43:55.987Z", + "trafficStats": null, + "txFrameStats": { + "0": 11, + "1": 1, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "3": 11, + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3731266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 1, + "0xce" + ], + 1, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0101ce" + ], + false + ], + [ + "TF", + [ + 1, + "0xba" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001ba" + ], + false + ], + [ + "TF", + [ + 1, + "0xe1" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001e1" + ], + false + ], + [ + "TF", + [ + 1, + "0xbd" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001bd" + ], + false + ], + [ + "TF", + [ + 1, + "0xb9" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001b9" + ], + false + ], + [ + "TF", + [ + 1, + "0xcf" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001cf" + ], + false + ], + [ + "TF", + [ + 1, + "0x83" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "000183" + ], + false + ], + [ + "TF", + [ + 1, + "0xce" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001ce" + ], + false + ], + [ + "TF", + [ + 1, + "0xbc" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001bc" + ], + false + ], + [ + "TF", + [ + 1, + "0xce" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001ce" + ], + false + ], + [ + "TF", + [ + 1, + "0xb5" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001b5" + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 0, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8000" + ], + false + ], + [ + "TI", + 1 + ], + [ + "RO", + [ + 17, + "818b3c2dfbdbf2971a6685e2781580e34e" + ] + ], + [ + "RF", + [ + 11, + "\u03ba\u1f79\u03c3\u03bc\u03b5" + ], + 1, + true, + 0, + true, + "3c2dfbdb" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882c43cd8a2c7d4" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "c43cd8a2" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_3_1.html b/autobahn/client/tungstenite_case_6_3_1.html new file mode 100644 index 0000000..1edd7c0 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_3_1.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.3.1 : Pass - 0 ms @ 2020-09-07T18:43:55.989Z

+

Case Description

Send invalid UTF-8 text message unfragmented.

MESSAGE:
cebae1bdb9cf83cebcceb5eda080656469746564

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=72&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: MZnC9+Ja9V05/7pgV2DXpQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 7h3L25muNgaXuNcHt0ufhIZuJg8=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
22122
2061206
Total2228
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3732266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=20, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               Îºá½¹ÏƒÎ¼Îµí €edited
+
003 TX OCTETS: 8114cebae1bdb9cf83cebcceb5eda080656469746564
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_3_1.json b/autobahn/client/tungstenite_case_6_3_1.json new file mode 100644 index 0000000..9da6aa0 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_3_1.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 72, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send invalid UTF-8 text message unfragmented.

MESSAGE:
cebae1bdb9cf83cebcceb5eda080656469746564", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=72&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: MZnC9+Ja9V05/7pgV2DXpQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 7h3L25muNgaXuNcHt0ufhIZuJg8=\r\n\r\n", + "id": "6.3.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:55.989Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "22": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3732266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 20, + "\u03ba\u1f79\u03c3\u03bc\u03b5\ud800edited" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 22, + "8114cebae1bdb9cf83cebcceb5eda080656469746564" + ], + false + ], + [ + "KL", + 1 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_3_2.html b/autobahn/client/tungstenite_case_6_3_2.html new file mode 100644 index 0000000..adbe7b4 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_3_2.html @@ -0,0 +1,349 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.3.2 : Pass - 0 ms @ 2020-09-07T18:43:55.990Z

+

Case Description

Send invalid UTF-8 text message in fragments of 1 octet, resulting in frames ending on positions which are not code point ends.

MESSAGE:
cebae1bdb9cf83cebcceb5eda080656469746564

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=73&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 4xuJX8jGNvhZuuVsNHC2ng==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: iNDCF7oUpJ2qE+9W7ASm57ulNnE=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
212
32060
2061206
Total22268
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
020
11
Total21
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3733266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xce
+
003 TX OCTETS: 0101ce
+
004 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xba
+
005 TX OCTETS: 0001ba
+
006 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xe1
+
007 TX OCTETS: 0001e1
+
008 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xbd
+
009 TX OCTETS: 0001bd
+
010 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xb9
+
011 TX OCTETS: 0001b9
+
012 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xcf
+
013 TX OCTETS: 0001cf
+
014 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x83
+
015 TX OCTETS: 000183
+
016 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xce
+
017 TX OCTETS: 0001ce
+
018 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xbc
+
019 TX OCTETS: 0001bc
+
020 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xce
+
021 TX OCTETS: 0001ce
+
022 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xb5
+
023 TX OCTETS: 0001b5
+
024 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xed
+
025 TX OCTETS: 0001ed
+
026 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xa0
+
027 TX OCTETS: 0001a0
+
028 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x80
+
029 TX OCTETS: 000180
+
030 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               e
+
031 TX OCTETS: 000165
+
032 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               d
+
033 TX OCTETS: 000164
+
034 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               i
+
035 TX OCTETS: 000169
+
036 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               t
+
037 TX OCTETS: 000174
+
038 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               e
+
039 TX OCTETS: 000165
+
040 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               d
+
041 TX OCTETS: 000164
+
042 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
043 TX OCTETS: 8000
+
044 FAIL CONNECTION AFTER 1.000000 sec
+
045 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_3_2.json b/autobahn/client/tungstenite_case_6_3_2.json new file mode 100644 index 0000000..4381cb4 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_3_2.json @@ -0,0 +1,541 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 73, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send invalid UTF-8 text message in fragments of 1 octet, resulting in frames ending on positions which are not code point ends.

MESSAGE:
cebae1bdb9cf83cebcceb5eda080656469746564", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=73&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 4xuJX8jGNvhZuuVsNHC2ng==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: iNDCF7oUpJ2qE+9W7ASm57ulNnE=\r\n\r\n", + "id": "6.3.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:55.990Z", + "trafficStats": null, + "txFrameStats": { + "0": 20, + "1": 1 + }, + "txOctetStats": { + "2": 1, + "3": 20, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3733266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 1, + "0xce" + ], + 1, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0101ce" + ], + false + ], + [ + "TF", + [ + 1, + "0xba" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001ba" + ], + false + ], + [ + "TF", + [ + 1, + "0xe1" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001e1" + ], + false + ], + [ + "TF", + [ + 1, + "0xbd" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001bd" + ], + false + ], + [ + "TF", + [ + 1, + "0xb9" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001b9" + ], + false + ], + [ + "TF", + [ + 1, + "0xcf" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001cf" + ], + false + ], + [ + "TF", + [ + 1, + "0x83" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "000183" + ], + false + ], + [ + "TF", + [ + 1, + "0xce" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001ce" + ], + false + ], + [ + "TF", + [ + 1, + "0xbc" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001bc" + ], + false + ], + [ + "TF", + [ + 1, + "0xce" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001ce" + ], + false + ], + [ + "TF", + [ + 1, + "0xb5" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001b5" + ], + false + ], + [ + "TF", + [ + 1, + "0xed" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001ed" + ], + false + ], + [ + "TF", + [ + 1, + "0xa0" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "0001a0" + ], + false + ], + [ + "TF", + [ + 1, + "0x80" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "000180" + ], + false + ], + [ + "TF", + [ + 1, + "e" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "000165" + ], + false + ], + [ + "TF", + [ + 1, + "d" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "000164" + ], + false + ], + [ + "TF", + [ + 1, + "i" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "000169" + ], + false + ], + [ + "TF", + [ + 1, + "t" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "000174" + ], + false + ], + [ + "TF", + [ + 1, + "e" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "000165" + ], + false + ], + [ + "TF", + [ + 1, + "d" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "000164" + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 0, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8000" + ], + false + ], + [ + "KL", + 1 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_4_1.html b/autobahn/client/tungstenite_case_6_4_1.html new file mode 100644 index 0000000..e950ec1 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_4_1.html @@ -0,0 +1,302 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.4.1 : Pass - 1001 ms @ 2020-09-07T18:43:55.991Z

+

Case Description

Send invalid UTF-8 text message in 3 fragments (frames). +First frame payload is valid, then wait, then 2nd frame which contains the payload making the sequence invalid, then wait, then 3rd frame with rest. +Note that PART1 and PART3 are valid UTF-8 in themselves, PART2 is a 0x110000 encoded as in the UTF-8 integer encoding scheme, but the codepoint is invalid (out of range). +

MESSAGE PARTS:
+PART1 = cebae1bdb9cf83cebcceb5
+PART2 = f4908080
+PART3 = 656469746564
+

+

Case Expectation

The first frame is accepted, we expect to timeout on the first wait. The 2nd frame should be rejected immediately (fail fast on UTF-8). If we timeout, we expect the connection is failed at least then, since the complete message payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'NON-STRICT': [('timeout', 'A'), ('timeout', 'B')], 'OK': [('timeout', 'A')]}

+ Observed:
[('timeout', 'A')] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=74&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Jwx0+8UK6xcSFYeUVP5uaA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: qCYRLSl6YH5dw17X7aXK+znlIDQ=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
616
13113
2061206
Total3225
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
01
11
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3734266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=11, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               κόσμε
+
003 TX OCTETS: 010bcebae1bdb9cf83cebcceb5
+
004 DELAY 1.000000 sec for TAG A
+
005 DELAY TIMEOUT on TAG A
+
006 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xf4908080
+
007 TX OCTETS: 0004f4908080
+
008 DELAY 1.000000 sec for TAG B
+
009 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_4_1.json b/autobahn/client/tungstenite_case_6_4_1.json new file mode 100644 index 0000000..8e8a78c --- /dev/null +++ b/autobahn/client/tungstenite_case_6_4_1.json @@ -0,0 +1,153 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 74, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send invalid UTF-8 text message in 3 fragments (frames).\nFirst frame payload is valid, then wait, then 2nd frame which contains the payload making the sequence invalid, then wait, then 3rd frame with rest.\nNote that PART1 and PART3 are valid UTF-8 in themselves, PART2 is a 0x110000 encoded as in the UTF-8 integer encoding scheme, but the codepoint is invalid (out of range).\n

MESSAGE PARTS:
\nPART1 = cebae1bdb9cf83cebcceb5
\nPART2 = f4908080
\nPART3 = 656469746564
\n", + "droppedByMe": false, + "duration": 1001, + "expectation": "The first frame is accepted, we expect to timeout on the first wait. The 2nd frame should be rejected immediately (fail fast on UTF-8). If we timeout, we expect the connection is failed at least then, since the complete message payload is not valid UTF-8.", + "expected": { + "NON-STRICT": [ + [ + "timeout", + "A" + ], + [ + "timeout", + "B" + ] + ], + "OK": [ + [ + "timeout", + "A" + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=74&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Jwx0+8UK6xcSFYeUVP5uaA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: qCYRLSl6YH5dw17X7aXK+znlIDQ=\r\n\r\n", + "id": "6.4.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [ + [ + "timeout", + "A" + ] + ], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:55.991Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1 + }, + "txOctetStats": { + "6": 1, + "13": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3734266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 11, + "\u03ba\u1f79\u03c3\u03bc\u03b5" + ], + 1, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 13, + "010bcebae1bdb9cf83cebcceb5" + ], + false + ], + [ + "CT", + 1, + "A" + ], + [ + "CTE", + "A" + ], + [ + "TF", + [ + 4, + "0xf4908080" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "0004f4908080" + ], + false + ], + [ + "CT", + 1, + "B" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_4_2.html b/autobahn/client/tungstenite_case_6_4_2.html new file mode 100644 index 0000000..198e2fa --- /dev/null +++ b/autobahn/client/tungstenite_case_6_4_2.html @@ -0,0 +1,300 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.4.2 : Pass - 1002 ms @ 2020-09-07T18:43:56.992Z

+

Case Description

Same as Case 6.4.1, but in 2nd frame, we send only up to and including the octet making the complete payload invalid. +

MESSAGE PARTS:
+PART1 = cebae1bdb9cf83cebcceb5f4
+PART2 = 90
+PART3 = 8080656469746564
+

+

Case Expectation

The first frame is accepted, we expect to timeout on the first wait. The 2nd frame should be rejected immediately (fail fast on UTF-8). If we timeout, we expect the connection is failed at least then, since the complete message payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'NON-STRICT': [('timeout', 'A'), ('timeout', 'B')], 'OK': [('timeout', 'A')]}

+ Observed:
[('timeout', 'A')] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=75&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 6iPWKsp/pzORUbpiZBp8lg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: qID0/CtzzFDXDig9A6Xxx/RUdio=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
313
14114
2061206
Total3223
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
01
11
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3735266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=12, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xcebae1bdb9cf83cebcceb5f4
+
003 TX OCTETS: 010ccebae1bdb9cf83cebcceb5f4
+
004 DELAY 1.000000 sec for TAG A
+
005 DELAY TIMEOUT on TAG A
+
006 TX FRAME : OPCODE=0, FIN=False, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x90
+
007 TX OCTETS: 000190
+
008 DELAY 1.000000 sec for TAG B
+
009 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_4_2.json b/autobahn/client/tungstenite_case_6_4_2.json new file mode 100644 index 0000000..46056ea --- /dev/null +++ b/autobahn/client/tungstenite_case_6_4_2.json @@ -0,0 +1,153 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 75, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Same as Case 6.4.1, but in 2nd frame, we send only up to and including the octet making the complete payload invalid.\n

MESSAGE PARTS:
\nPART1 = cebae1bdb9cf83cebcceb5f4
\nPART2 = 90
\nPART3 = 8080656469746564
\n", + "droppedByMe": false, + "duration": 1002, + "expectation": "The first frame is accepted, we expect to timeout on the first wait. The 2nd frame should be rejected immediately (fail fast on UTF-8). If we timeout, we expect the connection is failed at least then, since the complete message payload is not valid UTF-8.", + "expected": { + "NON-STRICT": [ + [ + "timeout", + "A" + ], + [ + "timeout", + "B" + ] + ], + "OK": [ + [ + "timeout", + "A" + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=75&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 6iPWKsp/pzORUbpiZBp8lg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: qID0/CtzzFDXDig9A6Xxx/RUdio=\r\n\r\n", + "id": "6.4.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [ + [ + "timeout", + "A" + ] + ], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:56.992Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1 + }, + "txOctetStats": { + "3": 1, + "14": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3735266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 12, + "0xcebae1bdb9cf83cebcceb5f4" + ], + 1, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 14, + "010ccebae1bdb9cf83cebcceb5f4" + ], + false + ], + [ + "CT", + 1, + "A" + ], + [ + "CTE", + "A" + ], + [ + "TF", + [ + 1, + "0x90" + ], + 0, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "000190" + ], + false + ], + [ + "CT", + 1, + "B" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_4_3.html b/autobahn/client/tungstenite_case_6_4_3.html new file mode 100644 index 0000000..a6c53e1 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_4_3.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.4.3 : Non-Strict - 2003 ms @ 2020-09-07T18:43:57.995Z

+

Case Description

Same as Case 6.4.1, but we send message not in 3 frames, but in 3 chops of the same message frame. +

MESSAGE PARTS:
+PART1 = cebae1bdb9cf83cebcceb5
+PART2 = f4908080
+PART3 = 656469746564
+

+

Case Expectation

The first chop is accepted, we expect to timeout on the first wait. The 2nd chop should be rejected immediately (fail fast on UTF-8). If we timeout, we expect the connection is failed at least then, since the complete message payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'NON-STRICT': [('timeout', 'A'), ('timeout', 'B')], 'OK': [('timeout', 'A')]}

+ Observed:
[('timeout', 'A'), ('timeout', 'B')] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=76&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: St+Ldp27bTDsN1W/YPNtgw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: sNE7Jdbl7t4apPjtYYsM0NerDfc=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + + + + +
Chop SizeCountOctets
224
414
616
11111
2061206
Total6231
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
01
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3736266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX OCTETS: 0115
+
003 TX OCTETS: cebae1bdb9cf83cebcceb5
+
004 DELAY 1.000000 sec for TAG A
+
005 DELAY TIMEOUT on TAG A
+
006 TX OCTETS: f4908080
+
007 DELAY 1.000000 sec for TAG B
+
008 DELAY TIMEOUT on TAG B
+
009 TX OCTETS: 656469746564
+
010 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
011 TX OCTETS: 8000
+
012 FAIL CONNECTION AFTER 1.000000 sec
+
013 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_4_3.json b/autobahn/client/tungstenite_case_6_4_3.json new file mode 100644 index 0000000..bc88c3a --- /dev/null +++ b/autobahn/client/tungstenite_case_6_4_3.json @@ -0,0 +1,176 @@ +{ + "agent": "Tungstenite", + "behavior": "NON-STRICT", + "behaviorClose": "OK", + "case": 76, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Same as Case 6.4.1, but we send message not in 3 frames, but in 3 chops of the same message frame.\n

MESSAGE PARTS:
\nPART1 = cebae1bdb9cf83cebcceb5
\nPART2 = f4908080
\nPART3 = 656469746564
\n", + "droppedByMe": false, + "duration": 2003, + "expectation": "The first chop is accepted, we expect to timeout on the first wait. The 2nd chop should be rejected immediately (fail fast on UTF-8). If we timeout, we expect the connection is failed at least then, since the complete message payload is not valid UTF-8.", + "expected": { + "NON-STRICT": [ + [ + "timeout", + "A" + ], + [ + "timeout", + "B" + ] + ], + "OK": [ + [ + "timeout", + "A" + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=76&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: St+Ldp27bTDsN1W/YPNtgw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: sNE7Jdbl7t4apPjtYYsM0NerDfc=\r\n\r\n", + "id": "6.4.3", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [ + [ + "timeout", + "A" + ], + [ + "timeout", + "B" + ] + ], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:43:57.995Z", + "trafficStats": null, + "txFrameStats": { + "0": 1 + }, + "txOctetStats": { + "2": 2, + "4": 1, + "6": 1, + "11": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3736266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TO", + [ + 2, + "0115" + ], + false + ], + [ + "TO", + [ + 11, + "cebae1bdb9cf83cebcceb5" + ], + false + ], + [ + "CT", + 1, + "A" + ], + [ + "CTE", + "A" + ], + [ + "TO", + [ + 4, + "f4908080" + ], + false + ], + [ + "CT", + 1, + "B" + ], + [ + "CTE", + "B" + ], + [ + "TO", + [ + 6, + "656469746564" + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 0, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8000" + ], + false + ], + [ + "KL", + 1 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_4_4.html b/autobahn/client/tungstenite_case_6_4_4.html new file mode 100644 index 0000000..53ae9de --- /dev/null +++ b/autobahn/client/tungstenite_case_6_4_4.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.4.4 : Non-Strict - 2002 ms @ 2020-09-07T18:44:00.000Z

+

Case Description

Same as Case 6.4.2, but we send message not in 3 frames, but in 3 chops of the same message frame. +

MESSAGE PARTS:
+PART1 = cebae1bdb9cf83cebcceb5f4
+PART2 = 90
+PART3 =
+

+

Case Expectation

The first chop is accepted, we expect to timeout on the first wait. The 2nd chop should be rejected immediately (fail fast on UTF-8). If we timeout, we expect the connection is failed at least then, since the complete message payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'NON-STRICT': [('timeout', 'A'), ('timeout', 'B')], 'OK': [('timeout', 'A')]}

+ Observed:
[('timeout', 'A'), ('timeout', 'B')] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=77&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: WFtFwD6lQ5lqr5CqCdN9nA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: An5G3EsYm9D12iMdYi++wpr2oyw=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + + + + +
Chop SizeCountOctets
111
224
818
12112
2061206
Total6231
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
01
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3737266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX OCTETS: 0115
+
003 TX OCTETS: cebae1bdb9cf83cebcceb5f4
+
004 DELAY 1.000000 sec for TAG A
+
005 DELAY TIMEOUT on TAG A
+
006 TX OCTETS: 90
+
007 DELAY 1.000000 sec for TAG B
+
008 DELAY TIMEOUT on TAG B
+
009 TX OCTETS: 8080656469746564
+
010 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
011 TX OCTETS: 8000
+
012 FAIL CONNECTION AFTER 1.000000 sec
+
013 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_4_4.json b/autobahn/client/tungstenite_case_6_4_4.json new file mode 100644 index 0000000..2edec3b --- /dev/null +++ b/autobahn/client/tungstenite_case_6_4_4.json @@ -0,0 +1,176 @@ +{ + "agent": "Tungstenite", + "behavior": "NON-STRICT", + "behaviorClose": "OK", + "case": 77, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Same as Case 6.4.2, but we send message not in 3 frames, but in 3 chops of the same message frame.\n

MESSAGE PARTS:
\nPART1 = cebae1bdb9cf83cebcceb5f4
\nPART2 = 90
\nPART3 =
\n", + "droppedByMe": false, + "duration": 2002, + "expectation": "The first chop is accepted, we expect to timeout on the first wait. The 2nd chop should be rejected immediately (fail fast on UTF-8). If we timeout, we expect the connection is failed at least then, since the complete message payload is not valid UTF-8.", + "expected": { + "NON-STRICT": [ + [ + "timeout", + "A" + ], + [ + "timeout", + "B" + ] + ], + "OK": [ + [ + "timeout", + "A" + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=77&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: WFtFwD6lQ5lqr5CqCdN9nA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: An5G3EsYm9D12iMdYi++wpr2oyw=\r\n\r\n", + "id": "6.4.4", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [ + [ + "timeout", + "A" + ], + [ + "timeout", + "B" + ] + ], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:44:00.000Z", + "trafficStats": null, + "txFrameStats": { + "0": 1 + }, + "txOctetStats": { + "1": 1, + "2": 2, + "8": 1, + "12": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3737266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TO", + [ + 2, + "0115" + ], + false + ], + [ + "TO", + [ + 12, + "cebae1bdb9cf83cebcceb5f4" + ], + false + ], + [ + "CT", + 1, + "A" + ], + [ + "CTE", + "A" + ], + [ + "TO", + [ + 1, + "90" + ], + false + ], + [ + "CT", + 1, + "B" + ], + [ + "CTE", + "B" + ], + [ + "TO", + [ + 8, + "8080656469746564" + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 0, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8000" + ], + false + ], + [ + "KL", + 1 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_5_1.html b/autobahn/client/tungstenite_case_6_5_1.html new file mode 100644 index 0000000..61e246d --- /dev/null +++ b/autobahn/client/tungstenite_case_6_5_1.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.5.1 : Pass - 2 ms @ 2020-09-07T18:44:02.004Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0x68656c6c6f24776f726c64

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'hello$world', False)]}

+ Observed:
[('message', u'hello$world', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=78&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: WKClVq2RLlRwQTv3eqlIcA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Xh5nWObN3WcgI5G0zGxT6vAn6Vw=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
17117
2561256
Total3281
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
13113
2061206
Total3223
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3738266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=11, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               hello$world
+
003 TX OCTETS: 810b68656c6c6f24776f726c64
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 818b73883ccf1bed50a31cac4ba001e458
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=11, MASKED=True, MASK=3733383833636366
+
               hello$world
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882767895747590
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3736373839353734
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_5_1.json b/autobahn/client/tungstenite_case_6_5_1.json new file mode 100644 index 0000000..291db72 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_5_1.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 78, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0x68656c6c6f24776f726c64", + "droppedByMe": true, + "duration": 2, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "hello$world", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=78&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: WKClVq2RLlRwQTv3eqlIcA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Xh5nWObN3WcgI5G0zGxT6vAn6Vw=\r\n\r\n", + "id": "6.5.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "hello$world", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "17": 1, + "256": 1 + }, + "started": "2020-09-07T18:44:02.004Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "13": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3738266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 11, + "hello$world" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 13, + "810b68656c6c6f24776f726c64" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 17, + "818b73883ccf1bed50a31cac4ba001e458" + ] + ], + [ + "RF", + [ + 11, + "hello$world" + ], + 1, + true, + 0, + true, + "73883ccf" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882767895747590" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "76789574" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_5_2.html b/autobahn/client/tungstenite_case_6_5_2.html new file mode 100644 index 0000000..57fa992 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_5_2.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.5.2 : Pass - 2 ms @ 2020-09-07T18:44:02.008Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0x68656c6c6fc2a2776f726c64

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'hello\xa2world', False)]}

+ Observed:
[('message', u'hello\xa2world', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=79&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: EyjBE9fkrGnCIZvGtR0MAg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 73DX/xMYFgwsTUjjFD9fyKtuLDg=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
18118
2561256
Total3282
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
14114
2061206
Total3224
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3739266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=12, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               hello¢world
+
003 TX OCTETS: 810c68656c6c6fc2a2776f726c64
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 818cd8132928b0764544b7d18b5fb761454c
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=12, MASKED=True, MASK=6438313332393238
+
               hello¢world
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88829aeec2149906
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3961656563323134
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_5_2.json b/autobahn/client/tungstenite_case_6_5_2.json new file mode 100644 index 0000000..2313a3e --- /dev/null +++ b/autobahn/client/tungstenite_case_6_5_2.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 79, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0x68656c6c6fc2a2776f726c64", + "droppedByMe": true, + "duration": 2, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "hello\u00a2world", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=79&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: EyjBE9fkrGnCIZvGtR0MAg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 73DX/xMYFgwsTUjjFD9fyKtuLDg=\r\n\r\n", + "id": "6.5.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "hello\u00a2world", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "18": 1, + "256": 1 + }, + "started": "2020-09-07T18:44:02.008Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "14": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3739266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 12, + "hello\u00a2world" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 14, + "810c68656c6c6fc2a2776f726c64" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 18, + "818cd8132928b0764544b7d18b5fb761454c" + ] + ], + [ + "RF", + [ + 12, + "hello\u00a2world" + ], + 1, + true, + 0, + true, + "d8132928" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88829aeec2149906" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "9aeec214" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_5_3.html b/autobahn/client/tungstenite_case_6_5_3.html new file mode 100644 index 0000000..989044a --- /dev/null +++ b/autobahn/client/tungstenite_case_6_5_3.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.5.3 : Pass - 2 ms @ 2020-09-07T18:44:02.012Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0x68656c6c6fe282ac776f726c64

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'hello\u20acworld', False)]}

+ Observed:
[('message', u'hello\u20acworld', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=80&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: NOiHwNOGqNKBKEtSUCwLDQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: uOUNShgiU57eDIwKVAkSzfqkrrc=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
19119
2561256
Total3283
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
15115
2061206
Total3225
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3830266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               hello€world
+
003 TX OCTETS: 810d68656c6c6fe282ac776f726c64
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 818d090293e16167ff8d66e0114d7e6de18d6d
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=13, MASKED=True, MASK=3039303239336531
+
               hello€world
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882d8f8b353db10
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6438663862333533
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_5_3.json b/autobahn/client/tungstenite_case_6_5_3.json new file mode 100644 index 0000000..821cd73 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_5_3.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 80, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0x68656c6c6fe282ac776f726c64", + "droppedByMe": true, + "duration": 2, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "hello\u20acworld", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=80&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: NOiHwNOGqNKBKEtSUCwLDQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: uOUNShgiU57eDIwKVAkSzfqkrrc=\r\n\r\n", + "id": "6.5.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "hello\u20acworld", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "19": 1, + "256": 1 + }, + "started": "2020-09-07T18:44:02.012Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "15": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3830266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 13, + "hello\u20acworld" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 15, + "810d68656c6c6fe282ac776f726c64" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 19, + "818d090293e16167ff8d66e0114d7e6de18d6d" + ] + ], + [ + "RF", + [ + 13, + "hello\u20acworld" + ], + 1, + true, + 0, + true, + "090293e1" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882d8f8b353db10" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "d8f8b353" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_5_4.html b/autobahn/client/tungstenite_case_6_5_4.html new file mode 100644 index 0000000..010b95e --- /dev/null +++ b/autobahn/client/tungstenite_case_6_5_4.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.5.4 : Pass - 1 ms @ 2020-09-07T18:44:02.016Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0x68656c6c6ff0a4ada2776f726c64

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'hello\U00024b62world', False)]}

+ Observed:
[('message', u'hello\U00024b62world', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=81&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: pXeNrBwRdVUw1KPE7GQywQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: I5Ugw20pjb5KaJ5l+rNwPscjl6U=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
20120
2561256
Total3284
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
16116
2061206
Total3226
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3831266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=14, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               hello𤭢world
+
003 TX OCTETS: 810e68656c6c6ff0a4ada2776f726c64
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 818eca186b4aa27d0726a5e8cfe7686f0438a67c
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=14, MASKED=True, MASK=6361313836623461
+
               hello𤭢world
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882c4689346c780
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6334363839333436
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_5_4.json b/autobahn/client/tungstenite_case_6_5_4.json new file mode 100644 index 0000000..aa696e4 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_5_4.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 81, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0x68656c6c6ff0a4ada2776f726c64", + "droppedByMe": true, + "duration": 1, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "hello\ud852\udf62world", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=81&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: pXeNrBwRdVUw1KPE7GQywQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: I5Ugw20pjb5KaJ5l+rNwPscjl6U=\r\n\r\n", + "id": "6.5.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "hello\ud852\udf62world", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "20": 1, + "256": 1 + }, + "started": "2020-09-07T18:44:02.016Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "16": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3831266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 14, + "hello\ud852\udf62world" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 16, + "810e68656c6c6ff0a4ada2776f726c64" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 20, + "818eca186b4aa27d0726a5e8cfe7686f0438a67c" + ] + ], + [ + "RF", + [ + 14, + "hello\ud852\udf62world" + ], + 1, + true, + 0, + true, + "ca186b4a" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882c4689346c780" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "c4689346" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_5_5.html b/autobahn/client/tungstenite_case_6_5_5.html new file mode 100644 index 0000000..b691c77 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_5_5.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.5.5 : Pass - 1 ms @ 2020-09-07T18:44:02.018Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9cf83cebcceb5

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\u03ba\u1f79\u03c3\u03bc\u03b5', False)]}

+ Observed:
[('message', u'\u03ba\u1f79\u03c3\u03bc\u03b5', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=82&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ZX/uXdvxmecQpUPvJ/W6TQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: +Doyd3BgIOov9gdCtNsJygvDmUQ=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
17117
2561256
Total3281
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
13113
2061206
Total3223
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3832266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=11, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               κόσμε
+
003 TX OCTETS: 810bcebae1bdb9cf83cebcceb5
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 818be7f8d7c8294236755e3754065b3662
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=11, MASKED=True, MASK=6537663864376338
+
               κόσμε
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88823fcc94ed3c24
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3366636339346564
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_5_5.json b/autobahn/client/tungstenite_case_6_5_5.json new file mode 100644 index 0000000..b6e6599 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_5_5.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 82, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9cf83cebcceb5", + "droppedByMe": true, + "duration": 1, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\u03ba\u1f79\u03c3\u03bc\u03b5", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=82&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ZX/uXdvxmecQpUPvJ/W6TQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: +Doyd3BgIOov9gdCtNsJygvDmUQ=\r\n\r\n", + "id": "6.5.5", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\u03ba\u1f79\u03c3\u03bc\u03b5", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "17": 1, + "256": 1 + }, + "started": "2020-09-07T18:44:02.018Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "13": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3832266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 11, + "\u03ba\u1f79\u03c3\u03bc\u03b5" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 13, + "810bcebae1bdb9cf83cebcceb5" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 17, + "818be7f8d7c8294236755e3754065b3662" + ] + ], + [ + "RF", + [ + 11, + "\u03ba\u1f79\u03c3\u03bc\u03b5" + ], + 1, + true, + 0, + true, + "e7f8d7c8" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88823fcc94ed3c24" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "3fcc94ed" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_6_1.html b/autobahn/client/tungstenite_case_6_6_1.html new file mode 100644 index 0000000..787109c --- /dev/null +++ b/autobahn/client/tungstenite_case_6_6_1.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.6.1 : Pass - 0 ms @ 2020-09-07T18:44:02.019Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xce

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=83&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: eT8pO4sbCsDSJ5yj8y18pw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: kF/8NSRuTycl8/c/gxkxXYcWzsE=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
313
2061206
Total2209
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3833266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xce
+
003 TX OCTETS: 8101ce
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_6_1.json b/autobahn/client/tungstenite_case_6_6_1.json new file mode 100644 index 0000000..24ab0c7 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_6_1.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 83, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xce", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=83&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: eT8pO4sbCsDSJ5yj8y18pw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: kF/8NSRuTycl8/c/gxkxXYcWzsE=\r\n\r\n", + "id": "6.6.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:44:02.019Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "3": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3833266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 1, + "0xce" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "8101ce" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_6_10.html b/autobahn/client/tungstenite_case_6_6_10.html new file mode 100644 index 0000000..41e89f9 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_6_10.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.6.10 : Pass - 0 ms @ 2020-09-07T18:44:02.026Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9cf83cebcce

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=92&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: CQtzAugyrb/pPGElA1k99A==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: maUwokJ4DRTBsg9FxFj8z6yBCOw=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
12112
2061206
Total2218
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3932266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=10, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xcebae1bdb9cf83cebcce
+
003 TX OCTETS: 810acebae1bdb9cf83cebcce
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_6_10.json b/autobahn/client/tungstenite_case_6_6_10.json new file mode 100644 index 0000000..a97d7c6 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_6_10.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 92, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9cf83cebcce", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=92&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: CQtzAugyrb/pPGElA1k99A==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: maUwokJ4DRTBsg9FxFj8z6yBCOw=\r\n\r\n", + "id": "6.6.10", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:44:02.026Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "12": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3932266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 10, + "0xcebae1bdb9cf83cebcce" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 12, + "810acebae1bdb9cf83cebcce" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_6_11.html b/autobahn/client/tungstenite_case_6_6_11.html new file mode 100644 index 0000000..70df87f --- /dev/null +++ b/autobahn/client/tungstenite_case_6_6_11.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.6.11 : Pass - 0 ms @ 2020-09-07T18:44:02.026Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9cf83cebcceb5

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\u03ba\u1f79\u03c3\u03bc\u03b5', False)]}

+ Observed:
[('message', u'\u03ba\u1f79\u03c3\u03bc\u03b5', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=93&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: cxg0BOZhNzrgIPqoFQVnJg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: BDyL94KVvHsWdAVOkph6Uz/DrHc=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
17117
2561256
Total3281
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
13113
2061206
Total3223
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3933266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=11, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               κόσμε
+
003 TX OCTETS: 810bcebae1bdb9cf83cebcceb5
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 818b076c4f59c9d6aee4bea3cc97bba2fa
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=11, MASKED=True, MASK=3037366334663539
+
               κόσμε
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88822acc0af92924
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3261636330616639
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_6_11.json b/autobahn/client/tungstenite_case_6_6_11.json new file mode 100644 index 0000000..7624f2e --- /dev/null +++ b/autobahn/client/tungstenite_case_6_6_11.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 93, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9cf83cebcceb5", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\u03ba\u1f79\u03c3\u03bc\u03b5", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=93&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: cxg0BOZhNzrgIPqoFQVnJg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: BDyL94KVvHsWdAVOkph6Uz/DrHc=\r\n\r\n", + "id": "6.6.11", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\u03ba\u1f79\u03c3\u03bc\u03b5", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "17": 1, + "256": 1 + }, + "started": "2020-09-07T18:44:02.026Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "13": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3933266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 11, + "\u03ba\u1f79\u03c3\u03bc\u03b5" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 13, + "810bcebae1bdb9cf83cebcceb5" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 17, + "818b076c4f59c9d6aee4bea3cc97bba2fa" + ] + ], + [ + "RF", + [ + 11, + "\u03ba\u1f79\u03c3\u03bc\u03b5" + ], + 1, + true, + 0, + true, + "076c4f59" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88822acc0af92924" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "2acc0af9" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_6_2.html b/autobahn/client/tungstenite_case_6_6_2.html new file mode 100644 index 0000000..93c7280 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_6_2.html @@ -0,0 +1,301 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.6.2 : Pass - 1 ms @ 2020-09-07T18:44:02.019Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xceba

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\u03ba', False)]}

+ Observed:
[('message', u'\u03ba', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=84&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: J4RfyUb/ZdiudInUsH3oxA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: kMWBg9BrSnOpusULmWG1OYHIyaA=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
8216
2561256
Total3272
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
428
2061206
Total3214
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3834266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               κ
+
003 TX OCTETS: 8102ceba
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8182dba2314c1518
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6462613233313463
+
               κ
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88823cd93d2f3f31
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3363643933643266
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_6_2.json b/autobahn/client/tungstenite_case_6_6_2.json new file mode 100644 index 0000000..6072912 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_6_2.json @@ -0,0 +1,175 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 84, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xceba", + "droppedByMe": true, + "duration": 1, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\u03ba", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=84&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: J4RfyUb/ZdiudInUsH3oxA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: kMWBg9BrSnOpusULmWG1OYHIyaA=\r\n\r\n", + "id": "6.6.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\u03ba", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 2, + "256": 1 + }, + "started": "2020-09-07T18:44:02.019Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 2, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3834266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "\u03ba" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "8102ceba" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 8, + "8182dba2314c1518" + ] + ], + [ + "RF", + [ + 2, + "\u03ba" + ], + 1, + true, + 0, + true, + "dba2314c" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88823cd93d2f3f31" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "3cd93d2f" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_6_3.html b/autobahn/client/tungstenite_case_6_6_3.html new file mode 100644 index 0000000..3754a31 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_6_3.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.6.3 : Pass - 0 ms @ 2020-09-07T18:44:02.020Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xcebae1

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=85&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: /JPw0G9tlThpjTmyXbk4Aw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 9SVI7kqbokvFFkyTp0lb/7/G9T0=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
515
2061206
Total2211
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3835266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xcebae1
+
003 TX OCTETS: 8103cebae1
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_6_3.json b/autobahn/client/tungstenite_case_6_6_3.json new file mode 100644 index 0000000..b3e3505 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_6_3.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 85, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xcebae1", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=85&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: /JPw0G9tlThpjTmyXbk4Aw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 9SVI7kqbokvFFkyTp0lb/7/G9T0=\r\n\r\n", + "id": "6.6.3", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:44:02.020Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "5": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3835266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "0xcebae1" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103cebae1" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_6_4.html b/autobahn/client/tungstenite_case_6_6_4.html new file mode 100644 index 0000000..5f7231c --- /dev/null +++ b/autobahn/client/tungstenite_case_6_6_4.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.6.4 : Pass - 0 ms @ 2020-09-07T18:44:02.021Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xcebae1bd

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=86&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 6bcj4x7nBho0ndyY8shyPw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: ma/YApKKoNa4NQpomj1lOCkNV8A=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
616
2061206
Total2212
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3836266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xcebae1bd
+
003 TX OCTETS: 8104cebae1bd
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_6_4.json b/autobahn/client/tungstenite_case_6_6_4.json new file mode 100644 index 0000000..376ecbe --- /dev/null +++ b/autobahn/client/tungstenite_case_6_6_4.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 86, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xcebae1bd", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=86&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 6bcj4x7nBho0ndyY8shyPw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: ma/YApKKoNa4NQpomj1lOCkNV8A=\r\n\r\n", + "id": "6.6.4", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:44:02.021Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "6": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3836266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "0xcebae1bd" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104cebae1bd" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_6_5.html b/autobahn/client/tungstenite_case_6_6_5.html new file mode 100644 index 0000000..c2a4ffd --- /dev/null +++ b/autobahn/client/tungstenite_case_6_6_5.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.6.5 : Pass - 0 ms @ 2020-09-07T18:44:02.022Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\u03ba\u1f79', False)]}

+ Observed:
[('message', u'\u03ba\u1f79', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=87&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: xfRl0jCCx5Y9JIszC2TeIQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: N+cRJFy9c65Zz3VC3puGO0EqrAQ=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
11111
2561256
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
717
2061206
Total3217
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3837266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=5, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               κό
+
003 TX OCTETS: 8105cebae1bdb9
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 818528b7910ee60d70b391
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=5, MASKED=True, MASK=3238623739313065
+
               κό
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882915cc6fa92b4
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3931356363366661
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_6_5.json b/autobahn/client/tungstenite_case_6_6_5.json new file mode 100644 index 0000000..898b377 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_6_5.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 87, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\u03ba\u1f79", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=87&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: xfRl0jCCx5Y9JIszC2TeIQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: N+cRJFy9c65Zz3VC3puGO0EqrAQ=\r\n\r\n", + "id": "6.6.5", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\u03ba\u1f79", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "11": 1, + "256": 1 + }, + "started": "2020-09-07T18:44:02.022Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "7": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3837266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 5, + "\u03ba\u1f79" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 7, + "8105cebae1bdb9" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 11, + "818528b7910ee60d70b391" + ] + ], + [ + "RF", + [ + 5, + "\u03ba\u1f79" + ], + 1, + true, + 0, + true, + "28b7910e" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882915cc6fa92b4" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "915cc6fa" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_6_6.html b/autobahn/client/tungstenite_case_6_6_6.html new file mode 100644 index 0000000..321ff94 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_6_6.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.6.6 : Pass - 0 ms @ 2020-09-07T18:44:02.022Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9cf

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=88&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: leq7SoaCYuwojYEmLXQe7A==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Mx8LOlJd1MsMH2WVmOykypPX9gg=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2061206
Total2214
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3838266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=6, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xcebae1bdb9cf
+
003 TX OCTETS: 8106cebae1bdb9cf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_6_6.json b/autobahn/client/tungstenite_case_6_6_6.json new file mode 100644 index 0000000..773934f --- /dev/null +++ b/autobahn/client/tungstenite_case_6_6_6.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 88, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9cf", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=88&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: leq7SoaCYuwojYEmLXQe7A==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Mx8LOlJd1MsMH2WVmOykypPX9gg=\r\n\r\n", + "id": "6.6.6", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:44:02.022Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "8": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3838266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 6, + "0xcebae1bdb9cf" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 8, + "8106cebae1bdb9cf" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_6_7.html b/autobahn/client/tungstenite_case_6_6_7.html new file mode 100644 index 0000000..77c7d9f --- /dev/null +++ b/autobahn/client/tungstenite_case_6_6_7.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.6.7 : Pass - 1 ms @ 2020-09-07T18:44:02.023Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9cf83

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\u03ba\u1f79\u03c3', False)]}

+ Observed:
[('message', u'\u03ba\u1f79\u03c3', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=89&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: p6kRtaf7pAHd0Uee7wYzmg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: N11X0DMAI0coYtqxSKSUEe0h40w=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
13113
2561256
Total3277
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
919
2061206
Total3219
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3839266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=7, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               κόσ
+
003 TX OCTETS: 8107cebae1bdb9cf83
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8187bfb841817102a03c0677c2
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=7, MASKED=True, MASK=6266623834313831
+
               κόσ
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882d0c2bf17d32a
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6430633262663137
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_6_7.json b/autobahn/client/tungstenite_case_6_6_7.json new file mode 100644 index 0000000..0d55b61 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_6_7.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 89, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9cf83", + "droppedByMe": true, + "duration": 1, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\u03ba\u1f79\u03c3", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=89&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: p6kRtaf7pAHd0Uee7wYzmg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: N11X0DMAI0coYtqxSKSUEe0h40w=\r\n\r\n", + "id": "6.6.7", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\u03ba\u1f79\u03c3", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "13": 1, + "256": 1 + }, + "started": "2020-09-07T18:44:02.023Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "9": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3839266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 7, + "\u03ba\u1f79\u03c3" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 9, + "8107cebae1bdb9cf83" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 13, + "8187bfb841817102a03c0677c2" + ] + ], + [ + "RF", + [ + 7, + "\u03ba\u1f79\u03c3" + ], + 1, + true, + 0, + true, + "bfb84181" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882d0c2bf17d32a" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "d0c2bf17" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_6_8.html b/autobahn/client/tungstenite_case_6_6_8.html new file mode 100644 index 0000000..5645f2a --- /dev/null +++ b/autobahn/client/tungstenite_case_6_6_8.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.6.8 : Pass - 0 ms @ 2020-09-07T18:44:02.024Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9cf83ce

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=90&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: OgF4M2jt6vhNqrpFmpGmCw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: u11yZCZjCYZ4BwcAWVBWaZnuZDQ=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
10110
2061206
Total2216
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3930266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=8, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xcebae1bdb9cf83ce
+
003 TX OCTETS: 8108cebae1bdb9cf83ce
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_6_8.json b/autobahn/client/tungstenite_case_6_6_8.json new file mode 100644 index 0000000..d56082d --- /dev/null +++ b/autobahn/client/tungstenite_case_6_6_8.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 90, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9cf83ce", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=90&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: OgF4M2jt6vhNqrpFmpGmCw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: u11yZCZjCYZ4BwcAWVBWaZnuZDQ=\r\n\r\n", + "id": "6.6.8", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:44:02.024Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "10": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3930266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 8, + "0xcebae1bdb9cf83ce" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 10, + "8108cebae1bdb9cf83ce" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_6_9.html b/autobahn/client/tungstenite_case_6_6_9.html new file mode 100644 index 0000000..90c9e91 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_6_9.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.6.9 : Pass - 0 ms @ 2020-09-07T18:44:02.025Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9cf83cebc

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\u03ba\u1f79\u03c3\u03bc', False)]}

+ Observed:
[('message', u'\u03ba\u1f79\u03c3\u03bc', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=91&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: MhwGe/X42779EV0vsAhngg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: uRMWEbQ6zVI6vWXQaqy7bSAFbJY=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
15115
2561256
Total3279
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
11111
2061206
Total3221
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3931266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               κόσμ
+
003 TX OCTETS: 8109cebae1bdb9cf83cebc
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 81895a1bbe3d94a15f80e3d43df3e6
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=9, MASKED=True, MASK=3561316262653364
+
               κόσμ
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 888215c7f332162f
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3135633766333332
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_6_9.json b/autobahn/client/tungstenite_case_6_6_9.json new file mode 100644 index 0000000..40e1328 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_6_9.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 91, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xcebae1bdb9cf83cebc", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\u03ba\u1f79\u03c3\u03bc", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=91&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: MhwGe/X42779EV0vsAhngg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: uRMWEbQ6zVI6vWXQaqy7bSAFbJY=\r\n\r\n", + "id": "6.6.9", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\u03ba\u1f79\u03c3\u03bc", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "15": 1, + "256": 1 + }, + "started": "2020-09-07T18:44:02.025Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "11": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3931266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 9, + "\u03ba\u1f79\u03c3\u03bc" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "8109cebae1bdb9cf83cebc" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 15, + "81895a1bbe3d94a15f80e3d43df3e6" + ] + ], + [ + "RF", + [ + 9, + "\u03ba\u1f79\u03c3\u03bc" + ], + 1, + true, + 0, + true, + "5a1bbe3d" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888215c7f332162f" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "15c7f332" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_7_1.html b/autobahn/client/tungstenite_case_6_7_1.html new file mode 100644 index 0000000..00f7203 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_7_1.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.7.1 : Pass - 0 ms @ 2020-09-07T18:44:02.027Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0x00

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\x00', False)]}

+ Observed:
[('message', u'\x00', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=94&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: nuEg/fc6T8fdkLxvdvNsEQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: A+inX74I3l7dqUViMhXD7p2U0Ek=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
717
818
2561256
Total3271
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
313
414
2061206
Total3213
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3934266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               
+
003 TX OCTETS: 810100
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8181c1cc6912c1
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=1, MASKED=True, MASK=6331636336393132
+
               
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 888231dccc753234
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3331646363633735
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_7_1.json b/autobahn/client/tungstenite_case_6_7_1.json new file mode 100644 index 0000000..875f2a2 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_7_1.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 94, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0x00", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\u0000", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=94&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: nuEg/fc6T8fdkLxvdvNsEQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: A+inX74I3l7dqUViMhXD7p2U0Ek=\r\n\r\n", + "id": "6.7.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\u0000", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "7": 1, + "8": 1, + "256": 1 + }, + "started": "2020-09-07T18:44:02.027Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "3": 1, + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3934266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 1, + "\u0000" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "810100" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 7, + "8181c1cc6912c1" + ] + ], + [ + "RF", + [ + 1, + "\u0000" + ], + 1, + true, + 0, + true, + "c1cc6912" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888231dccc753234" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "31dccc75" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_7_2.html b/autobahn/client/tungstenite_case_6_7_2.html new file mode 100644 index 0000000..9865b02 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_7_2.html @@ -0,0 +1,301 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.7.2 : Pass - 0 ms @ 2020-09-07T18:44:02.028Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xc280

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\x80', False)]}

+ Observed:
[('message', u'\x80', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=95&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: brKJxaXmVCXYTAdYZQcX/g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 0vvNzd8pp5FILTx7CKYlYv9PuzY=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
8216
2561256
Total3272
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
428
2061206
Total3214
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3935266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               €
+
003 TX OCTETS: 8102c280
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 818279d22921bb52
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3739643232393231
+
               €
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88822aa27de9294a
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3261613237646539
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_7_2.json b/autobahn/client/tungstenite_case_6_7_2.json new file mode 100644 index 0000000..1700ccb --- /dev/null +++ b/autobahn/client/tungstenite_case_6_7_2.json @@ -0,0 +1,175 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 95, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xc280", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\u0080", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=95&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: brKJxaXmVCXYTAdYZQcX/g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 0vvNzd8pp5FILTx7CKYlYv9PuzY=\r\n\r\n", + "id": "6.7.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\u0080", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 2, + "256": 1 + }, + "started": "2020-09-07T18:44:02.028Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 2, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3935266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "\u0080" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "8102c280" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 8, + "818279d22921bb52" + ] + ], + [ + "RF", + [ + 2, + "\u0080" + ], + 1, + true, + 0, + true, + "79d22921" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88822aa27de9294a" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "2aa27de9" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_7_3.html b/autobahn/client/tungstenite_case_6_7_3.html new file mode 100644 index 0000000..346fbd1 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_7_3.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.7.3 : Pass - 0 ms @ 2020-09-07T18:44:02.028Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xe0a080

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\u0800', False)]}

+ Observed:
[('message', u'\u0800', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=96&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: J9uYK/HjMhkDqrfcqZ/7EA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: DB3Ebsk0AOH+DW55PS/MyMyFJkA=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
919
2561256
Total3273
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
515
2061206
Total3215
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3936266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               à €
+
003 TX OCTETS: 8103e0a080
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 818332fa16f7d25a96
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASKED=True, MASK=3332666131366637
+
               à €
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882675fd63364b7
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3637356664363333
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_7_3.json b/autobahn/client/tungstenite_case_6_7_3.json new file mode 100644 index 0000000..bbcbe30 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_7_3.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 96, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xe0a080", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\u0800", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=96&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: J9uYK/HjMhkDqrfcqZ/7EA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: DB3Ebsk0AOH+DW55PS/MyMyFJkA=\r\n\r\n", + "id": "6.7.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\u0800", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "9": 1, + "256": 1 + }, + "started": "2020-09-07T18:44:02.028Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "5": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3936266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "\u0800" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103e0a080" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 9, + "818332fa16f7d25a96" + ] + ], + [ + "RF", + [ + 3, + "\u0800" + ], + 1, + true, + 0, + true, + "32fa16f7" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882675fd63364b7" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "675fd633" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_7_4.html b/autobahn/client/tungstenite_case_6_7_4.html new file mode 100644 index 0000000..a240ae3 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_7_4.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.7.4 : Pass - 0 ms @ 2020-09-07T18:44:02.029Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf0908080

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U00010000', False)]}

+ Observed:
[('message', u'\U00010000', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=97&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 8FUDGvzzfS231xattmRh6A==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: UXpYipfaREo0dCkdxFTvaXsxI2U=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2561256
Total3274
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3937266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ð€€
+
003 TX OCTETS: 8104f0908080
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8184d2344dfc22a4cd7c
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=6432333434646663
+
               ð€€
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 8882e27941b4e191
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6532373934316234
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_7_4.json b/autobahn/client/tungstenite_case_6_7_4.json new file mode 100644 index 0000000..94efcd0 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_7_4.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 97, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf0908080", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\ud800\udc00", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=97&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 8FUDGvzzfS231xattmRh6A==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: UXpYipfaREo0dCkdxFTvaXsxI2U=\r\n\r\n", + "id": "6.7.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\ud800\udc00", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "256": 1 + }, + "started": "2020-09-07T18:44:02.029Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3937266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\ud800\udc00" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f0908080" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "8184d2344dfc22a4cd7c" + ] + ], + [ + "RF", + [ + 4, + "\ud800\udc00" + ], + 1, + true, + 0, + true, + "d2344dfc" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882e27941b4e191" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "e27941b4" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_8_1.html b/autobahn/client/tungstenite_case_6_8_1.html new file mode 100644 index 0000000..4323606 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_8_1.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.8.1 : Pass - 0 ms @ 2020-09-07T18:44:02.030Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf888808080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=98&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: OVD6l11t7UWNT+RlQTPurg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: TuEsDEZHFrHTWKNGFwlm4W0LS8I=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
717
2061206
Total2213
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3938266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=5, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xf888808080
+
003 TX OCTETS: 8105f888808080
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_8_1.json b/autobahn/client/tungstenite_case_6_8_1.json new file mode 100644 index 0000000..768b7f2 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_8_1.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 98, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xf888808080", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=98&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: OVD6l11t7UWNT+RlQTPurg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: TuEsDEZHFrHTWKNGFwlm4W0LS8I=\r\n\r\n", + "id": "6.8.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:44:02.030Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "7": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3938266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 5, + "0xf888808080" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 7, + "8105f888808080" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_8_2.html b/autobahn/client/tungstenite_case_6_8_2.html new file mode 100644 index 0000000..07f3942 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_8_2.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.8.2 : Pass - 0 ms @ 2020-09-07T18:44:02.030Z

+

Case Description

Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfc8480808080

+

Case Expectation

The connection is failed immediately, since the payload is not valid UTF-8.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=99&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: SA961iWXKQfN5yNdtJTaIA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: fhwYJdEjDDssprTkGbV31KdpV/U=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeFalseTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2561256
Total1256
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2061206
Total2214
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
11
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d3939266167656e743d54756e677374656e69746520485454502f312e310d0a48
+
               6f73743a206c6f63616c686f7374 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=6, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xfc8480808080
+
003 TX OCTETS: 8106fc8480808080
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_8_2.json b/autobahn/client/tungstenite_case_6_8_2.json new file mode 100644 index 0000000..2671e47 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_8_2.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 99, + "closedByMe": false, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is not valid UTF-8 in one fragment.

Payload: 0xfc8480808080", + "droppedByMe": false, + "duration": 0, + "expectation": "The connection is failed immediately, since the payload is not valid UTF-8.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1007 + ], + "closedByMe": false, + "closedByWrongEndpointIsFatal": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=99&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: SA961iWXKQfN5yNdtJTaIA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: fhwYJdEjDDssprTkGbV31KdpV/U=\r\n\r\n", + "id": "6.8.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "256": 1 + }, + "started": "2020-09-07T18:44:02.030Z", + "trafficStats": null, + "txFrameStats": { + "1": 1 + }, + "txOctetStats": { + "8": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 256, + "474554202f72756e436173653f636173653d3939266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f7374 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 6, + "0xfc8480808080" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 8, + "8106fc8480808080" + ], + false + ], + [ + "KL", + 0.5 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_9_1.html b/autobahn/client/tungstenite_case_6_9_1.html new file mode 100644 index 0000000..51f7019 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_9_1.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.9.1 : Pass - 0 ms @ 2020-09-07T18:44:02.031Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0x7f

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\x7f', False)]}

+ Observed:
[('message', u'\x7f', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=100&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: aEyQZKOqfeNeD96GxYM/IQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: omVSaUp0no8gJdCLudkjCeG0PNE=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
717
818
2571257
Total3272
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
313
414
2061206
Total3213
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313030266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               
+
003 TX OCTETS: 81017f
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8181a4e990bedb
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=1, MASKED=True, MASK=6134653939306265
+
               
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88822221a67c21c9
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3232323161363763
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_9_1.json b/autobahn/client/tungstenite_case_6_9_1.json new file mode 100644 index 0000000..3f140a7 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_9_1.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 100, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0x7f", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\u007f", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=100&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: aEyQZKOqfeNeD96GxYM/IQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: omVSaUp0no8gJdCLudkjCeG0PNE=\r\n\r\n", + "id": "6.9.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\u007f", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "7": 1, + "8": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.031Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "3": 1, + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313030266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 1, + "\u007f" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "81017f" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 7, + "8181a4e990bedb" + ] + ], + [ + "RF", + [ + 1, + "\u007f" + ], + 1, + true, + 0, + true, + "a4e990be" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88822221a67c21c9" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "2221a67c" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_9_2.html b/autobahn/client/tungstenite_case_6_9_2.html new file mode 100644 index 0000000..ef2802c --- /dev/null +++ b/autobahn/client/tungstenite_case_6_9_2.html @@ -0,0 +1,301 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.9.2 : Pass - 0 ms @ 2020-09-07T18:44:02.032Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xdfbf

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\u07ff', False)]}

+ Observed:
[('message', u'\u07ff', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=101&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: NxRI8ONmlOSJz8D3rWQLuA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Z5szOwDIa3xa9YgEsouZAd99rE8=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
8216
2571257
Total3273
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
428
2061206
Total3214
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313031266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ß¿
+
003 TX OCTETS: 8102dfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 81827d9870e1a227
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3764393837306531
+
               ß¿
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88820e0044880de8
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3065303034343838
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_9_2.json b/autobahn/client/tungstenite_case_6_9_2.json new file mode 100644 index 0000000..49b06d4 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_9_2.json @@ -0,0 +1,175 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 101, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xdfbf", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\u07ff", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=101&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: NxRI8ONmlOSJz8D3rWQLuA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Z5szOwDIa3xa9YgEsouZAd99rE8=\r\n\r\n", + "id": "6.9.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\u07ff", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 2, + "257": 1 + }, + "started": "2020-09-07T18:44:02.032Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 2, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313031266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "\u07ff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "8102dfbf" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 8, + "81827d9870e1a227" + ] + ], + [ + "RF", + [ + 2, + "\u07ff" + ], + 1, + true, + 0, + true, + "7d9870e1" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88820e0044880de8" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "0e004488" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_9_3.html b/autobahn/client/tungstenite_case_6_9_3.html new file mode 100644 index 0000000..c34e9d9 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_9_3.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.9.3 : Pass - 0 ms @ 2020-09-07T18:44:02.032Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbf

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\uffff', False)]}

+ Observed:
[('message', u'\uffff', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=102&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: JYTvD0stJ68ivkLfoIQMjw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: icOtQsHHhHPAUHvkGlRW48meLhU=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
919
2571257
Total3274
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
515
2061206
Total3215
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313032266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ï¿¿
+
003 TX OCTETS: 8103efbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 81833fea0fefd055b0
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=3, MASKED=True, MASK=3366656130666566
+
               ï¿¿
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88829d682b9f9e80
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3964363832623966
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_9_3.json b/autobahn/client/tungstenite_case_6_9_3.json new file mode 100644 index 0000000..652b4ce --- /dev/null +++ b/autobahn/client/tungstenite_case_6_9_3.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 102, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xefbfbf", + "droppedByMe": true, + "duration": 0, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\uffff", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=102&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: JYTvD0stJ68ivkLfoIQMjw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: icOtQsHHhHPAUHvkGlRW48meLhU=\r\n\r\n", + "id": "6.9.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\uffff", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "9": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.032Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "5": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313032266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 3, + "\uffff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 5, + "8103efbfbf" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 9, + "81833fea0fefd055b0" + ] + ], + [ + "RF", + [ + 3, + "\uffff" + ], + 1, + true, + 0, + true, + "3fea0fef" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88829d682b9f9e80" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "9d682b9f" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_6_9_4.html b/autobahn/client/tungstenite_case_6_9_4.html new file mode 100644 index 0000000..a44a97f --- /dev/null +++ b/autobahn/client/tungstenite_case_6_9_4.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 6.9.4 : Pass - 1 ms @ 2020-09-07T18:44:02.033Z

+

Case Description

Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf48fbfbf

+

Case Expectation

The message is echo'ed back to us.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'\U0010ffff', False)]}

+ Observed:
[('message', u'\U0010ffff', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=103&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Pg9ooCMjtBsLr9HhP56QdQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: S0H/Pjb6URDUPWXe4HH7b58BDK8=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
10110
2571257
Total3275
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
616
2061206
Total3216
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d313033266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               ô¿¿
+
003 TX OCTETS: 8104f48fbfbf
+
004 FAIL CONNECTION AFTER 0.500000 sec
+
005 RX OCTETS: 8184b825ccb04caa730f
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=4, MASKED=True, MASK=6238323563636230
+
               ô¿¿
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88821ab46037195c
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3161623436303337
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_6_9_4.json b/autobahn/client/tungstenite_case_6_9_4.json new file mode 100644 index 0000000..7017ba8 --- /dev/null +++ b/autobahn/client/tungstenite_case_6_9_4.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 103, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a text message with payload which is valid UTF-8 in one fragment.

Payload: 0xf48fbfbf", + "droppedByMe": true, + "duration": 1, + "expectation": "The message is echo'ed back to us.", + "expected": { + "OK": [ + [ + "message", + "\udbff\udfff", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=103&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Pg9ooCMjtBsLr9HhP56QdQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: S0H/Pjb6URDUPWXe4HH7b58BDK8=\r\n\r\n", + "id": "6.9.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "\udbff\udfff", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "10": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.033Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "6": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d313033266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 4, + "\udbff\udfff" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 6, + "8104f48fbfbf" + ], + false + ], + [ + "KL", + 0.5 + ], + [ + "RO", + [ + 10, + "8184b825ccb04caa730f" + ] + ], + [ + "RF", + [ + 4, + "\udbff\udfff" + ], + 1, + true, + 0, + true, + "b825ccb0" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88821ab46037195c" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "1ab46037" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_13_1.html b/autobahn/client/tungstenite_case_7_13_1.html new file mode 100644 index 0000000..95b91c7 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_13_1.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.13.1 : Informational - 0 ms @ 2020-09-07T18:44:02.141Z

+

Case Description

Send close with close code 5000

+

Case Expectation

Actual events are undefined by the spec.

+ +

+ Case Outcome

Actual events are undefined by the spec.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (INFORMATIONAL)

+

+

Opening Handshake

+
GET /runCase?case=245&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: inE43DmHvIJhYQw5RA5qUg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: hmbrTyhXQCBTMQ5aM5xkuZI690c=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode5000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1002The close code the peer sent me in close frame (if any).
remoteCloseReasonProtocol violationThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
26126
2571257
Total2283
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323435266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x1388
+
003 TX OCTETS: 88021388
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 8894f930d010fada80629644bf73965cf066905fbc718d59bf7e
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=20, MASKED=True, MASK=6639333064303130
+
               0x03ea50726f746f636f6c2076696f6c6174696f6e
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_13_1.json b/autobahn/client/tungstenite_case_7_13_1.json new file mode 100644 index 0000000..2a6d1ec --- /dev/null +++ b/autobahn/client/tungstenite_case_7_13_1.json @@ -0,0 +1,122 @@ +{ + "agent": "Tungstenite", + "behavior": "INFORMATIONAL", + "behaviorClose": "INFORMATIONAL", + "case": 245, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with close code 5000", + "droppedByMe": true, + "duration": 0, + "expectation": "Actual events are undefined by the spec.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000, + 5000, + 1002 + ], + "closedByMe": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=245&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: inE43DmHvIJhYQw5RA5qUg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: hmbrTyhXQCBTMQ5aM5xkuZI690c=\r\n\r\n", + "id": "7.13.1", + "isServer": true, + "localCloseCode": 5000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1002, + "remoteCloseReason": "Protocol violation", + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events are undefined by the spec.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "26": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.141Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323435266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x1388" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "88021388" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 26, + "8894f930d010fada80629644bf73965cf066905fbc718d59bf7e" + ] + ], + [ + "RF", + [ + 20, + "0x03ea50726f746f636f6c2076696f6c6174696f6e" + ], + 8, + true, + 0, + true, + "f930d010" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_13_2.html b/autobahn/client/tungstenite_case_7_13_2.html new file mode 100644 index 0000000..f40498a --- /dev/null +++ b/autobahn/client/tungstenite_case_7_13_2.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.13.2 : Informational - 0 ms @ 2020-09-07T18:44:02.142Z

+

Case Description

Send close with close code 65536

+

Case Expectation

Actual events are undefined by the spec.

+ +

+ Case Outcome

Actual events are undefined by the spec.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (INFORMATIONAL)

+

+

Opening Handshake

+
GET /runCase?case=246&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: x6V3bQpsJMGsQmYWGvQimQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: XLgE7bFrTabCq294pZWK9se2D44=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode65535The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1002The close code the peer sent me in close frame (if any).
remoteCloseReasonProtocol violationThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
26126
2571257
Total2283
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323436266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0xffff
+
003 TX OCTETS: 8802ffff
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 88948ddd05568e375524e2a96a35e2b12520e4b26937f9b46a38
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=20, MASKED=True, MASK=3864646430353536
+
               0x03ea50726f746f636f6c2076696f6c6174696f6e
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_13_2.json b/autobahn/client/tungstenite_case_7_13_2.json new file mode 100644 index 0000000..d8f1093 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_13_2.json @@ -0,0 +1,122 @@ +{ + "agent": "Tungstenite", + "behavior": "INFORMATIONAL", + "behaviorClose": "INFORMATIONAL", + "case": 246, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with close code 65536", + "droppedByMe": true, + "duration": 0, + "expectation": "Actual events are undefined by the spec.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000, + 65535, + 1002 + ], + "closedByMe": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=246&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: x6V3bQpsJMGsQmYWGvQimQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: XLgE7bFrTabCq294pZWK9se2D44=\r\n\r\n", + "id": "7.13.2", + "isServer": true, + "localCloseCode": 65535, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1002, + "remoteCloseReason": "Protocol violation", + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events are undefined by the spec.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "26": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.142Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323436266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0xffff" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "8802ffff" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 26, + "88948ddd05568e375524e2a96a35e2b12520e4b26937f9b46a38" + ] + ], + [ + "RF", + [ + 20, + "0x03ea50726f746f636f6c2076696f6c6174696f6e" + ], + 8, + true, + 0, + true, + "8ddd0556" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_1_1.html b/autobahn/client/tungstenite_case_7_1_1.html new file mode 100644 index 0000000..96fcf1a --- /dev/null +++ b/autobahn/client/tungstenite_case_7_1_1.html @@ -0,0 +1,303 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.1.1 : Pass - 0 ms @ 2020-09-07T18:44:02.111Z

+

Case Description

Send a message followed by a close frame

+

Case Expectation

Echoed message followed by clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': [('message', u'Hello World!', False)]}

+ Observed:
[('message', u'Hello World!', False)] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=210&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 9Jk6W3UeSgdLjgdMSTuyiw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: DjcDJd2FiZf97KAdbRXf6u4O8is=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
18118
2571257
Total3283
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
14114
2061206
Total3224
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323130266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=12, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               Hello World!
+
003 TX OCTETS: 810c48656c6c6f20576f726c6421
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 818c4031407f08542c132f111710325d245e
+
006 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=12, MASKED=True, MASK=3430333134303766
+
               Hello World!
+
007 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
008 TX OCTETS: 880203e8
+
009 RX OCTETS: 88826a438a0c69ab
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3661343338613063
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_1_1.json b/autobahn/client/tungstenite_case_7_1_1.json new file mode 100644 index 0000000..6115b46 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_1_1.json @@ -0,0 +1,177 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 210, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a message followed by a close frame", + "droppedByMe": true, + "duration": 0, + "expectation": "Echoed message followed by clean close with normal code.", + "expected": { + "OK": [ + [ + "message", + "Hello World!", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=210&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 9Jk6W3UeSgdLjgdMSTuyiw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: DjcDJd2FiZf97KAdbRXf6u4O8is=\r\n\r\n", + "id": "7.1.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "Hello World!", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "18": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.111Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "14": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323130266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 12, + "Hello World!" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 14, + "810c48656c6c6f20576f726c6421" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 18, + "818c4031407f08542c132f111710325d245e" + ] + ], + [ + "RF", + [ + 12, + "Hello World!" + ], + 1, + true, + 0, + true, + "4031407f" + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88826a438a0c69ab" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "6a438a0c" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_1_2.html b/autobahn/client/tungstenite_case_7_1_2.html new file mode 100644 index 0000000..d0401d0 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_1_2.html @@ -0,0 +1,296 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.1.2 : Pass - 0 ms @ 2020-09-07T18:44:02.112Z

+

Case Description

Send two close frames

+

Case Expectation

Clean close with normal code. Second close frame ignored.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=211&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: EM/eDUBNcdBWG+Vcz7LI/g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: qi/9qr0iNis13NCj9boZk96u8CE=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2571257
Total2265
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
212
414
2061206
Total3212
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
82
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323131266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
003 TX OCTETS: 880203e8
+
004 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
005 TX OCTETS: 8800
+
006 FAIL CONNECTION AFTER 1.000000 sec
+
007 RX OCTETS: 88821f8f49531c67
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3166386634393533
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_1_2.json b/autobahn/client/tungstenite_case_7_1_2.json new file mode 100644 index 0000000..3f66ac4 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_1_2.json @@ -0,0 +1,143 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 211, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send two close frames", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with normal code. Second close frame ignored.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=211&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: EM/eDUBNcdBWG+Vcz7LI/g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: qi/9qr0iNis13NCj9boZk96u8CE=\r\n\r\n", + "id": "7.1.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.112Z", + "trafficStats": null, + "txFrameStats": { + "8": 2 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323131266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8800" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 8, + "88821f8f49531c67" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "1f8f4953" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_1_3.html b/autobahn/client/tungstenite_case_7_1_3.html new file mode 100644 index 0000000..e2acc8f --- /dev/null +++ b/autobahn/client/tungstenite_case_7_1_3.html @@ -0,0 +1,297 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.1.3 : Pass - 0 ms @ 2020-09-07T18:44:02.112Z

+

Case Description

Send a ping after close message

+

Case Expectation

Clean close with normal code, no pong.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=212&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: cHRYO3ouI2Zkz6TILMJdxQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: AZ3VOWGEiCsafCNPZ0dOSOvVx2Q=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2571257
Total2265
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
212
414
2061206
Total3212
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
81
91
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323132266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
003 TX OCTETS: 880203e8
+
004 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
005 TX OCTETS: 8900
+
006 FAIL CONNECTION AFTER 1.000000 sec
+
007 RX OCTETS: 888244c8199e4720
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3434633831393965
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_1_3.json b/autobahn/client/tungstenite_case_7_1_3.json new file mode 100644 index 0000000..8b9dbd1 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_1_3.json @@ -0,0 +1,144 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 212, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a ping after close message", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with normal code, no pong.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=212&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: cHRYO3ouI2Zkz6TILMJdxQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: AZ3VOWGEiCsafCNPZ0dOSOvVx2Q=\r\n\r\n", + "id": "7.1.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.112Z", + "trafficStats": null, + "txFrameStats": { + "8": 1, + "9": 1 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323132266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8900" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 8, + "888244c8199e4720" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "44c8199e" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_1_4.html b/autobahn/client/tungstenite_case_7_1_4.html new file mode 100644 index 0000000..49da68f --- /dev/null +++ b/autobahn/client/tungstenite_case_7_1_4.html @@ -0,0 +1,298 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.1.4 : Pass - 0 ms @ 2020-09-07T18:44:02.113Z

+

Case Description

Send text message after sending a close frame.

+

Case Expectation

Clean close with normal code. Text message ignored.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=213&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: cvorLc/9YdPvU7UBzX4QFg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: S0U1VvLMfPjxnTzXbTsbnBDglj4=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2571257
Total2265
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
14114
2061206
Total3224
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323133266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
003 TX OCTETS: 880203e8
+
004 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=12, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               Hello World!
+
005 TX OCTETS: 810c48656c6c6f20576f726c6421
+
006 FAIL CONNECTION AFTER 1.000000 sec
+
007 RX OCTETS: 8882466346dd458b
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3436363334366464
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_1_4.json b/autobahn/client/tungstenite_case_7_1_4.json new file mode 100644 index 0000000..cfffc0e --- /dev/null +++ b/autobahn/client/tungstenite_case_7_1_4.json @@ -0,0 +1,144 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 213, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text message after sending a close frame.", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with normal code. Text message ignored.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=213&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: cvorLc/9YdPvU7UBzX4QFg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: S0U1VvLMfPjxnTzXbTsbnBDglj4=\r\n\r\n", + "id": "7.1.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.113Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "14": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323133266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "TF", + [ + 12, + "Hello World!" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 14, + "810c48656c6c6f20576f726c6421" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 8, + "8882466346dd458b" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "466346dd" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_1_5.html b/autobahn/client/tungstenite_case_7_1_5.html new file mode 100644 index 0000000..116a01f --- /dev/null +++ b/autobahn/client/tungstenite_case_7_1_5.html @@ -0,0 +1,302 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.1.5 : Pass - 1 ms @ 2020-09-07T18:44:02.114Z

+

Case Description

Send message fragment1 followed by close then fragment

+

Case Expectation

Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=214&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: dVcLP0455P7bKICbCeqTZw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: oItk2k8KpbwKYLgX/EDu4PNcT2Q=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2571257
Total2265
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
11222
2061206
Total4232
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
01
11
81
Total3
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323134266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=False, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment1
+
003 TX OCTETS: 0109667261676d656e7431
+
004 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
005 TX OCTETS: 880203e8
+
006 TX FRAME : OPCODE=0, FIN=True, RSV=0, PAYLOAD-LEN=9, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               fragment2
+
007 TX OCTETS: 8009667261676d656e7432
+
008 FAIL CONNECTION AFTER 1.000000 sec
+
009 RX OCTETS: 88825a3d916d59d5
+
010 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3561336439313664
+
               0x03e8
+
011 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_1_5.json b/autobahn/client/tungstenite_case_7_1_5.json new file mode 100644 index 0000000..71ac207 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_1_5.json @@ -0,0 +1,167 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 214, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send message fragment1 followed by close then fragment", + "droppedByMe": true, + "duration": 1, + "expectation": "Clean close with normal code.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=214&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dVcLP0455P7bKICbCeqTZw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: oItk2k8KpbwKYLgX/EDu4PNcT2Q=\r\n\r\n", + "id": "7.1.5", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.114Z", + "trafficStats": null, + "txFrameStats": { + "0": 1, + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "11": 2, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323134266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 9, + "fragment1" + ], + 1, + false, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "0109667261676d656e7431" + ], + false + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "TF", + [ + 9, + "fragment2" + ], + 0, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 11, + "8009667261676d656e7432" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 8, + "88825a3d916d59d5" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "5a3d916d" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_1_6.html b/autobahn/client/tungstenite_case_7_1_6.html new file mode 100644 index 0000000..5bfd0dd --- /dev/null +++ b/autobahn/client/tungstenite_case_7_1_6.html @@ -0,0 +1,321 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.1.6 : Informational - 6 ms @ 2020-09-07T18:44:02.115Z

+

Case Description

Send 256K message followed by close then a ping

+

Case Expectation

Case outcome depends on implementation defined close behavior. Message and close frame are sent back to back. If the close frame is processed before the text message write is complete (as can happen in asynchronous processing models) the close frame is processed first and the text message may not be received or may only be partially recieved.

+ +

+ Case Outcome

Actual events differ from any expected.

+ Expected:
{'NON-STRICT': [], 'OK': [('message', u'Hello World!', False)]}

+ Observed:
[('message', u'BAsd7&jh23BAsd7&jh23BAsd7&jh23BAsd7&jh23BAsd7&jh23BAsd7&jh23BAsd ...', False), ('message', u'Hello World!', False)] +

+

Case Closing Behavior

Connection was properly closed (INFORMATIONAL)

+

+

Opening Handshake

+
GET /runCase?case=215&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: +E44FV339TVpfScy//rJow==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: zrG0ZYMItYoK0PLdFTYyX6Irt8s=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
40140
2571257
655364262144
Total6262441
+

Octets Transmitted by Chop Size

+ + + + + + + + +
Chop SizeCountOctets
212
414
14114
2061206
2621541262154
Total5262380
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
12
81
Total3
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
12
81
91
Total4
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323135266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=10, MASK=None, PAYLOAD-REPEAT-LEN=262144, CHOPSIZE=None, SYNC=False
+
               BAsd7&jh23
+
003 TX OCTETS: 817f00000000000400004241736437266a6832334241736437266a6832334241736437266a6832334241736437266a683233
+
               4241736437266a68323342417364 ...
+
004 TX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=12, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               Hello World!
+
005 TX OCTETS: 810c48656c6c6f20576f726c6421
+
006 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
007 TX OCTETS: 880203e8
+
008 TX FRAME : OPCODE=9, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
009 TX OCTETS: 8900
+
010 FAIL CONNECTION AFTER 1.000000 sec
+
011 RX OCTETS: 81ff00000000000400006c48c1182e09b27c5b6eab705e7b83591f2cf63e0620f32b2e09b27c5b6eab705e7b83591f2cf63e
+
               0620f32b2e09b27c5b6eab705e7b ...
+
012 RX OCTETS: b27c5b6eab705e7b83591f2cf63e0620f32b2e09b27c5b6eab705e7b83591f2cf63e0620f32b2e09b27c5b6eab705e7b8359
+
               1f2cf63e0620f32b2e09b27c5b6e ...
+
013 RX OCTETS: f32b2e09b27c5b6eab705e7b83591f2cf63e0620f32b2e09b27c5b6eab705e7b83591f2cf63e0620f32b2e09b27c5b6eab70
+
               5e7b83591f2cf63e0620f32b2e09 ...
+
014 RX OCTETS: f63e0620f32b2e09b27c5b6eab705e7b83591f2cf63e0620f32b2e09b27c5b6eab705e7b83591f2cf63e0620f32b2e09b27c
+
               5b6eab705e7b83591f2cf63e0620 ...
+
015 RX OCTETS: 83591f2cf63e0620f32b2e09b27c818c6a773be42212578805576c8b181b5fc588825976fcb05a9e
+
016 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=262144, MASKED=True, MASK=3663343863313138
+
               BAsd7&jh23BAsd7&jh23BAsd7&jh23BAsd7&jh23BAsd7&jh23BAsd7&jh23BAsd ...
+
017 RX FRAME : OPCODE=1, FIN=True, RSV=0, PAYLOAD-LEN=12, MASKED=True, MASK=3661373733626534
+
               Hello World!
+
018 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3539373666636230
+
               0x03e8
+
019 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_1_6.json b/autobahn/client/tungstenite_case_7_1_6.json new file mode 100644 index 0000000..1bb3370 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_1_6.json @@ -0,0 +1,263 @@ +{ + "agent": "Tungstenite", + "behavior": "INFORMATIONAL", + "behaviorClose": "INFORMATIONAL", + "case": 215, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 256K message followed by close then a ping", + "droppedByMe": true, + "duration": 6, + "expectation": "Case outcome depends on implementation defined close behavior. Message and close frame are sent back to back. If the close frame is processed before the text message write is complete (as can happen in asynchronous processing models) the close frame is processed first and the text message may not be received or may only be partially recieved.", + "expected": { + "NON-STRICT": [], + "OK": [ + [ + "message", + "Hello World!", + false + ] + ] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=215&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: +E44FV339TVpfScy//rJow==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: zrG0ZYMItYoK0PLdFTYyX6Irt8s=\r\n\r\n", + "id": "7.1.6", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [ + [ + "message", + "BAsd7&jh23BAsd7&jh23BAsd7&jh23BAsd7&jh23BAsd7&jh23BAsd7&jh23BAsd ...", + false + ], + [ + "message", + "Hello World!", + false + ] + ], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events differ from any expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 2, + "8": 1 + }, + "rxOctetStats": { + "40": 1, + "257": 1, + "65536": 4 + }, + "started": "2020-09-07T18:44:02.115Z", + "trafficStats": null, + "txFrameStats": { + "1": 2, + "8": 1, + "9": 1 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "14": 1, + "206": 1, + "262154": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323135266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 10, + "BAsd7&jh23" + ], + 1, + true, + 0, + null, + 262144, + null, + false + ], + [ + "TO", + [ + 262154, + "817f00000000000400004241736437266a6832334241736437266a6832334241736437266a6832334241736437266a6832334241736437266a68323342417364 ..." + ], + false + ], + [ + "TF", + [ + 12, + "Hello World!" + ], + 1, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 14, + "810c48656c6c6f20576f726c6421" + ], + false + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 9, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8900" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 65536, + "81ff00000000000400006c48c1182e09b27c5b6eab705e7b83591f2cf63e0620f32b2e09b27c5b6eab705e7b83591f2cf63e0620f32b2e09b27c5b6eab705e7b ..." + ] + ], + [ + "RO", + [ + 65536, + "b27c5b6eab705e7b83591f2cf63e0620f32b2e09b27c5b6eab705e7b83591f2cf63e0620f32b2e09b27c5b6eab705e7b83591f2cf63e0620f32b2e09b27c5b6e ..." + ] + ], + [ + "RO", + [ + 65536, + "f32b2e09b27c5b6eab705e7b83591f2cf63e0620f32b2e09b27c5b6eab705e7b83591f2cf63e0620f32b2e09b27c5b6eab705e7b83591f2cf63e0620f32b2e09 ..." + ] + ], + [ + "RO", + [ + 65536, + "f63e0620f32b2e09b27c5b6eab705e7b83591f2cf63e0620f32b2e09b27c5b6eab705e7b83591f2cf63e0620f32b2e09b27c5b6eab705e7b83591f2cf63e0620 ..." + ] + ], + [ + "RO", + [ + 40, + "83591f2cf63e0620f32b2e09b27c818c6a773be42212578805576c8b181b5fc588825976fcb05a9e" + ] + ], + [ + "RF", + [ + 262144, + "BAsd7&jh23BAsd7&jh23BAsd7&jh23BAsd7&jh23BAsd7&jh23BAsd7&jh23BAsd ..." + ], + 1, + true, + 0, + true, + "6c48c118" + ], + [ + "RF", + [ + 12, + "Hello World!" + ], + 1, + true, + 0, + true, + "6a773be4" + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "5976fcb0" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_3_1.html b/autobahn/client/tungstenite_case_7_3_1.html new file mode 100644 index 0000000..9841515 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_3_1.html @@ -0,0 +1,291 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.3.1 : Pass - 3 ms @ 2020-09-07T18:44:02.119Z

+

Case Description

Send a close frame with payload length 0 (no close code, no close reason)

+

Case Expectation

Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=216&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: G8R+mRjjFxFzLtPcDwQqFw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: b0hIHdg/+cr09UDd1agNaLzSvzI=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
616
2571257
Total2263
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
212
2061206
Total2208
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323136266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=0, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
003 TX OCTETS: 8800
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 8880e3d50251
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=0, MASKED=True, MASK=6533643530323531
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_3_1.json b/autobahn/client/tungstenite_case_7_3_1.json new file mode 100644 index 0000000..f110944 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_3_1.json @@ -0,0 +1,120 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 216, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a close frame with payload length 0 (no close code, no close reason)", + "droppedByMe": true, + "duration": 3, + "expectation": "Clean close with normal code.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=216&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: G8R+mRjjFxFzLtPcDwQqFw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: b0hIHdg/+cr09UDd1agNaLzSvzI=\r\n\r\n", + "id": "7.3.1", + "isServer": true, + "localCloseCode": null, + "localCloseReason": null, + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "6": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.119Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "2": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323136266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 0, + "" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 2, + "8800" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 6, + "8880e3d50251" + ] + ], + [ + "RF", + [ + 0, + "" + ], + 8, + true, + 0, + true, + "e3d50251" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_3_2.html b/autobahn/client/tungstenite_case_7_3_2.html new file mode 100644 index 0000000..7c86d21 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_3_2.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.3.2 : Pass - 0 ms @ 2020-09-07T18:44:02.122Z

+

Case Description

Send a close frame with payload length 1

+

Case Expectation

Clean close with protocol error or drop TCP.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=217&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 7HCwc+1ApqmePJoRhcdrdQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: zRMRgOCfPA8jOeGuVvhsqxmLE3s=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCodeNoneThe close code I sent in close frame (if any).
localCloseReasonaThe close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
313
2061206
Total2209
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323137266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=1, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               a
+
003 TX OCTETS: 880161
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_3_2.json b/autobahn/client/tungstenite_case_7_3_2.json new file mode 100644 index 0000000..3bbc550 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_3_2.json @@ -0,0 +1,98 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 217, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a close frame with payload length 1", + "droppedByMe": false, + "duration": 0, + "expectation": "Clean close with protocol error or drop TCP.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=217&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 7HCwc+1ApqmePJoRhcdrdQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: zRMRgOCfPA8jOeGuVvhsqxmLE3s=\r\n\r\n", + "id": "7.3.2", + "isServer": true, + "localCloseCode": null, + "localCloseReason": "a", + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.122Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "3": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323137266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 1, + "a" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 3, + "880161" + ], + false + ], + [ + "KL", + 1 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_3_3.html b/autobahn/client/tungstenite_case_7_3_3.html new file mode 100644 index 0000000..a1e3006 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_3_3.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.3.3 : Pass - 0 ms @ 2020-09-07T18:44:02.123Z

+

Case Description

Send a close frame with payload length 2 (regular close with a code)

+

Case Expectation

Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=218&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: /aSJkOr44lzoHDeuE9v0Vw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: IWbdh9tqr6lFKErUCV8YlSqqoYk=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2571257
Total2265
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323138266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
003 TX OCTETS: 880203e8
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 88826170e1d76298
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3631373065316437
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_3_3.json b/autobahn/client/tungstenite_case_7_3_3.json new file mode 100644 index 0000000..c2c3cec --- /dev/null +++ b/autobahn/client/tungstenite_case_7_3_3.json @@ -0,0 +1,120 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 218, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a close frame with payload length 2 (regular close with a code)", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with normal code.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=218&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: /aSJkOr44lzoHDeuE9v0Vw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: IWbdh9tqr6lFKErUCV8YlSqqoYk=\r\n\r\n", + "id": "7.3.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.123Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323138266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 8, + "88826170e1d76298" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "6170e1d7" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_3_4.html b/autobahn/client/tungstenite_case_7_3_4.html new file mode 100644 index 0000000..e172061 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_3_4.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.3.4 : Pass - 0 ms @ 2020-09-07T18:44:02.123Z

+

Case Description

Send a close frame with close code and close reason

+

Case Expectation

Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=219&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: PLWBrMax+tE8OCiAaLngCg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: VJPuCtOyQ1Ogm8/qAAnkW5tGVP0=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonHello World!The close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2571257
Total2265
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
16116
2061206
Total2222
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323139266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=14, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e848656c6c6f20576f726c6421
+
003 TX OCTETS: 880e03e848656c6c6f20576f726c6421
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 8882aba85042a840
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6162613835303432
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_3_4.json b/autobahn/client/tungstenite_case_7_3_4.json new file mode 100644 index 0000000..a6acd3e --- /dev/null +++ b/autobahn/client/tungstenite_case_7_3_4.json @@ -0,0 +1,120 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 219, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a close frame with close code and close reason", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with normal code.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=219&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: PLWBrMax+tE8OCiAaLngCg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: VJPuCtOyQ1Ogm8/qAAnkW5tGVP0=\r\n\r\n", + "id": "7.3.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": "Hello World!", + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.123Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "16": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323139266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 14, + "0x03e848656c6c6f20576f726c6421" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 16, + "880e03e848656c6c6f20576f726c6421" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 8, + "8882aba85042a840" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "aba85042" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_3_5.html b/autobahn/client/tungstenite_case_7_3_5.html new file mode 100644 index 0000000..4ca3857 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_3_5.html @@ -0,0 +1,295 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.3.5 : Pass - 0 ms @ 2020-09-07T18:44:02.124Z

+

Case Description

Send a close frame with close code and close reason of maximum length (123)

+

Case Expectation

Clean close with normal code.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=220&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: R59y58PwjdgG/bcR8HyEYg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 2sBkexz5NakxzOMmxq22Yfdq6e4=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReason***************************************************************************************************************************The close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2571257
Total2265
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
1271127
2061206
Total2333
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323230266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=125, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e82a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
003 TX OCTETS: 887d03e82a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 888281f279db821a
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3831663237396462
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_3_5.json b/autobahn/client/tungstenite_case_7_3_5.json new file mode 100644 index 0000000..828f8f1 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_3_5.json @@ -0,0 +1,120 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 220, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a close frame with close code and close reason of maximum length (123)", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with normal code.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=220&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: R59y58PwjdgG/bcR8HyEYg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 2sBkexz5NakxzOMmxq22Yfdq6e4=\r\n\r\n", + "id": "7.3.5", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": "***************************************************************************************************************************", + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.124Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "127": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323230266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 125, + "0x03e82a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 127, + "887d03e82a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 8, + "888281f279db821a" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "81f279db" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_3_6.html b/autobahn/client/tungstenite_case_7_3_6.html new file mode 100644 index 0000000..fad7b68 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_3_6.html @@ -0,0 +1,290 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.3.6 : Pass - 0 ms @ 2020-09-07T18:44:02.124Z

+

Case Description

Send a close frame with close code and close reason which is too long (124) - total frame payload 126 octets

+

Case Expectation

Clean close with protocol error code or dropped TCP connection.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=221&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: XxS+7WFuKTbcrwChv2sFwg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: YvytlqE9O3ifhIa9oQLk41ud42w=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReason****************************************************************************************************************************The close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
1301130
2061206
Total2336
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323231266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=126, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e82a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
003 TX OCTETS: 887e007e03e82a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a
+
               2a2a2a2a2a2a2a2a2a2a2a2a2a2a ...
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_3_6.json b/autobahn/client/tungstenite_case_7_3_6.json new file mode 100644 index 0000000..4081c5c --- /dev/null +++ b/autobahn/client/tungstenite_case_7_3_6.json @@ -0,0 +1,98 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 221, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a close frame with close code and close reason which is too long (124) - total frame payload 126 octets", + "droppedByMe": false, + "duration": 0, + "expectation": "Clean close with protocol error code or dropped TCP connection.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=221&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: XxS+7WFuKTbcrwChv2sFwg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: YvytlqE9O3ifhIa9oQLk41ud42w=\r\n\r\n", + "id": "7.3.6", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": "****************************************************************************************************************************", + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.124Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "130": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323231266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 126, + "0x03e82a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 130, + "887e007e03e82a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a ..." + ], + false + ], + [ + "KL", + 1 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_5_1.html b/autobahn/client/tungstenite_case_7_5_1.html new file mode 100644 index 0000000..e42540c --- /dev/null +++ b/autobahn/client/tungstenite_case_7_5_1.html @@ -0,0 +1,288 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.5.1 : Pass - 0 ms @ 2020-09-07T18:44:02.125Z

+

Case Description

Send a close frame with invalid UTF8 payload

+

Case Expectation

Clean close with protocol error or invalid utf8 code or dropped TCP.

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=222&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: NoZDARwAxZN4IE1w0W4Ltg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: o5LQNusp+rTXeqs2mNUERLT+UDM=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeFalseTrue, iff I dropped the TCP connection.
wasCleanFalseTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonpeer dropped the TCP connection without previous WebSocket closing handshakeWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasoncebae1bdb9cf83cebcceb5eda080656469746564The close reason I sent in close frame (if any).
remoteCloseCodeNoneThe close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + +
Chop SizeCountOctets
2571257
Total1257
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
24124
2061206
Total2230
+

Frames Received by Opcode

+ + + +
OpcodeCount
Total0
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323232266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=22, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8cebae1bdb9cf83cebcceb5eda080656469746564
+
003 TX OCTETS: 881603e8cebae1bdb9cf83cebcceb5eda080656469746564
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 TCP DROPPED BY PEER
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_5_1.json b/autobahn/client/tungstenite_case_7_5_1.json new file mode 100644 index 0000000..64c5e7f --- /dev/null +++ b/autobahn/client/tungstenite_case_7_5_1.json @@ -0,0 +1,99 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 222, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send a close frame with invalid UTF8 payload", + "droppedByMe": false, + "duration": 0, + "expectation": "Clean close with protocol error or invalid utf8 code or dropped TCP.", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002, + 1007 + ], + "closedByMe": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=222&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: NoZDARwAxZN4IE1w0W4Ltg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: o5LQNusp+rTXeqs2mNUERLT+UDM=\r\n\r\n", + "id": "7.5.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": "cebae1bdb9cf83cebcceb5eda080656469746564", + "received": [], + "remoteCloseCode": null, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": {}, + "rxOctetStats": { + "257": 1 + }, + "started": "2020-09-07T18:44:02.125Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "24": 1, + "206": 1 + }, + "wasClean": false, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": "peer dropped the TCP connection without previous WebSocket closing handshake", + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323232266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 22, + "0x03e8cebae1bdb9cf83cebcceb5eda080656469746564" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 24, + "881603e8cebae1bdb9cf83cebcceb5eda080656469746564" + ], + false + ], + [ + "KL", + 1 + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_7_1.html b/autobahn/client/tungstenite_case_7_7_1.html new file mode 100644 index 0000000..e69270c --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_1.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.7.1 : Pass - 0 ms @ 2020-09-07T18:44:02.126Z

+

Case Description

Send close with valid close code 1000

+

Case Expectation

Clean close with normal or echoed code

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=223&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ASEQs5xC3HDqqlUj6v4sBg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: qV1PH0TAYyTFoRVowExLgmQDE9o=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2571257
Total2265
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323233266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
003 TX OCTETS: 880203e8
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 888249dc4f324a34
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3439646334663332
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_7_1.json b/autobahn/client/tungstenite_case_7_7_1.json new file mode 100644 index 0000000..6eb5af0 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_1.json @@ -0,0 +1,121 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 223, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with valid close code 1000", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with normal or echoed code", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000, + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=223&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ASEQs5xC3HDqqlUj6v4sBg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: qV1PH0TAYyTFoRVowExLgmQDE9o=\r\n\r\n", + "id": "7.7.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.126Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323233266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 8, + "888249dc4f324a34" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "49dc4f32" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_7_10.html b/autobahn/client/tungstenite_case_7_7_10.html new file mode 100644 index 0000000..5a323a8 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_10.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.7.10 : Pass - 0 ms @ 2020-09-07T18:44:02.132Z

+

Case Description

Send close with valid close code 3000

+

Case Expectation

Clean close with normal or echoed code

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=232&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: alQShG/l97PJW7+8lz3DlA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: robD+YCrNtnIe9R6azcvp5hklf8=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode3000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2571257
Total2265
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323332266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x0bb8
+
003 TX OCTETS: 88020bb8
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 8882483a2c604bd2
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3438336132633630
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_7_10.json b/autobahn/client/tungstenite_case_7_7_10.json new file mode 100644 index 0000000..ffac8ad --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_10.json @@ -0,0 +1,121 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 232, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with valid close code 3000", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with normal or echoed code", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000, + 3000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=232&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: alQShG/l97PJW7+8lz3DlA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: robD+YCrNtnIe9R6azcvp5hklf8=\r\n\r\n", + "id": "7.7.10", + "isServer": true, + "localCloseCode": 3000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.132Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323332266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x0bb8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "88020bb8" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 8, + "8882483a2c604bd2" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "483a2c60" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_7_11.html b/autobahn/client/tungstenite_case_7_7_11.html new file mode 100644 index 0000000..a68050a --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_11.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.7.11 : Pass - 0 ms @ 2020-09-07T18:44:02.133Z

+

Case Description

Send close with valid close code 3999

+

Case Expectation

Clean close with normal or echoed code

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=233&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 43iDpdRSc4sA15Cg56r4Ww==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: mx2PkEu7oTOOMyMwKbP3zLXYKis=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode3999The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2571257
Total2265
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323333266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x0f9f
+
003 TX OCTETS: 88020f9f
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 8882d71c439ed4f4
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6437316334333965
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_7_11.json b/autobahn/client/tungstenite_case_7_7_11.json new file mode 100644 index 0000000..c94f066 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_11.json @@ -0,0 +1,121 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 233, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with valid close code 3999", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with normal or echoed code", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000, + 3999 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=233&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 43iDpdRSc4sA15Cg56r4Ww==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: mx2PkEu7oTOOMyMwKbP3zLXYKis=\r\n\r\n", + "id": "7.7.11", + "isServer": true, + "localCloseCode": 3999, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.133Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323333266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x0f9f" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "88020f9f" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 8, + "8882d71c439ed4f4" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "d71c439e" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_7_12.html b/autobahn/client/tungstenite_case_7_7_12.html new file mode 100644 index 0000000..d640827 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_12.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.7.12 : Pass - 0 ms @ 2020-09-07T18:44:02.133Z

+

Case Description

Send close with valid close code 4000

+

Case Expectation

Clean close with normal or echoed code

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=234&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: qWsk27qdiUu1MKgyLk1Olg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: DnW9WdXugtW+oogp4MqzcnSDRJA=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode4000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2571257
Total2265
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323334266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x0fa0
+
003 TX OCTETS: 88020fa0
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 888299548e799abc
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3939353438653739
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_7_12.json b/autobahn/client/tungstenite_case_7_7_12.json new file mode 100644 index 0000000..ff15f09 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_12.json @@ -0,0 +1,121 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 234, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with valid close code 4000", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with normal or echoed code", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000, + 4000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=234&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: qWsk27qdiUu1MKgyLk1Olg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: DnW9WdXugtW+oogp4MqzcnSDRJA=\r\n\r\n", + "id": "7.7.12", + "isServer": true, + "localCloseCode": 4000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.133Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323334266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x0fa0" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "88020fa0" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 8, + "888299548e799abc" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "99548e79" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_7_13.html b/autobahn/client/tungstenite_case_7_7_13.html new file mode 100644 index 0000000..6877518 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_13.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.7.13 : Pass - 1 ms @ 2020-09-07T18:44:02.134Z

+

Case Description

Send close with valid close code 4999

+

Case Expectation

Clean close with normal or echoed code

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=235&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 9f5b5hsuoNWwxj8gRV/j/A==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 6ViWEn0zXdjO+9aN9mt9X1oPrcQ=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode4999The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2571257
Total2265
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323335266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x1387
+
003 TX OCTETS: 88021387
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 88823f0c30053ce4
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3366306333303035
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_7_13.json b/autobahn/client/tungstenite_case_7_7_13.json new file mode 100644 index 0000000..7dfdccd --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_13.json @@ -0,0 +1,121 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 235, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with valid close code 4999", + "droppedByMe": true, + "duration": 1, + "expectation": "Clean close with normal or echoed code", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000, + 4999 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=235&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 9f5b5hsuoNWwxj8gRV/j/A==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 6ViWEn0zXdjO+9aN9mt9X1oPrcQ=\r\n\r\n", + "id": "7.7.13", + "isServer": true, + "localCloseCode": 4999, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.134Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323335266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x1387" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "88021387" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 8, + "88823f0c30053ce4" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "3f0c3005" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_7_2.html b/autobahn/client/tungstenite_case_7_7_2.html new file mode 100644 index 0000000..f0baa21 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_2.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.7.2 : Pass - 1 ms @ 2020-09-07T18:44:02.126Z

+

Case Description

Send close with valid close code 1001

+

Case Expectation

Clean close with normal or echoed code

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=224&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: egz2lFYW3ziOb6ZWiSwYkw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 3IdpNUm50o1dGkJhjCxcZQoxAI0=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1001The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2571257
Total2265
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323234266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e9
+
003 TX OCTETS: 880203e9
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 8882cc26dad4cfce
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6363323664616434
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_7_2.json b/autobahn/client/tungstenite_case_7_7_2.json new file mode 100644 index 0000000..19fc4d2 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_2.json @@ -0,0 +1,121 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 224, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with valid close code 1001", + "droppedByMe": true, + "duration": 1, + "expectation": "Clean close with normal or echoed code", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000, + 1001 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=224&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: egz2lFYW3ziOb6ZWiSwYkw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 3IdpNUm50o1dGkJhjCxcZQoxAI0=\r\n\r\n", + "id": "7.7.2", + "isServer": true, + "localCloseCode": 1001, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.126Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323234266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x03e9" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e9" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 8, + "8882cc26dad4cfce" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "cc26dad4" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_7_3.html b/autobahn/client/tungstenite_case_7_7_3.html new file mode 100644 index 0000000..1970dea --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_3.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.7.3 : Pass - 0 ms @ 2020-09-07T18:44:02.128Z

+

Case Description

Send close with valid close code 1002

+

Case Expectation

Clean close with normal or echoed code

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=225&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 3FHZy06x6L9/c5bPu+xCHg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 38kykNP6W3cAe+2S9oos01haMcY=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1002The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2571257
Total2265
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323235266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03ea
+
003 TX OCTETS: 880203ea
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 8882dda1b71ede49
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6464613162373165
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_7_3.json b/autobahn/client/tungstenite_case_7_7_3.json new file mode 100644 index 0000000..ac11a51 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_3.json @@ -0,0 +1,121 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 225, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with valid close code 1002", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with normal or echoed code", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000, + 1002 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=225&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 3FHZy06x6L9/c5bPu+xCHg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 38kykNP6W3cAe+2S9oos01haMcY=\r\n\r\n", + "id": "7.7.3", + "isServer": true, + "localCloseCode": 1002, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.128Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323235266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x03ea" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203ea" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 8, + "8882dda1b71ede49" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "dda1b71e" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_7_4.html b/autobahn/client/tungstenite_case_7_7_4.html new file mode 100644 index 0000000..ef46b9a --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_4.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.7.4 : Pass - 0 ms @ 2020-09-07T18:44:02.128Z

+

Case Description

Send close with valid close code 1003

+

Case Expectation

Clean close with normal or echoed code

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=226&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 0nn/6d0w/uTq7uYXt5SQ8g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Cc318Tkd8QdDiF3ahR1L7YB0XJk=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1003The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2571257
Total2265
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323236266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03eb
+
003 TX OCTETS: 880203eb
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 8882d066e1f9d38e
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6430363665316639
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_7_4.json b/autobahn/client/tungstenite_case_7_7_4.json new file mode 100644 index 0000000..052525d --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_4.json @@ -0,0 +1,121 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 226, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with valid close code 1003", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with normal or echoed code", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000, + 1003 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=226&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 0nn/6d0w/uTq7uYXt5SQ8g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Cc318Tkd8QdDiF3ahR1L7YB0XJk=\r\n\r\n", + "id": "7.7.4", + "isServer": true, + "localCloseCode": 1003, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.128Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323236266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x03eb" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203eb" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 8, + "8882d066e1f9d38e" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "d066e1f9" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_7_5.html b/autobahn/client/tungstenite_case_7_7_5.html new file mode 100644 index 0000000..5fa1777 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_5.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.7.5 : Pass - 0 ms @ 2020-09-07T18:44:02.129Z

+

Case Description

Send close with valid close code 1007

+

Case Expectation

Clean close with normal or echoed code

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=227&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: DRLwGqOKhxQN3DOrA1xmew==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: sI0va6TpMD79mWTEnjbdFite5nU=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1007The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2571257
Total2265
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323237266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03ef
+
003 TX OCTETS: 880203ef
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 888289fd4cb38a15
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3839666434636233
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_7_5.json b/autobahn/client/tungstenite_case_7_7_5.json new file mode 100644 index 0000000..1f9f229 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_5.json @@ -0,0 +1,121 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 227, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with valid close code 1007", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with normal or echoed code", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000, + 1007 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=227&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: DRLwGqOKhxQN3DOrA1xmew==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: sI0va6TpMD79mWTEnjbdFite5nU=\r\n\r\n", + "id": "7.7.5", + "isServer": true, + "localCloseCode": 1007, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.129Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323237266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x03ef" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203ef" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 8, + "888289fd4cb38a15" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "89fd4cb3" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_7_6.html b/autobahn/client/tungstenite_case_7_7_6.html new file mode 100644 index 0000000..9f81b97 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_6.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.7.6 : Pass - 0 ms @ 2020-09-07T18:44:02.130Z

+

Case Description

Send close with valid close code 1008

+

Case Expectation

Clean close with normal or echoed code

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=228&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 4P0LuG42PJUwVxvWZiU2Gw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: XUcR35yqsz25BaoeY2g4YFlc8eg=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1008The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2571257
Total2265
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323238266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03f0
+
003 TX OCTETS: 880203f0
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 8882f6a4fc26f54c
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6636613466633236
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_7_6.json b/autobahn/client/tungstenite_case_7_7_6.json new file mode 100644 index 0000000..b0a4063 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_6.json @@ -0,0 +1,121 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 228, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with valid close code 1008", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with normal or echoed code", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000, + 1008 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=228&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 4P0LuG42PJUwVxvWZiU2Gw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: XUcR35yqsz25BaoeY2g4YFlc8eg=\r\n\r\n", + "id": "7.7.6", + "isServer": true, + "localCloseCode": 1008, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.130Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323238266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x03f0" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203f0" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 8, + "8882f6a4fc26f54c" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "f6a4fc26" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_7_7.html b/autobahn/client/tungstenite_case_7_7_7.html new file mode 100644 index 0000000..171989a --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_7.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.7.7 : Pass - 0 ms @ 2020-09-07T18:44:02.130Z

+

Case Description

Send close with valid close code 1009

+

Case Expectation

Clean close with normal or echoed code

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=229&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: f/XuhcBSPB0PzoI8/LN7VQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: VC4mSxWmOhzUZ3uguzxOZSUZAu0=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1009The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2571257
Total2265
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323239266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03f1
+
003 TX OCTETS: 880203f1
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 8882a5b04811a658
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6135623034383131
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_7_7.json b/autobahn/client/tungstenite_case_7_7_7.json new file mode 100644 index 0000000..b045c80 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_7.json @@ -0,0 +1,121 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 229, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with valid close code 1009", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with normal or echoed code", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000, + 1009 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=229&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: f/XuhcBSPB0PzoI8/LN7VQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: VC4mSxWmOhzUZ3uguzxOZSUZAu0=\r\n\r\n", + "id": "7.7.7", + "isServer": true, + "localCloseCode": 1009, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.130Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323239266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x03f1" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203f1" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 8, + "8882a5b04811a658" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "a5b04811" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_7_8.html b/autobahn/client/tungstenite_case_7_7_8.html new file mode 100644 index 0000000..2a2b128 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_8.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.7.8 : Pass - 0 ms @ 2020-09-07T18:44:02.131Z

+

Case Description

Send close with valid close code 1010

+

Case Expectation

Clean close with normal or echoed code

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=230&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Bs8KZ3KSeZX/WOzBA/9ZkA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: NXIo0cAVDa6wsQS1OTlTM6RHabE=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1010The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2571257
Total2265
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323330266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03f2
+
003 TX OCTETS: 880203f2
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 8882f4c618b4f72e
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6634633631386234
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_7_8.json b/autobahn/client/tungstenite_case_7_7_8.json new file mode 100644 index 0000000..8c8b60d --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_8.json @@ -0,0 +1,121 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 230, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with valid close code 1010", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with normal or echoed code", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000, + 1010 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=230&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Bs8KZ3KSeZX/WOzBA/9ZkA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: NXIo0cAVDa6wsQS1OTlTM6RHabE=\r\n\r\n", + "id": "7.7.8", + "isServer": true, + "localCloseCode": 1010, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.131Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323330266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x03f2" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203f2" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 8, + "8882f4c618b4f72e" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "f4c618b4" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_7_9.html b/autobahn/client/tungstenite_case_7_7_9.html new file mode 100644 index 0000000..bf15798 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_9.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.7.9 : Pass - 0 ms @ 2020-09-07T18:44:02.131Z

+

Case Description

Send close with valid close code 1011

+

Case Expectation

Clean close with normal or echoed code

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=231&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 4fAj2Rim76ZtNG1v1vi9dQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 0zBEvToUfLYDECQvOlnLT3zKkF0=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1011The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
818
2571257
Total2265
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323331266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03f3
+
003 TX OCTETS: 880203f3
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 888245f34f46461b
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3435663334663436
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_7_9.json b/autobahn/client/tungstenite_case_7_7_9.json new file mode 100644 index 0000000..d22cd80 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_7_9.json @@ -0,0 +1,121 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 231, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with valid close code 1011", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with normal or echoed code", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1000, + 1011 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=231&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 4fAj2Rim76ZtNG1v1vi9dQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 0zBEvToUfLYDECQvOlnLT3zKkF0=\r\n\r\n", + "id": "7.7.9", + "isServer": true, + "localCloseCode": 1011, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.131Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323331266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x03f3" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203f3" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 8, + "888245f34f46461b" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "45f34f46" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_9_1.html b/autobahn/client/tungstenite_case_7_9_1.html new file mode 100644 index 0000000..237d215 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_9_1.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.9.1 : Pass - 0 ms @ 2020-09-07T18:44:02.135Z

+

Case Description

Send close with invalid close code 0

+

Case Expectation

Clean close with protocol error code or drop TCP

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=236&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: yq72UAuiMgYdrV6hymWgiQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: k5EotGJlwD3u9P+vbDvPZjM8ZtM=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode0The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1002The close code the peer sent me in close frame (if any).
remoteCloseReasonProtocol violationThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
26126
2571257
Total2283
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323336266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               
+
003 TX OCTETS: 88020000
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 889426d83c0f25326c7d49ac536c49b41c794fb7506e52b15361
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=20, MASKED=True, MASK=3236643833633066
+
               0x03ea50726f746f636f6c2076696f6c6174696f6e
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_9_1.json b/autobahn/client/tungstenite_case_7_9_1.json new file mode 100644 index 0000000..a549698 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_9_1.json @@ -0,0 +1,120 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 236, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with invalid close code 0", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with protocol error code or drop TCP", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=236&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: yq72UAuiMgYdrV6hymWgiQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: k5EotGJlwD3u9P+vbDvPZjM8ZtM=\r\n\r\n", + "id": "7.9.1", + "isServer": true, + "localCloseCode": 0, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1002, + "remoteCloseReason": "Protocol violation", + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "26": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.135Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323336266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "\u0000\u0000" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "88020000" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 26, + "889426d83c0f25326c7d49ac536c49b41c794fb7506e52b15361" + ] + ], + [ + "RF", + [ + 20, + "0x03ea50726f746f636f6c2076696f6c6174696f6e" + ], + 8, + true, + 0, + true, + "26d83c0f" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_9_2.html b/autobahn/client/tungstenite_case_7_9_2.html new file mode 100644 index 0000000..b5b3a18 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_9_2.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.9.2 : Pass - 0 ms @ 2020-09-07T18:44:02.136Z

+

Case Description

Send close with invalid close code 999

+

Case Expectation

Clean close with protocol error code or drop TCP

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=237&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: P3RrcdBFVgB6DWJ982plZA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: iXTM3obTcjn3WQhCSH/lusr33k0=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode999The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1002The close code the peer sent me in close frame (if any).
remoteCloseReasonProtocol violationThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
26126
2571257
Total2283
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323337266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e7
+
003 TX OCTETS: 880203e7
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 88944ef675454d1c253721821a26219a5533279919243a9f1a2b
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=20, MASKED=True, MASK=3465663637353435
+
               0x03ea50726f746f636f6c2076696f6c6174696f6e
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_9_2.json b/autobahn/client/tungstenite_case_7_9_2.json new file mode 100644 index 0000000..ac75302 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_9_2.json @@ -0,0 +1,120 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 237, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with invalid close code 999", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with protocol error code or drop TCP", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=237&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: P3RrcdBFVgB6DWJ982plZA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: iXTM3obTcjn3WQhCSH/lusr33k0=\r\n\r\n", + "id": "7.9.2", + "isServer": true, + "localCloseCode": 999, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1002, + "remoteCloseReason": "Protocol violation", + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "26": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.136Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323337266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x03e7" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e7" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 26, + "88944ef675454d1c253721821a26219a5533279919243a9f1a2b" + ] + ], + [ + "RF", + [ + 20, + "0x03ea50726f746f636f6c2076696f6c6174696f6e" + ], + 8, + true, + 0, + true, + "4ef67545" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_9_3.html b/autobahn/client/tungstenite_case_7_9_3.html new file mode 100644 index 0000000..4df5fcb --- /dev/null +++ b/autobahn/client/tungstenite_case_7_9_3.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.9.3 : Pass - 0 ms @ 2020-09-07T18:44:02.137Z

+

Case Description

Send close with invalid close code 1004

+

Case Expectation

Clean close with protocol error code or drop TCP

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=238&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: g9lYRBykwKTF76khRo7IiA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: oGbeRHOELD15wA8K7rLGL3rvcEs=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1004The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1002The close code the peer sent me in close frame (if any).
remoteCloseReasonProtocol violationThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
26126
2571257
Total2283
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323338266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03ec
+
003 TX OCTETS: 880203ec
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 889428feafd12b14ffa3478ac0b247928fa74191c3b05c97c0bf
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=20, MASKED=True, MASK=3238666561666431
+
               0x03ea50726f746f636f6c2076696f6c6174696f6e
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_9_3.json b/autobahn/client/tungstenite_case_7_9_3.json new file mode 100644 index 0000000..11df0af --- /dev/null +++ b/autobahn/client/tungstenite_case_7_9_3.json @@ -0,0 +1,120 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 238, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with invalid close code 1004", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with protocol error code or drop TCP", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=238&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: g9lYRBykwKTF76khRo7IiA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: oGbeRHOELD15wA8K7rLGL3rvcEs=\r\n\r\n", + "id": "7.9.3", + "isServer": true, + "localCloseCode": 1004, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1002, + "remoteCloseReason": "Protocol violation", + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "26": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.137Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323338266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x03ec" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203ec" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 26, + "889428feafd12b14ffa3478ac0b247928fa74191c3b05c97c0bf" + ] + ], + [ + "RF", + [ + 20, + "0x03ea50726f746f636f6c2076696f6c6174696f6e" + ], + 8, + true, + 0, + true, + "28feafd1" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_9_4.html b/autobahn/client/tungstenite_case_7_9_4.html new file mode 100644 index 0000000..7ffe9fa --- /dev/null +++ b/autobahn/client/tungstenite_case_7_9_4.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.9.4 : Pass - 0 ms @ 2020-09-07T18:44:02.137Z

+

Case Description

Send close with invalid close code 1005

+

Case Expectation

Clean close with protocol error code or drop TCP

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=239&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: DKh1rjRmLqV/4xXlkcFq7w==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: uI2v6UguVtbpuMOT9aQ6SKWG5ls=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1005The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1002The close code the peer sent me in close frame (if any).
remoteCloseReasonProtocol violationThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
26126
2571257
Total2283
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323339266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03ed
+
003 TX OCTETS: 880203ed
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 88949588a5cb9662f5b9fafccaa8fae485bdfce7c9aae1e1caa5
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=20, MASKED=True, MASK=3935383861356362
+
               0x03ea50726f746f636f6c2076696f6c6174696f6e
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_9_4.json b/autobahn/client/tungstenite_case_7_9_4.json new file mode 100644 index 0000000..36e8549 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_9_4.json @@ -0,0 +1,120 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 239, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with invalid close code 1005", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with protocol error code or drop TCP", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=239&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: DKh1rjRmLqV/4xXlkcFq7w==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: uI2v6UguVtbpuMOT9aQ6SKWG5ls=\r\n\r\n", + "id": "7.9.4", + "isServer": true, + "localCloseCode": 1005, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1002, + "remoteCloseReason": "Protocol violation", + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "26": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.137Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323339266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x03ed" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203ed" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 26, + "88949588a5cb9662f5b9fafccaa8fae485bdfce7c9aae1e1caa5" + ] + ], + [ + "RF", + [ + 20, + "0x03ea50726f746f636f6c2076696f6c6174696f6e" + ], + 8, + true, + 0, + true, + "9588a5cb" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_9_5.html b/autobahn/client/tungstenite_case_7_9_5.html new file mode 100644 index 0000000..c6f88ba --- /dev/null +++ b/autobahn/client/tungstenite_case_7_9_5.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.9.5 : Pass - 0 ms @ 2020-09-07T18:44:02.138Z

+

Case Description

Send close with invalid close code 1006

+

Case Expectation

Clean close with protocol error code or drop TCP

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=240&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: N9O1KV3OX5tDaa/ZtXCuUg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: G7FEQ7/jcC2CkBwMIZKKMrQ5l3o=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1006The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1002The close code the peer sent me in close frame (if any).
remoteCloseReasonProtocol violationThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
26126
2571257
Total2283
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323430266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03ee
+
003 TX OCTETS: 880203ee
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 88945d7051d05e9a01a232043eb3321c71a6341f3db129193ebe
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=20, MASKED=True, MASK=3564373035316430
+
               0x03ea50726f746f636f6c2076696f6c6174696f6e
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_9_5.json b/autobahn/client/tungstenite_case_7_9_5.json new file mode 100644 index 0000000..8b35b47 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_9_5.json @@ -0,0 +1,120 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 240, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with invalid close code 1006", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with protocol error code or drop TCP", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=240&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: N9O1KV3OX5tDaa/ZtXCuUg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: G7FEQ7/jcC2CkBwMIZKKMrQ5l3o=\r\n\r\n", + "id": "7.9.5", + "isServer": true, + "localCloseCode": 1006, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1002, + "remoteCloseReason": "Protocol violation", + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "26": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.138Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323430266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x03ee" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203ee" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 26, + "88945d7051d05e9a01a232043eb3321c71a6341f3db129193ebe" + ] + ], + [ + "RF", + [ + 20, + "0x03ea50726f746f636f6c2076696f6c6174696f6e" + ], + 8, + true, + 0, + true, + "5d7051d0" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_9_6.html b/autobahn/client/tungstenite_case_7_9_6.html new file mode 100644 index 0000000..bb454d4 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_9_6.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.9.6 : Pass - 0 ms @ 2020-09-07T18:44:02.138Z

+

Case Description

Send close with invalid close code 1016

+

Case Expectation

Clean close with protocol error code or drop TCP

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=241&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ynKwW8s7GfsjJf0VPR5zYg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: jpopbCSSOZz9TS2NYqt2gqXa4jw=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1016The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1002The close code the peer sent me in close frame (if any).
remoteCloseReasonProtocol violationThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
26126
2571257
Total2283
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323431266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03f8
+
003 TX OCTETS: 880203f8
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 88948b5ed62d88b4865fe42ab94ee432f65be231ba4cff37b943
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=20, MASKED=True, MASK=3862356564363264
+
               0x03ea50726f746f636f6c2076696f6c6174696f6e
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_9_6.json b/autobahn/client/tungstenite_case_7_9_6.json new file mode 100644 index 0000000..f17a83e --- /dev/null +++ b/autobahn/client/tungstenite_case_7_9_6.json @@ -0,0 +1,120 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 241, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with invalid close code 1016", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with protocol error code or drop TCP", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=241&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ynKwW8s7GfsjJf0VPR5zYg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: jpopbCSSOZz9TS2NYqt2gqXa4jw=\r\n\r\n", + "id": "7.9.6", + "isServer": true, + "localCloseCode": 1016, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1002, + "remoteCloseReason": "Protocol violation", + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "26": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.138Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323431266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x03f8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203f8" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 26, + "88948b5ed62d88b4865fe42ab94ee432f65be231ba4cff37b943" + ] + ], + [ + "RF", + [ + 20, + "0x03ea50726f746f636f6c2076696f6c6174696f6e" + ], + 8, + true, + 0, + true, + "8b5ed62d" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_9_7.html b/autobahn/client/tungstenite_case_7_9_7.html new file mode 100644 index 0000000..5ac22b2 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_9_7.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.9.7 : Pass - 0 ms @ 2020-09-07T18:44:02.139Z

+

Case Description

Send close with invalid close code 1100

+

Case Expectation

Clean close with protocol error code or drop TCP

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=242&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: S5OOXprENt6LiodVHhd72g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: ziAQQ7MxDOLLRXdyukYP1lnvnI4=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1100The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1002The close code the peer sent me in close frame (if any).
remoteCloseReasonProtocol violationThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
26126
2571257
Total2283
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323432266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               L
+
003 TX OCTETS: 8802044c
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 8894598cf45e5a66a42c36f89b3d36e0d42830e3983f2de59b30
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=20, MASKED=True, MASK=3539386366343565
+
               0x03ea50726f746f636f6c2076696f6c6174696f6e
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_9_7.json b/autobahn/client/tungstenite_case_7_9_7.json new file mode 100644 index 0000000..c95a1ba --- /dev/null +++ b/autobahn/client/tungstenite_case_7_9_7.json @@ -0,0 +1,120 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 242, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with invalid close code 1100", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with protocol error code or drop TCP", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=242&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: S5OOXprENt6LiodVHhd72g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: ziAQQ7MxDOLLRXdyukYP1lnvnI4=\r\n\r\n", + "id": "7.9.7", + "isServer": true, + "localCloseCode": 1100, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1002, + "remoteCloseReason": "Protocol violation", + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "26": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.139Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323432266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "\u0004L" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "8802044c" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 26, + "8894598cf45e5a66a42c36f89b3d36e0d42830e3983f2de59b30" + ] + ], + [ + "RF", + [ + 20, + "0x03ea50726f746f636f6c2076696f6c6174696f6e" + ], + 8, + true, + 0, + true, + "598cf45e" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_9_8.html b/autobahn/client/tungstenite_case_7_9_8.html new file mode 100644 index 0000000..b1d2742 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_9_8.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.9.8 : Pass - 0 ms @ 2020-09-07T18:44:02.140Z

+

Case Description

Send close with invalid close code 2000

+

Case Expectation

Clean close with protocol error code or drop TCP

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=243&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: hjVZ3K7LG12RugI+mqooQQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: K/LbX7NoXIkJyGxlx/IMV7Z0+xU=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode2000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1002The close code the peer sent me in close frame (if any).
remoteCloseReasonProtocol violationThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
26126
2571257
Total2283
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323433266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x07d0
+
003 TX OCTETS: 880207d0
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 88942e5034a32dba64d141245bc0413c14d5473f58c25a395bcd
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=20, MASKED=True, MASK=3265353033346133
+
               0x03ea50726f746f636f6c2076696f6c6174696f6e
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_9_8.json b/autobahn/client/tungstenite_case_7_9_8.json new file mode 100644 index 0000000..6661513 --- /dev/null +++ b/autobahn/client/tungstenite_case_7_9_8.json @@ -0,0 +1,120 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 243, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with invalid close code 2000", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with protocol error code or drop TCP", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=243&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: hjVZ3K7LG12RugI+mqooQQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: K/LbX7NoXIkJyGxlx/IMV7Z0+xU=\r\n\r\n", + "id": "7.9.8", + "isServer": true, + "localCloseCode": 2000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1002, + "remoteCloseReason": "Protocol violation", + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "26": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.140Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323433266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x07d0" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880207d0" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 26, + "88942e5034a32dba64d141245bc0413c14d5473f58c25a395bcd" + ] + ], + [ + "RF", + [ + 20, + "0x03ea50726f746f636f6c2076696f6c6174696f6e" + ], + 8, + true, + 0, + true, + "2e5034a3" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_7_9_9.html b/autobahn/client/tungstenite_case_7_9_9.html new file mode 100644 index 0000000..f75c27d --- /dev/null +++ b/autobahn/client/tungstenite_case_7_9_9.html @@ -0,0 +1,293 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 7.9.9 : Pass - 0 ms @ 2020-09-07T18:44:02.140Z

+

Case Description

Send close with invalid close code 2999

+

Case Expectation

Clean close with protocol error code or drop TCP

+ +

+ Case Outcome

Actual events match at least one expected.

+ Expected:
{'OK': []}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=244&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: KFiOLPR92p17TQ0CiJB7Yg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: +5oeeVdVEtz6VkYRy+0AJLumYNw=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode2999The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1002The close code the peer sent me in close frame (if any).
remoteCloseReasonProtocol violationThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + +
Chop SizeCountOctets
26126
2571257
Total2283
+

Octets Transmitted by Chop Size

+ + + + + +
Chop SizeCountOctets
414
2061206
Total2210
+

Frames Received by Opcode

+ + + + +
OpcodeCount
81
Total1
+

Frames Transmitted by Opcode

+ + + + +
OpcodeCount
81
Total1
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323434266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x0bb7
+
003 TX OCTETS: 88020bb7
+
004 FAIL CONNECTION AFTER 1.000000 sec
+
005 RX OCTETS: 88945504350f56ee657d3a705a6c3a6815793c6b596e216d5a61
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=20, MASKED=True, MASK=3535303433353066
+
               0x03ea50726f746f636f6c2076696f6c6174696f6e
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_7_9_9.json b/autobahn/client/tungstenite_case_7_9_9.json new file mode 100644 index 0000000..287f0da --- /dev/null +++ b/autobahn/client/tungstenite_case_7_9_9.json @@ -0,0 +1,120 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 244, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send close with invalid close code 2999", + "droppedByMe": true, + "duration": 0, + "expectation": "Clean close with protocol error code or drop TCP", + "expected": { + "OK": [] + }, + "expectedClose": { + "closeCode": [ + 1002 + ], + "closedByMe": true, + "requireClean": false + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=244&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: KFiOLPR92p17TQ0CiJB7Yg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: +5oeeVdVEtz6VkYRy+0AJLumYNw=\r\n\r\n", + "id": "7.9.9", + "isServer": true, + "localCloseCode": 2999, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1002, + "remoteCloseReason": "Protocol violation", + "reportCompressionRatio": false, + "reportTime": false, + "result": "Actual events match at least one expected.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "8": 1 + }, + "rxOctetStats": { + "26": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:02.140Z", + "trafficStats": null, + "txFrameStats": { + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323434266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TF", + [ + 2, + "0x0bb7" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "88020bb7" + ], + false + ], + [ + "KL", + 1 + ], + [ + "RO", + [ + 26, + "88945504350f56ee657d3a705a6c3a6815793c6b596e216d5a61" + ] + ], + [ + "RF", + [ + 20, + "0x03ea50726f746f636f6c2076696f6c6174696f6e" + ], + 8, + true, + 0, + true, + "5504350f" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_1_1.html b/autobahn/client/tungstenite_case_9_1_1.html new file mode 100644 index 0000000..0902d4f --- /dev/null +++ b/autobahn/client/tungstenite_case_9_1_1.html @@ -0,0 +1,298 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.1.1 : Pass - 2 ms @ 2020-09-07T18:44:02.142Z

+

Case Description

Send text message message with payload of length 64 * 2**10 (64k).

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received text message of length 65536.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=247&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: +ookj2WFCEHLasIUMzXsfA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Mr+ssytEjGlU3yV66m6V9ENgeQg=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536165536
Total465815
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
65546165546
Total365756
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323437266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 10.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882504032fe53a8
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3530343033326665
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_1_1.json b/autobahn/client/tungstenite_case_9_1_1.json new file mode 100644 index 0000000..5dd584c --- /dev/null +++ b/autobahn/client/tungstenite_case_9_1_1.json @@ -0,0 +1,123 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 247, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text message message with payload of length 64 * 2**10 (64k).", + "droppedByMe": true, + "duration": 2, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=247&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: +ookj2WFCEHLasIUMzXsfA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Mr+ssytEjGlU3yV66m6V9ENgeQg=\r\n\r\n", + "id": "9.1.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received text message of length 65536.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 1 + }, + "started": "2020-09-07T18:44:02.142Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "65546": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323437266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 10 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882504032fe53a8" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "504032fe" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_1_2.html b/autobahn/client/tungstenite_case_9_1_2.html new file mode 100644 index 0000000..d4c209a --- /dev/null +++ b/autobahn/client/tungstenite_case_9_1_2.html @@ -0,0 +1,298 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.1.2 : Pass - 4 ms @ 2020-09-07T18:44:02.144Z

+

Case Description

Send text message message with payload of length 256 * 2**10 (256k).

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received text message of length 262144.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=248&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: zQoexWZCR2LnCz2Hu1EBsw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: ZdM7puwM+HLzGuhqGSqG7AiQRyI=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
655364262144
Total7262423
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
2621541262154
Total3262364
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323438266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 10.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 888214d50a49173d
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3134643530613439
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_1_2.json b/autobahn/client/tungstenite_case_9_1_2.json new file mode 100644 index 0000000..fd5082d --- /dev/null +++ b/autobahn/client/tungstenite_case_9_1_2.json @@ -0,0 +1,123 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 248, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text message message with payload of length 256 * 2**10 (256k).", + "droppedByMe": true, + "duration": 4, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=248&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: zQoexWZCR2LnCz2Hu1EBsw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: ZdM7puwM+HLzGuhqGSqG7AiQRyI=\r\n\r\n", + "id": "9.1.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received text message of length 262144.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 4 + }, + "started": "2020-09-07T18:44:02.144Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "262154": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323438266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 10 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888214d50a49173d" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "14d50a49" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_1_3.html b/autobahn/client/tungstenite_case_9_1_3.html new file mode 100644 index 0000000..ea5a27f --- /dev/null +++ b/autobahn/client/tungstenite_case_9_1_3.html @@ -0,0 +1,298 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.1.3 : Pass - 15 ms @ 2020-09-07T18:44:02.148Z

+

Case Description

Send text message message with payload of length 1 * 2**20 (1M).

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received text message of length 1048576.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=249&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: UHCfeESdKohnC5jADrEL0g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 6lD4pDgD3VqrzcIgRl8+FpSfHn4=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536161048576
Total191048855
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
104858611048586
Total31048796
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323439266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 88828def74c68e07
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3864656637346336
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_1_3.json b/autobahn/client/tungstenite_case_9_1_3.json new file mode 100644 index 0000000..345056b --- /dev/null +++ b/autobahn/client/tungstenite_case_9_1_3.json @@ -0,0 +1,123 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 249, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text message message with payload of length 1 * 2**20 (1M).", + "droppedByMe": true, + "duration": 15, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=249&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: UHCfeESdKohnC5jADrEL0g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 6lD4pDgD3VqrzcIgRl8+FpSfHn4=\r\n\r\n", + "id": "9.1.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received text message of length 1048576.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 16 + }, + "started": "2020-09-07T18:44:02.148Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "1048586": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323439266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88828def74c68e07" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "8def74c6" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_1_4.html b/autobahn/client/tungstenite_case_9_1_4.html new file mode 100644 index 0000000..5ce58aa --- /dev/null +++ b/autobahn/client/tungstenite_case_9_1_4.html @@ -0,0 +1,298 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.1.4 : Pass - 63 ms @ 2020-09-07T18:44:02.164Z

+

Case Description

Send text message message with payload of length 4 * 2**20 (4M).

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received text message of length 4194304.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=250&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 0yZPXfE0oWCjxPwCAiX5MQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: rEdDtzMenmj2TuuFquSesluWTFs=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536644194304
Total674194583
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
419431414194314
Total34194524
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323530266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882a0826de3a36a
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6130383236646533
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_1_4.json b/autobahn/client/tungstenite_case_9_1_4.json new file mode 100644 index 0000000..69d67ac --- /dev/null +++ b/autobahn/client/tungstenite_case_9_1_4.json @@ -0,0 +1,123 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 250, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text message message with payload of length 4 * 2**20 (4M).", + "droppedByMe": true, + "duration": 63, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=250&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 0yZPXfE0oWCjxPwCAiX5MQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: rEdDtzMenmj2TuuFquSesluWTFs=\r\n\r\n", + "id": "9.1.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received text message of length 4194304.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 64 + }, + "started": "2020-09-07T18:44:02.164Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "4194314": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323530266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882a0826de3a36a" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "a0826de3" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_1_5.html b/autobahn/client/tungstenite_case_9_1_5.html new file mode 100644 index 0000000..38cf680 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_1_5.html @@ -0,0 +1,298 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.1.5 : Pass - 123 ms @ 2020-09-07T18:44:02.228Z

+

Case Description

Send text message message with payload of length 8 * 2**20 (8M).

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received text message of length 8388608.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=251&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: JHpVX01PdJ/mKkhvhBAJjQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: X+WejKdctZHz6UIT0Dkg9UTF08w=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
655361288388608
Total1318388887
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
838861818388618
Total38388828
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323531266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882c5373c49c6df
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6335333733633439
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_1_5.json b/autobahn/client/tungstenite_case_9_1_5.json new file mode 100644 index 0000000..31ee017 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_1_5.json @@ -0,0 +1,123 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 251, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text message message with payload of length 8 * 2**20 (8M).", + "droppedByMe": true, + "duration": 123, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=251&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: JHpVX01PdJ/mKkhvhBAJjQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: X+WejKdctZHz6UIT0Dkg9UTF08w=\r\n\r\n", + "id": "9.1.5", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received text message of length 8388608.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 128 + }, + "started": "2020-09-07T18:44:02.228Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "8388618": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323531266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882c5373c49c6df" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "c5373c49" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_1_6.html b/autobahn/client/tungstenite_case_9_1_6.html new file mode 100644 index 0000000..d56bdf0 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_1_6.html @@ -0,0 +1,298 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.1.6 : Pass - 240 ms @ 2020-09-07T18:44:02.352Z

+

Case Description

Send text message message with payload of length 16 * 2**20 (16M).

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received text message of length 16777216.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=252&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 2csJURI9k8k1Z2qS5YcblA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: zADHwGr6hu8ay3DvoOvlvLaAO0w=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
6553625616777216
Total25916777495
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
16777226116777226
Total316777436
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323532266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 88829ea0632c9d48
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3965613036333263
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_1_6.json b/autobahn/client/tungstenite_case_9_1_6.json new file mode 100644 index 0000000..8003666 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_1_6.json @@ -0,0 +1,123 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 252, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text message message with payload of length 16 * 2**20 (16M).", + "droppedByMe": true, + "duration": 240, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=252&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 2csJURI9k8k1Z2qS5YcblA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: zADHwGr6hu8ay3DvoOvlvLaAO0w=\r\n\r\n", + "id": "9.1.6", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received text message of length 16777216.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 256 + }, + "started": "2020-09-07T18:44:02.352Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "16777226": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323532266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88829ea0632c9d48" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "9ea0632c" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_2_1.html b/autobahn/client/tungstenite_case_9_2_1.html new file mode 100644 index 0000000..2f17efa --- /dev/null +++ b/autobahn/client/tungstenite_case_9_2_1.html @@ -0,0 +1,298 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.2.1 : Pass - 1 ms @ 2020-09-07T18:44:02.595Z

+

Case Description

Send binary message message with payload of length 64 * 2**10 (64k).

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+ +

+ Case Outcome

Received binary message of length 65536.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=253&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ZZwZyey3WdB//ilk4VJolg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: ykLfCvYql7i+o48xkJplu51Xphc=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536165536
Total465815
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
65546165546
Total365756
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323533266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 10.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 88820fd350cc0c3b
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3066643335306363
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_2_1.json b/autobahn/client/tungstenite_case_9_2_1.json new file mode 100644 index 0000000..22115e4 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_2_1.json @@ -0,0 +1,123 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 253, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send binary message message with payload of length 64 * 2**10 (64k).", + "droppedByMe": true, + "duration": 1, + "expectation": "Receive echo'ed binary message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=253&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ZZwZyey3WdB//ilk4VJolg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: ykLfCvYql7i+o48xkJplu51Xphc=\r\n\r\n", + "id": "9.2.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received binary message of length 65536.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 1 + }, + "started": "2020-09-07T18:44:02.595Z", + "trafficStats": null, + "txFrameStats": { + "2": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "65546": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323533266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 10 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88820fd350cc0c3b" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "0fd350cc" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_2_2.html b/autobahn/client/tungstenite_case_9_2_2.html new file mode 100644 index 0000000..89f4f8c --- /dev/null +++ b/autobahn/client/tungstenite_case_9_2_2.html @@ -0,0 +1,298 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.2.2 : Pass - 4 ms @ 2020-09-07T18:44:02.597Z

+

Case Description

Send binary message message with payload of length 256 * 2**10 (256k).

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+ +

+ Case Outcome

Received binary message of length 262144.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=254&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: +LJAVbycAqjGm/yUVgTjqQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: GEAFbWTyqbrDnUNQZL4dRQ4lGxA=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
655364262144
Total7262423
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
2621541262154
Total3262364
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323534266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 10.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 88828fbe06748c56
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3866626530363734
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_2_2.json b/autobahn/client/tungstenite_case_9_2_2.json new file mode 100644 index 0000000..8431538 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_2_2.json @@ -0,0 +1,123 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 254, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send binary message message with payload of length 256 * 2**10 (256k).", + "droppedByMe": true, + "duration": 4, + "expectation": "Receive echo'ed binary message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=254&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: +LJAVbycAqjGm/yUVgTjqQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: GEAFbWTyqbrDnUNQZL4dRQ4lGxA=\r\n\r\n", + "id": "9.2.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received binary message of length 262144.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 4 + }, + "started": "2020-09-07T18:44:02.597Z", + "trafficStats": null, + "txFrameStats": { + "2": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "262154": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323534266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 10 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88828fbe06748c56" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "8fbe0674" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_2_3.html b/autobahn/client/tungstenite_case_9_2_3.html new file mode 100644 index 0000000..8065fcf --- /dev/null +++ b/autobahn/client/tungstenite_case_9_2_3.html @@ -0,0 +1,298 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.2.3 : Pass - 14 ms @ 2020-09-07T18:44:02.601Z

+

Case Description

Send binary message message with payload of length 1 * 2**20 (1M).

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+ +

+ Case Outcome

Received binary message of length 1048576.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=255&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: /qfUipgDfrZmWMHFjVKAgg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: hb55+W7pjqX9ufbo/vkOqIYgImY=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536161048576
Total191048855
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
104858611048586
Total31048796
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323535266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 10.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882e7661688e48e
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6537363631363838
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_2_3.json b/autobahn/client/tungstenite_case_9_2_3.json new file mode 100644 index 0000000..35030b8 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_2_3.json @@ -0,0 +1,123 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 255, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send binary message message with payload of length 1 * 2**20 (1M).", + "droppedByMe": true, + "duration": 14, + "expectation": "Receive echo'ed binary message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=255&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: /qfUipgDfrZmWMHFjVKAgg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: hb55+W7pjqX9ufbo/vkOqIYgImY=\r\n\r\n", + "id": "9.2.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received binary message of length 1048576.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 16 + }, + "started": "2020-09-07T18:44:02.601Z", + "trafficStats": null, + "txFrameStats": { + "2": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "1048586": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323535266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 10 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882e7661688e48e" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "e7661688" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_2_4.html b/autobahn/client/tungstenite_case_9_2_4.html new file mode 100644 index 0000000..583fae9 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_2_4.html @@ -0,0 +1,298 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.2.4 : Pass - 56 ms @ 2020-09-07T18:44:02.615Z

+

Case Description

Send binary message message with payload of length 4 * 2**20 (4M).

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+ +

+ Case Outcome

Received binary message of length 4194304.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=256&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ksP6DnEZQOgFLWK25IJ8qw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: PUKOtKWdI1+N4td0eWnbEAApnHY=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536644194304
Total674194583
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
419431414194314
Total34194524
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323536266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 10.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 888296911ddd9579
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3936393131646464
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_2_4.json b/autobahn/client/tungstenite_case_9_2_4.json new file mode 100644 index 0000000..b2614c2 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_2_4.json @@ -0,0 +1,123 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 256, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send binary message message with payload of length 4 * 2**20 (4M).", + "droppedByMe": true, + "duration": 56, + "expectation": "Receive echo'ed binary message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=256&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ksP6DnEZQOgFLWK25IJ8qw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: PUKOtKWdI1+N4td0eWnbEAApnHY=\r\n\r\n", + "id": "9.2.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received binary message of length 4194304.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 64 + }, + "started": "2020-09-07T18:44:02.615Z", + "trafficStats": null, + "txFrameStats": { + "2": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "4194314": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323536266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 10 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888296911ddd9579" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "96911ddd" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_2_5.html b/autobahn/client/tungstenite_case_9_2_5.html new file mode 100644 index 0000000..30dbda6 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_2_5.html @@ -0,0 +1,298 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.2.5 : Pass - 113 ms @ 2020-09-07T18:44:02.671Z

+

Case Description

Send binary message message with payload of length 8 * 2**20 (16M).

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+ +

+ Case Outcome

Received binary message of length 8388608.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=257&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: idmOyxSO8yvqcOk3RhyvOA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: VAU2BToKVx208Bmv5o7/J797+b4=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
655361288388608
Total1318388887
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
838861818388618
Total38388828
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323537266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882b19fe108b277
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6231396665313038
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_2_5.json b/autobahn/client/tungstenite_case_9_2_5.json new file mode 100644 index 0000000..495b360 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_2_5.json @@ -0,0 +1,123 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 257, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send binary message message with payload of length 8 * 2**20 (16M).", + "droppedByMe": true, + "duration": 113, + "expectation": "Receive echo'ed binary message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=257&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: idmOyxSO8yvqcOk3RhyvOA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: VAU2BToKVx208Bmv5o7/J797+b4=\r\n\r\n", + "id": "9.2.5", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received binary message of length 8388608.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 128 + }, + "started": "2020-09-07T18:44:02.671Z", + "trafficStats": null, + "txFrameStats": { + "2": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "8388618": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323537266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882b19fe108b277" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "b19fe108" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_2_6.html b/autobahn/client/tungstenite_case_9_2_6.html new file mode 100644 index 0000000..c101563 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_2_6.html @@ -0,0 +1,298 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.2.6 : Pass - 245 ms @ 2020-09-07T18:44:02.786Z

+

Case Description

Send binary message message with payload of length 16 * 2**20 (16M).

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+ +

+ Case Outcome

Received binary message of length 16777216.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=258&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 4s1KR8NLp1KlTps5YgW7EA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Wn5BXKoWo1WRSdO5DMo4PIx3MYk=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
6553625616777216
Total25916777495
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
16777226116777226
Total316777436
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323538266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882c193bcd7c27b
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6331393362636437
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_2_6.json b/autobahn/client/tungstenite_case_9_2_6.json new file mode 100644 index 0000000..3db15aa --- /dev/null +++ b/autobahn/client/tungstenite_case_9_2_6.json @@ -0,0 +1,123 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 258, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send binary message message with payload of length 16 * 2**20 (16M).", + "droppedByMe": true, + "duration": 245, + "expectation": "Receive echo'ed binary message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=258&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 4s1KR8NLp1KlTps5YgW7EA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Wn5BXKoWo1WRSdO5DMo4PIx3MYk=\r\n\r\n", + "id": "9.2.6", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received binary message of length 16777216.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 256 + }, + "started": "2020-09-07T18:44:02.786Z", + "trafficStats": null, + "txFrameStats": { + "2": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "16777226": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323538266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882c193bcd7c27b" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "c193bcd7" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_3_1.html b/autobahn/client/tungstenite_case_9_3_1.html new file mode 100644 index 0000000..1da2b08 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_3_1.html @@ -0,0 +1,300 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.3.1 : Pass - 387 ms @ 2020-09-07T18:44:03.033Z

+

Case Description

Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 64.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received text message of length 4194304.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=259&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: JRgoJDnUC2apPxHVgt904Q==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 6fK+bajZH/ygcfvYMx/ogDV+b54=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536644194304
Total674194583
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
212
414
66655364325376
2061206
Total655394325588
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
065536
11
81
Total65538
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323539266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882cbb7bd84c85f
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6362623762643834
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_3_1.json b/autobahn/client/tungstenite_case_9_3_1.json new file mode 100644 index 0000000..b64652f --- /dev/null +++ b/autobahn/client/tungstenite_case_9_3_1.json @@ -0,0 +1,125 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 259, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 64.", + "droppedByMe": true, + "duration": 387, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=259&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: JRgoJDnUC2apPxHVgt904Q==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 6fK+bajZH/ygcfvYMx/ogDV+b54=\r\n\r\n", + "id": "9.3.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received text message of length 4194304.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 64 + }, + "started": "2020-09-07T18:44:03.033Z", + "trafficStats": null, + "txFrameStats": { + "0": 65536, + "1": 1, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "66": 65536, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323539266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882cbb7bd84c85f" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "cbb7bd84" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_3_2.html b/autobahn/client/tungstenite_case_9_3_2.html new file mode 100644 index 0000000..804af3b --- /dev/null +++ b/autobahn/client/tungstenite_case_9_3_2.html @@ -0,0 +1,300 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.3.2 : Pass - 126 ms @ 2020-09-07T18:44:03.421Z

+

Case Description

Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 256.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received text message of length 4194304.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=260&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Qz3ORxG0A7WSfrWRDQTqFA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 4FNkwPWvhhu6dNdjdF9ae+OUa9Y=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536644194304
Total674194583
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
212
414
2061206
260163844259840
Total163874260052
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
016384
11
81
Total16386
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323630266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882316bb16c3283
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3331366262313663
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_3_2.json b/autobahn/client/tungstenite_case_9_3_2.json new file mode 100644 index 0000000..e06e0a0 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_3_2.json @@ -0,0 +1,125 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 260, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 256.", + "droppedByMe": true, + "duration": 126, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=260&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Qz3ORxG0A7WSfrWRDQTqFA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 4FNkwPWvhhu6dNdjdF9ae+OUa9Y=\r\n\r\n", + "id": "9.3.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received text message of length 4194304.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 64 + }, + "started": "2020-09-07T18:44:03.421Z", + "trafficStats": null, + "txFrameStats": { + "0": 16384, + "1": 1, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "206": 1, + "260": 16384 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323630266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882316bb16c3283" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "316bb16c" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_3_3.html b/autobahn/client/tungstenite_case_9_3_3.html new file mode 100644 index 0000000..903068e --- /dev/null +++ b/autobahn/client/tungstenite_case_9_3_3.html @@ -0,0 +1,300 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.3.3 : Pass - 56 ms @ 2020-09-07T18:44:03.547Z

+

Case Description

Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 1k.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received text message of length 4194304.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=261&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: ugqzefEmbRATmpSRLlrdig==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: axK6QyL1gTPWC5nU2hhXzdMrFRU=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536644194304
Total674194583
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
212
414
2061206
102840964210688
Total40994210900
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
04096
11
81
Total4098
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323631266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882dffda80edc15
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6466666461383065
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_3_3.json b/autobahn/client/tungstenite_case_9_3_3.json new file mode 100644 index 0000000..9452ae2 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_3_3.json @@ -0,0 +1,125 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 261, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 1k.", + "droppedByMe": true, + "duration": 56, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=261&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: ugqzefEmbRATmpSRLlrdig==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: axK6QyL1gTPWC5nU2hhXzdMrFRU=\r\n\r\n", + "id": "9.3.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received text message of length 4194304.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 64 + }, + "started": "2020-09-07T18:44:03.547Z", + "trafficStats": null, + "txFrameStats": { + "0": 4096, + "1": 1, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "206": 1, + "1028": 4096 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323631266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882dffda80edc15" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "dffda80e" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_3_4.html b/autobahn/client/tungstenite_case_9_3_4.html new file mode 100644 index 0000000..d21949d --- /dev/null +++ b/autobahn/client/tungstenite_case_9_3_4.html @@ -0,0 +1,300 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.3.4 : Pass - 39 ms @ 2020-09-07T18:44:03.604Z

+

Case Description

Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 4k.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received text message of length 4194304.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=262&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: +fQR24xqNOUuwdQJx32eLw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 6vkRu3x2+DQ7GAIc7QVRhX/Vvkk=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536644194304
Total674194583
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
212
414
2061206
410010244198400
Total10274198612
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
01024
11
81
Total1026
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323632266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 88825b6b2a945883
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3562366232613934
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_3_4.json b/autobahn/client/tungstenite_case_9_3_4.json new file mode 100644 index 0000000..922f8b8 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_3_4.json @@ -0,0 +1,125 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 262, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 4k.", + "droppedByMe": true, + "duration": 39, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=262&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: +fQR24xqNOUuwdQJx32eLw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 6vkRu3x2+DQ7GAIc7QVRhX/Vvkk=\r\n\r\n", + "id": "9.3.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received text message of length 4194304.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 64 + }, + "started": "2020-09-07T18:44:03.604Z", + "trafficStats": null, + "txFrameStats": { + "0": 1024, + "1": 1, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "206": 1, + "4100": 1024 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323632266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88825b6b2a945883" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "5b6b2a94" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_3_5.html b/autobahn/client/tungstenite_case_9_3_5.html new file mode 100644 index 0000000..ba821aa --- /dev/null +++ b/autobahn/client/tungstenite_case_9_3_5.html @@ -0,0 +1,300 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.3.5 : Pass - 34 ms @ 2020-09-07T18:44:03.644Z

+

Case Description

Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 16k.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received text message of length 4194304.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=263&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: llsoFzsWCrFaqlkJc7VwGA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: +ePUX0QOCwYklx/asjDPn9CEgjg=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536644194304
Total674194583
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
212
414
2061206
163882564195328
Total2594195540
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
0256
11
81
Total258
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323633266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882606c69ab6384
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3630366336396162
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_3_5.json b/autobahn/client/tungstenite_case_9_3_5.json new file mode 100644 index 0000000..c323b91 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_3_5.json @@ -0,0 +1,125 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 263, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 16k.", + "droppedByMe": true, + "duration": 34, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=263&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: llsoFzsWCrFaqlkJc7VwGA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: +ePUX0QOCwYklx/asjDPn9CEgjg=\r\n\r\n", + "id": "9.3.5", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received text message of length 4194304.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 64 + }, + "started": "2020-09-07T18:44:03.644Z", + "trafficStats": null, + "txFrameStats": { + "0": 256, + "1": 1, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "206": 1, + "16388": 256 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323633266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882606c69ab6384" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "606c69ab" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_3_6.html b/autobahn/client/tungstenite_case_9_3_6.html new file mode 100644 index 0000000..a95ab6e --- /dev/null +++ b/autobahn/client/tungstenite_case_9_3_6.html @@ -0,0 +1,300 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.3.6 : Pass - 33 ms @ 2020-09-07T18:44:03.678Z

+

Case Description

Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 64k.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received text message of length 4194304.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=264&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: fpcpAov/iBT6Ug/pp6dtWw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: +F7TrjeIANJwlXIqKHzDYSUVJ/w=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536644194304
Total674194583
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
212
414
2061206
65546644194944
Total674195156
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
064
11
81
Total66
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323634266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882455fc41246b7
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3435356663343132
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_3_6.json b/autobahn/client/tungstenite_case_9_3_6.json new file mode 100644 index 0000000..f9eb74d --- /dev/null +++ b/autobahn/client/tungstenite_case_9_3_6.json @@ -0,0 +1,125 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 264, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 64k.", + "droppedByMe": true, + "duration": 33, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=264&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: fpcpAov/iBT6Ug/pp6dtWw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: +F7TrjeIANJwlXIqKHzDYSUVJ/w=\r\n\r\n", + "id": "9.3.6", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received text message of length 4194304.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 64 + }, + "started": "2020-09-07T18:44:03.678Z", + "trafficStats": null, + "txFrameStats": { + "0": 64, + "1": 1, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "206": 1, + "65546": 64 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323634266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882455fc41246b7" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "455fc412" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_3_7.html b/autobahn/client/tungstenite_case_9_3_7.html new file mode 100644 index 0000000..83ed715 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_3_7.html @@ -0,0 +1,300 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.3.7 : Pass - 33 ms @ 2020-09-07T18:44:03.712Z

+

Case Description

Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 256k.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received text message of length 4194304.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=265&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: qvLFg2S0EZ35i3wrqBIvlA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: ZLiFVMhw1UwJxk2YEIW2Cm7rrWg=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536644194304
Total674194583
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
212
414
2061206
262154164194464
Total194194676
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
016
11
81
Total18
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323635266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882085d4ff00bb5
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3038356434666630
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_3_7.json b/autobahn/client/tungstenite_case_9_3_7.json new file mode 100644 index 0000000..b9019b6 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_3_7.json @@ -0,0 +1,125 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 265, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 256k.", + "droppedByMe": true, + "duration": 33, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=265&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: qvLFg2S0EZ35i3wrqBIvlA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: ZLiFVMhw1UwJxk2YEIW2Cm7rrWg=\r\n\r\n", + "id": "9.3.7", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received text message of length 4194304.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 64 + }, + "started": "2020-09-07T18:44:03.712Z", + "trafficStats": null, + "txFrameStats": { + "0": 16, + "1": 1, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "206": 1, + "262154": 16 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323635266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882085d4ff00bb5" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "085d4ff0" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_3_8.html b/autobahn/client/tungstenite_case_9_3_8.html new file mode 100644 index 0000000..e691928 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_3_8.html @@ -0,0 +1,300 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.3.8 : Pass - 34 ms @ 2020-09-07T18:44:03.746Z

+

Case Description

Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 1M.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received text message of length 4194304.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=266&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: JBaUwue9xjBKKFecCcMmxg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: xUSea3ktFa3TU7hWFiT90OoeamU=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536644194304
Total674194583
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
212
414
2061206
104858644194344
Total74194556
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
04
11
81
Total6
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323636266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882f7466146f4ae
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6637343636313436
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_3_8.json b/autobahn/client/tungstenite_case_9_3_8.json new file mode 100644 index 0000000..80f31fa --- /dev/null +++ b/autobahn/client/tungstenite_case_9_3_8.json @@ -0,0 +1,125 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 266, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send fragmented text message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 1M.", + "droppedByMe": true, + "duration": 34, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=266&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: JBaUwue9xjBKKFecCcMmxg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: xUSea3ktFa3TU7hWFiT90OoeamU=\r\n\r\n", + "id": "9.3.8", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received text message of length 4194304.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 64 + }, + "started": "2020-09-07T18:44:03.746Z", + "trafficStats": null, + "txFrameStats": { + "0": 4, + "1": 1, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "206": 1, + "1048586": 4 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323636266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882f7466146f4ae" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "f7466146" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_3_9.html b/autobahn/client/tungstenite_case_9_3_9.html new file mode 100644 index 0000000..5218f67 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_3_9.html @@ -0,0 +1,298 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.3.9 : Pass - 37 ms @ 2020-09-07T18:44:03.781Z

+

Case Description

Send fragmented text message message with message payload of length 4 * 2**20 (8M). Sent out in fragments of 4M.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received text message of length 4194304.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=267&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: F/OTRc3J8VSMFjEC4TeW2w==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: QTHMRVBcklBxnV8aKpMO8h/MDf4=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536644194304
Total674194583
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
419431414194314
Total34194524
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323637266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882288467b02b6c
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3238383436376230
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_3_9.json b/autobahn/client/tungstenite_case_9_3_9.json new file mode 100644 index 0000000..6565581 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_3_9.json @@ -0,0 +1,123 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 267, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send fragmented text message message with message payload of length 4 * 2**20 (8M). Sent out in fragments of 4M.", + "droppedByMe": true, + "duration": 37, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=267&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: F/OTRc3J8VSMFjEC4TeW2w==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: QTHMRVBcklBxnV8aKpMO8h/MDf4=\r\n\r\n", + "id": "9.3.9", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received text message of length 4194304.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 64 + }, + "started": "2020-09-07T18:44:03.781Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "4194314": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323637266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882288467b02b6c" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "288467b0" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_4_1.html b/autobahn/client/tungstenite_case_9_4_1.html new file mode 100644 index 0000000..96ec0ac --- /dev/null +++ b/autobahn/client/tungstenite_case_9_4_1.html @@ -0,0 +1,300 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.4.1 : Pass - 362 ms @ 2020-09-07T18:44:03.818Z

+

Case Description

Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 64.

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+ +

+ Case Outcome

Received binary message of length 4194304.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=268&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: lH2XJdjP6sfVguntVsSx8Q==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: cUntWgxGKfjj8AALcS2X/GEYEcg=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536644194304
Total674194583
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
212
414
66655364325376
2061206
Total655394325588
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
065536
21
81
Total65538
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323638266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882f58646eaf66e
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6635383634366561
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_4_1.json b/autobahn/client/tungstenite_case_9_4_1.json new file mode 100644 index 0000000..2563e09 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_4_1.json @@ -0,0 +1,125 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 268, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 64.", + "droppedByMe": true, + "duration": 362, + "expectation": "Receive echo'ed binary message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=268&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: lH2XJdjP6sfVguntVsSx8Q==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: cUntWgxGKfjj8AALcS2X/GEYEcg=\r\n\r\n", + "id": "9.4.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received binary message of length 4194304.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 64 + }, + "started": "2020-09-07T18:44:03.818Z", + "trafficStats": null, + "txFrameStats": { + "0": 65536, + "2": 1, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "66": 65536, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323638266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882f58646eaf66e" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "f58646ea" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_4_2.html b/autobahn/client/tungstenite_case_9_4_2.html new file mode 100644 index 0000000..184ebc0 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_4_2.html @@ -0,0 +1,300 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.4.2 : Pass - 112 ms @ 2020-09-07T18:44:04.182Z

+

Case Description

Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 256.

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+ +

+ Case Outcome

Received binary message of length 4194304.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=269&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: oD5V+z4cGbhF/vyl+Xr/cQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: skK6EjDdADSlTklx1ZilN4SHYRU=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536644194304
Total674194583
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
212
414
2061206
260163844259840
Total163874260052
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
016384
21
81
Total16386
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323639266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 88824f36a2164cde
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3466333661323136
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_4_2.json b/autobahn/client/tungstenite_case_9_4_2.json new file mode 100644 index 0000000..d5b59a1 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_4_2.json @@ -0,0 +1,125 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 269, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 256.", + "droppedByMe": true, + "duration": 112, + "expectation": "Receive echo'ed binary message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=269&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: oD5V+z4cGbhF/vyl+Xr/cQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: skK6EjDdADSlTklx1ZilN4SHYRU=\r\n\r\n", + "id": "9.4.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received binary message of length 4194304.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 64 + }, + "started": "2020-09-07T18:44:04.182Z", + "trafficStats": null, + "txFrameStats": { + "0": 16384, + "2": 1, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "206": 1, + "260": 16384 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323639266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88824f36a2164cde" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "4f36a216" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_4_3.html b/autobahn/client/tungstenite_case_9_4_3.html new file mode 100644 index 0000000..a3540a0 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_4_3.html @@ -0,0 +1,300 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.4.3 : Pass - 40 ms @ 2020-09-07T18:44:04.294Z

+

Case Description

Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 1k.

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+ +

+ Case Outcome

Received binary message of length 4194304.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=270&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Hwc70xuG8Sop3bu21mWvFg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: l6CxFT0MWYUgQOVRynNaLJXs+SU=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536644194304
Total674194583
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
212
414
2061206
102840964210688
Total40994210900
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
04096
21
81
Total4098
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323730266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882d77d4166d495
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6437376434313636
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_4_3.json b/autobahn/client/tungstenite_case_9_4_3.json new file mode 100644 index 0000000..f9480cd --- /dev/null +++ b/autobahn/client/tungstenite_case_9_4_3.json @@ -0,0 +1,125 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 270, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 1k.", + "droppedByMe": true, + "duration": 40, + "expectation": "Receive echo'ed binary message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=270&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Hwc70xuG8Sop3bu21mWvFg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: l6CxFT0MWYUgQOVRynNaLJXs+SU=\r\n\r\n", + "id": "9.4.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received binary message of length 4194304.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 64 + }, + "started": "2020-09-07T18:44:04.294Z", + "trafficStats": null, + "txFrameStats": { + "0": 4096, + "2": 1, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "206": 1, + "1028": 4096 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323730266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882d77d4166d495" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "d77d4166" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_4_4.html b/autobahn/client/tungstenite_case_9_4_4.html new file mode 100644 index 0000000..108d893 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_4_4.html @@ -0,0 +1,300 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.4.4 : Pass - 24 ms @ 2020-09-07T18:44:04.335Z

+

Case Description

Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 4k.

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+ +

+ Case Outcome

Received binary message of length 4194304.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=271&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: D1gbaVefAwR1kHrMbhXQww==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: J76BiLoBckwPTMLNczl/PHE3OR0=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536644194304
Total674194583
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
212
414
2061206
410010244198400
Total10274198612
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
01024
21
81
Total1026
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323731266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 888255ba7af95652
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3535626137616639
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_4_4.json b/autobahn/client/tungstenite_case_9_4_4.json new file mode 100644 index 0000000..4901d4c --- /dev/null +++ b/autobahn/client/tungstenite_case_9_4_4.json @@ -0,0 +1,125 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 271, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 4k.", + "droppedByMe": true, + "duration": 24, + "expectation": "Receive echo'ed binary message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=271&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: D1gbaVefAwR1kHrMbhXQww==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: J76BiLoBckwPTMLNczl/PHE3OR0=\r\n\r\n", + "id": "9.4.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received binary message of length 4194304.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 64 + }, + "started": "2020-09-07T18:44:04.335Z", + "trafficStats": null, + "txFrameStats": { + "0": 1024, + "2": 1, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "206": 1, + "4100": 1024 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323731266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888255ba7af95652" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "55ba7af9" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_4_5.html b/autobahn/client/tungstenite_case_9_4_5.html new file mode 100644 index 0000000..8c26bca --- /dev/null +++ b/autobahn/client/tungstenite_case_9_4_5.html @@ -0,0 +1,300 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.4.5 : Pass - 18 ms @ 2020-09-07T18:44:04.360Z

+

Case Description

Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 16k.

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+ +

+ Case Outcome

Received binary message of length 4194304.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=272&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: Fv2An5Rtjo/RH10l+eSrtg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: D16AD/YapmUx0xPVI7+e9B1r10E=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536644194304
Total674194583
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
212
414
2061206
163882564195328
Total2594195540
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
0256
21
81
Total258
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323732266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 88829a7787cd999f
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3961373738376364
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_4_5.json b/autobahn/client/tungstenite_case_9_4_5.json new file mode 100644 index 0000000..f4d767f --- /dev/null +++ b/autobahn/client/tungstenite_case_9_4_5.json @@ -0,0 +1,125 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 272, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 16k.", + "droppedByMe": true, + "duration": 18, + "expectation": "Receive echo'ed binary message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=272&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: Fv2An5Rtjo/RH10l+eSrtg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: D16AD/YapmUx0xPVI7+e9B1r10E=\r\n\r\n", + "id": "9.4.5", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received binary message of length 4194304.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 64 + }, + "started": "2020-09-07T18:44:04.360Z", + "trafficStats": null, + "txFrameStats": { + "0": 256, + "2": 1, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "206": 1, + "16388": 256 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323732266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88829a7787cd999f" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "9a7787cd" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_4_6.html b/autobahn/client/tungstenite_case_9_4_6.html new file mode 100644 index 0000000..d0564c3 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_4_6.html @@ -0,0 +1,300 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.4.6 : Pass - 18 ms @ 2020-09-07T18:44:04.379Z

+

Case Description

Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 64k.

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+ +

+ Case Outcome

Received binary message of length 4194304.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=273&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: dbpufn/s+a65Zp4o87X4wg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: UdNbns9HbWowHUoxeRF944Ppiv4=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536644194304
Total674194583
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
212
414
2061206
65546644194944
Total674195156
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
064
21
81
Total66
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323733266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882e1b77bd2e25f
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6531623737626432
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_4_6.json b/autobahn/client/tungstenite_case_9_4_6.json new file mode 100644 index 0000000..b242be0 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_4_6.json @@ -0,0 +1,125 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 273, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 64k.", + "droppedByMe": true, + "duration": 18, + "expectation": "Receive echo'ed binary message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=273&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: dbpufn/s+a65Zp4o87X4wg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: UdNbns9HbWowHUoxeRF944Ppiv4=\r\n\r\n", + "id": "9.4.6", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received binary message of length 4194304.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 64 + }, + "started": "2020-09-07T18:44:04.379Z", + "trafficStats": null, + "txFrameStats": { + "0": 64, + "2": 1, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "206": 1, + "65546": 64 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323733266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882e1b77bd2e25f" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "e1b77bd2" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_4_7.html b/autobahn/client/tungstenite_case_9_4_7.html new file mode 100644 index 0000000..e72ea4d --- /dev/null +++ b/autobahn/client/tungstenite_case_9_4_7.html @@ -0,0 +1,300 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.4.7 : Pass - 17 ms @ 2020-09-07T18:44:04.398Z

+

Case Description

Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 256k.

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+ +

+ Case Outcome

Received binary message of length 4194304.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=274&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: zIwYETBbsNNjN7AdVqolVQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 7FgIb9/FCUmkPEFA7jI5PWxrIQM=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536644194304
Total674194583
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
212
414
2061206
262154164194464
Total194194676
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
016
21
81
Total18
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323734266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 88828f24bb698ccc
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3866323462623639
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_4_7.json b/autobahn/client/tungstenite_case_9_4_7.json new file mode 100644 index 0000000..f78c0fd --- /dev/null +++ b/autobahn/client/tungstenite_case_9_4_7.json @@ -0,0 +1,125 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 274, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 256k.", + "droppedByMe": true, + "duration": 17, + "expectation": "Receive echo'ed binary message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=274&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: zIwYETBbsNNjN7AdVqolVQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 7FgIb9/FCUmkPEFA7jI5PWxrIQM=\r\n\r\n", + "id": "9.4.7", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received binary message of length 4194304.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 64 + }, + "started": "2020-09-07T18:44:04.398Z", + "trafficStats": null, + "txFrameStats": { + "0": 16, + "2": 1, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "206": 1, + "262154": 16 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323734266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88828f24bb698ccc" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "8f24bb69" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_4_8.html b/autobahn/client/tungstenite_case_9_4_8.html new file mode 100644 index 0000000..7cd545b --- /dev/null +++ b/autobahn/client/tungstenite_case_9_4_8.html @@ -0,0 +1,300 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.4.8 : Pass - 20 ms @ 2020-09-07T18:44:04.417Z

+

Case Description

Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 1M.

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+ +

+ Case Outcome

Received binary message of length 4194304.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=275&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: P0FyPp11yEsrCRerwZVXIA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: ykt4MrnFuAkTOywj/2s9RFBhkoo=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536644194304
Total674194583
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
212
414
2061206
104858644194344
Total74194556
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + + +
OpcodeCount
04
21
81
Total6
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323735266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882434b745340a3
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3433346237343533
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_4_8.json b/autobahn/client/tungstenite_case_9_4_8.json new file mode 100644 index 0000000..2ebcb56 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_4_8.json @@ -0,0 +1,125 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 275, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 1M.", + "droppedByMe": true, + "duration": 20, + "expectation": "Receive echo'ed binary message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=275&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: P0FyPp11yEsrCRerwZVXIA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: ykt4MrnFuAkTOywj/2s9RFBhkoo=\r\n\r\n", + "id": "9.4.8", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received binary message of length 4194304.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 64 + }, + "started": "2020-09-07T18:44:04.417Z", + "trafficStats": null, + "txFrameStats": { + "0": 4, + "2": 1, + "8": 1 + }, + "txOctetStats": { + "2": 1, + "4": 1, + "206": 1, + "1048586": 4 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323735266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882434b745340a3" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "434b7453" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_4_9.html b/autobahn/client/tungstenite_case_9_4_9.html new file mode 100644 index 0000000..07e5b60 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_4_9.html @@ -0,0 +1,298 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.4.9 : Pass - 23 ms @ 2020-09-07T18:44:04.437Z

+

Case Description

Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 4M.

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+ +

+ Case Outcome

Received binary message of length 4194304.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=276&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: JX+2Poovkp3vej+AxngjLg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: uyN2JhmWiarHrPsWIRkfthM5fhk=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536644194304
Total674194583
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
419431414194314
Total34194524
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323736266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 100.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882622c628261c4
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3632326336323832
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_4_9.json b/autobahn/client/tungstenite_case_9_4_9.json new file mode 100644 index 0000000..e314bcf --- /dev/null +++ b/autobahn/client/tungstenite_case_9_4_9.json @@ -0,0 +1,123 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 276, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send fragmented binary message message with message payload of length 4 * 2**20 (4M). Sent out in fragments of 4M.", + "droppedByMe": true, + "duration": 23, + "expectation": "Receive echo'ed binary message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=276&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: JX+2Poovkp3vej+AxngjLg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: uyN2JhmWiarHrPsWIRkfthM5fhk=\r\n\r\n", + "id": "9.4.9", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received binary message of length 4194304.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 64 + }, + "started": "2020-09-07T18:44:04.437Z", + "trafficStats": null, + "txFrameStats": { + "2": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "4194314": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323736266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 100 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882622c628261c4" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "622c6282" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_5_1.html b/autobahn/client/tungstenite_case_9_5_1.html new file mode 100644 index 0000000..9896958 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_5_1.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.5.1 : Pass - 617 ms @ 2020-09-07T18:44:04.461Z

+

Case Description

Send text message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 64 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received text message of length 1048576.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=277&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: +aAfoiZvw/azqxJS31MOMw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 4m5n+CpB4wClIK9QJjTbBmo2h/I=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536161048576
Total191048855
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
414
10110
64163841048576
2061206
Total163871048796
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323737266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 1000.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882759de7177675
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3735396465373137
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_5_1.json b/autobahn/client/tungstenite_case_9_5_1.json new file mode 100644 index 0000000..3277f83 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_5_1.json @@ -0,0 +1,124 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 277, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 64 octets.", + "droppedByMe": true, + "duration": 617, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=277&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: +aAfoiZvw/azqxJS31MOMw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 4m5n+CpB4wClIK9QJjTbBmo2h/I=\r\n\r\n", + "id": "9.5.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received text message of length 1048576.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 16 + }, + "started": "2020-09-07T18:44:04.461Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "10": 1, + "64": 16384, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323737266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 1000 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882759de7177675" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "759de717" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_5_2.html b/autobahn/client/tungstenite_case_9_5_2.html new file mode 100644 index 0000000..d5e862d --- /dev/null +++ b/autobahn/client/tungstenite_case_9_5_2.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.5.2 : Pass - 290 ms @ 2020-09-07T18:44:05.078Z

+

Case Description

Send text message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 128 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received text message of length 1048576.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=278&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: c21jJ4K4pW//PnE4eVkqBw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: C709/OwLEC45IqflZ8tjfP9RqGM=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536161048576
Total191048855
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
414
10110
12881921048576
2061206
Total81951048796
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323738266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 1000.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882448a94244762
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3434386139343234
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_5_2.json b/autobahn/client/tungstenite_case_9_5_2.json new file mode 100644 index 0000000..72e3b14 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_5_2.json @@ -0,0 +1,124 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 278, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 128 octets.", + "droppedByMe": true, + "duration": 290, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=278&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: c21jJ4K4pW//PnE4eVkqBw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: C709/OwLEC45IqflZ8tjfP9RqGM=\r\n\r\n", + "id": "9.5.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received text message of length 1048576.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 16 + }, + "started": "2020-09-07T18:44:05.078Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "10": 1, + "128": 8192, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323738266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 1000 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882448a94244762" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "448a9424" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_5_3.html b/autobahn/client/tungstenite_case_9_5_3.html new file mode 100644 index 0000000..fe92dc8 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_5_3.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.5.3 : Pass - 155 ms @ 2020-09-07T18:44:05.368Z

+

Case Description

Send text message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 256 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received text message of length 1048576.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=279&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 0crU1VqmRDOa93O+US9rgw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: rYm+OJXVWIgphE7ZMK4dYt76UEw=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536161048576
Total191048855
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
414
10110
2061206
25640961048576
Total40991048796
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323739266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 1000.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882ca27ef27c9cf
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6361323765663237
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_5_3.json b/autobahn/client/tungstenite_case_9_5_3.json new file mode 100644 index 0000000..f46911b --- /dev/null +++ b/autobahn/client/tungstenite_case_9_5_3.json @@ -0,0 +1,124 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 279, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 256 octets.", + "droppedByMe": true, + "duration": 155, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=279&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 0crU1VqmRDOa93O+US9rgw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: rYm+OJXVWIgphE7ZMK4dYt76UEw=\r\n\r\n", + "id": "9.5.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received text message of length 1048576.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 16 + }, + "started": "2020-09-07T18:44:05.368Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "10": 1, + "206": 1, + "256": 4096 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323739266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 1000 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882ca27ef27c9cf" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "ca27ef27" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_5_4.html b/autobahn/client/tungstenite_case_9_5_4.html new file mode 100644 index 0000000..f7db723 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_5_4.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.5.4 : Pass - 83 ms @ 2020-09-07T18:44:05.523Z

+

Case Description

Send text message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 512 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received text message of length 1048576.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=280&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: CYG9kdx5pj+U98pwY8/B9w==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: BRMxQxMGrPXnNmKkuC75KzVjAag=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536161048576
Total191048855
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
414
10110
2061206
51220481048576
Total20511048796
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323830266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 1000.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882552fa67f56c7
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3535326661363766
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_5_4.json b/autobahn/client/tungstenite_case_9_5_4.json new file mode 100644 index 0000000..01b5448 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_5_4.json @@ -0,0 +1,124 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 280, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 512 octets.", + "droppedByMe": true, + "duration": 83, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=280&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: CYG9kdx5pj+U98pwY8/B9w==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: BRMxQxMGrPXnNmKkuC75KzVjAag=\r\n\r\n", + "id": "9.5.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received text message of length 1048576.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 16 + }, + "started": "2020-09-07T18:44:05.523Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "10": 1, + "206": 1, + "512": 2048 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323830266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 1000 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882552fa67f56c7" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "552fa67f" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_5_5.html b/autobahn/client/tungstenite_case_9_5_5.html new file mode 100644 index 0000000..f06ad2d --- /dev/null +++ b/autobahn/client/tungstenite_case_9_5_5.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.5.5 : Pass - 49 ms @ 2020-09-07T18:44:05.607Z

+

Case Description

Send text message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 1024 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received text message of length 1048576.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=281&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: /VIEAOyWRrPryOKc4SVr3A==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: jfM3+c46kBzpPLeFAjFzOCGcnn4=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536161048576
Total191048855
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
414
10110
2061206
102410241048576
Total10271048796
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323831266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 1000.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882e5bb7e10e653
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6535626237653130
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_5_5.json b/autobahn/client/tungstenite_case_9_5_5.json new file mode 100644 index 0000000..ebf132f --- /dev/null +++ b/autobahn/client/tungstenite_case_9_5_5.json @@ -0,0 +1,124 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 281, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 1024 octets.", + "droppedByMe": true, + "duration": 49, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=281&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: /VIEAOyWRrPryOKc4SVr3A==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: jfM3+c46kBzpPLeFAjFzOCGcnn4=\r\n\r\n", + "id": "9.5.5", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received text message of length 1048576.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 16 + }, + "started": "2020-09-07T18:44:05.607Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "10": 1, + "206": 1, + "1024": 1024 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323831266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 1000 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882e5bb7e10e653" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "e5bb7e10" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_5_6.html b/autobahn/client/tungstenite_case_9_5_6.html new file mode 100644 index 0000000..e433fea --- /dev/null +++ b/autobahn/client/tungstenite_case_9_5_6.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.5.6 : Pass - 30 ms @ 2020-09-07T18:44:05.656Z

+

Case Description

Send text message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 2048 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received text message of length 1048576.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=282&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: d8tAyKxcNXONsqU6t/1Tzw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: zVI7A3iuUOwDOL5m17D3vDod41w=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536161048576
Total191048855
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
414
10110
2061206
20485121048576
Total5151048796
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323832266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 1000.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882c559aa6bc6b1
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6335353961613662
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_5_6.json b/autobahn/client/tungstenite_case_9_5_6.json new file mode 100644 index 0000000..1dd2412 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_5_6.json @@ -0,0 +1,124 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 282, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send text message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 2048 octets.", + "droppedByMe": true, + "duration": 30, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=282&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: d8tAyKxcNXONsqU6t/1Tzw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: zVI7A3iuUOwDOL5m17D3vDod41w=\r\n\r\n", + "id": "9.5.6", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received text message of length 1048576.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 16 + }, + "started": "2020-09-07T18:44:05.656Z", + "trafficStats": null, + "txFrameStats": { + "1": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "10": 1, + "206": 1, + "2048": 512 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323832266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 1000 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882c559aa6bc6b1" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "c559aa6b" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_6_1.html b/autobahn/client/tungstenite_case_9_6_1.html new file mode 100644 index 0000000..79a2476 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_6_1.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.6.1 : Pass - 557 ms @ 2020-09-07T18:44:05.687Z

+

Case Description

Send binary message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 64 octets.

+

Case Expectation

Receive echo'ed binary message (with payload as sent).

+ +

+ Case Outcome

Received binary message of length 1048576.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=283&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: toc/iCXsm0eTo7JY7ZpX1Q==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: XRtz9olDLmsRdlVUVlS22fKXy/c=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536161048576
Total191048855
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
414
10110
64163841048576
2061206
Total163871048796
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323833266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 1000.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 8882ce8f52b6cd67
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=6365386635326236
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_6_1.json b/autobahn/client/tungstenite_case_9_6_1.json new file mode 100644 index 0000000..7bd1646 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_6_1.json @@ -0,0 +1,124 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 283, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send binary message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 64 octets.", + "droppedByMe": true, + "duration": 557, + "expectation": "Receive echo'ed binary message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=283&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: toc/iCXsm0eTo7JY7ZpX1Q==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: XRtz9olDLmsRdlVUVlS22fKXy/c=\r\n\r\n", + "id": "9.6.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received binary message of length 1048576.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 16 + }, + "started": "2020-09-07T18:44:05.687Z", + "trafficStats": null, + "txFrameStats": { + "2": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "10": 1, + "64": 16384, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323833266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 1000 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882ce8f52b6cd67" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "ce8f52b6" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_6_2.html b/autobahn/client/tungstenite_case_9_6_2.html new file mode 100644 index 0000000..dcab083 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_6_2.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.6.2 : Pass - 284 ms @ 2020-09-07T18:44:06.244Z

+

Case Description

Send binary message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 128 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received binary message of length 1048576.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=284&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: atd4m3qWov0lENCJjM/BKQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: Q8wkdXbPb3N0W8FvKQng8AQQT0c=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536161048576
Total191048855
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
414
10110
12881921048576
2061206
Total81951048796
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323834266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 1000.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 888251e358ff520b
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3531653335386666
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_6_2.json b/autobahn/client/tungstenite_case_9_6_2.json new file mode 100644 index 0000000..d5167ac --- /dev/null +++ b/autobahn/client/tungstenite_case_9_6_2.json @@ -0,0 +1,124 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 284, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send binary message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 128 octets.", + "droppedByMe": true, + "duration": 284, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=284&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: atd4m3qWov0lENCJjM/BKQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Q8wkdXbPb3N0W8FvKQng8AQQT0c=\r\n\r\n", + "id": "9.6.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received binary message of length 1048576.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 16 + }, + "started": "2020-09-07T18:44:06.244Z", + "trafficStats": null, + "txFrameStats": { + "2": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "10": 1, + "128": 8192, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323834266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 1000 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888251e358ff520b" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "51e358ff" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_6_3.html b/autobahn/client/tungstenite_case_9_6_3.html new file mode 100644 index 0000000..bf05636 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_6_3.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.6.3 : Pass - 147 ms @ 2020-09-07T18:44:06.528Z

+

Case Description

Send binary message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 256 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received binary message of length 1048576.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=285&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 4aQC6K6vgQoYl8Th6ezN1w==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: NW/ZElzxFwMe5F5sqpt3FLaYQws=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536161048576
Total191048855
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
414
10110
2061206
25640961048576
Total40991048796
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323835266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 1000.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 88821067b084138f
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3130363762303834
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_6_3.json b/autobahn/client/tungstenite_case_9_6_3.json new file mode 100644 index 0000000..7d3b9c8 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_6_3.json @@ -0,0 +1,124 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 285, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send binary message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 256 octets.", + "droppedByMe": true, + "duration": 147, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=285&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 4aQC6K6vgQoYl8Th6ezN1w==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: NW/ZElzxFwMe5F5sqpt3FLaYQws=\r\n\r\n", + "id": "9.6.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received binary message of length 1048576.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 16 + }, + "started": "2020-09-07T18:44:06.528Z", + "trafficStats": null, + "txFrameStats": { + "2": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "10": 1, + "206": 1, + "256": 4096 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323835266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 1000 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88821067b084138f" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "1067b084" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_6_4.html b/autobahn/client/tungstenite_case_9_6_4.html new file mode 100644 index 0000000..3d26d9b --- /dev/null +++ b/autobahn/client/tungstenite_case_9_6_4.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.6.4 : Pass - 83 ms @ 2020-09-07T18:44:06.676Z

+

Case Description

Send binary message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 512 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received binary message of length 1048576.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=286&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 7WDk18W5tTSJ6cCLWbVVxA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: DejXKY/kJPyuN74g5w90QAkFtgg=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536161048576
Total191048855
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
414
10110
2061206
51220481048576
Total20511048796
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323836266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 1000.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 88820ac7e83b092f
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3061633765383362
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_6_4.json b/autobahn/client/tungstenite_case_9_6_4.json new file mode 100644 index 0000000..38aed54 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_6_4.json @@ -0,0 +1,124 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 286, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send binary message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 512 octets.", + "droppedByMe": true, + "duration": 83, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=286&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 7WDk18W5tTSJ6cCLWbVVxA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: DejXKY/kJPyuN74g5w90QAkFtgg=\r\n\r\n", + "id": "9.6.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received binary message of length 1048576.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 16 + }, + "started": "2020-09-07T18:44:06.676Z", + "trafficStats": null, + "txFrameStats": { + "2": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "10": 1, + "206": 1, + "512": 2048 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323836266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 1000 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88820ac7e83b092f" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "0ac7e83b" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_6_5.html b/autobahn/client/tungstenite_case_9_6_5.html new file mode 100644 index 0000000..e602486 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_6_5.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.6.5 : Pass - 48 ms @ 2020-09-07T18:44:06.759Z

+

Case Description

Send binary message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 1024 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received binary message of length 1048576.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=287&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: wlt6lSxmIApeT8REITmdIQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 1TeuMXj3tdJZkE1/6gMtK1Mf0VU=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536161048576
Total191048855
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
414
10110
2061206
102410241048576
Total10271048796
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323837266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 1000.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 88823549e2b436a1
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3335343965326234
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_6_5.json b/autobahn/client/tungstenite_case_9_6_5.json new file mode 100644 index 0000000..f9f5f0f --- /dev/null +++ b/autobahn/client/tungstenite_case_9_6_5.json @@ -0,0 +1,124 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 287, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send binary message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 1024 octets.", + "droppedByMe": true, + "duration": 48, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=287&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: wlt6lSxmIApeT8REITmdIQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 1TeuMXj3tdJZkE1/6gMtK1Mf0VU=\r\n\r\n", + "id": "9.6.5", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received binary message of length 1048576.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 16 + }, + "started": "2020-09-07T18:44:06.759Z", + "trafficStats": null, + "txFrameStats": { + "2": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "10": 1, + "206": 1, + "1024": 1024 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323837266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 1000 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88823549e2b436a1" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "3549e2b4" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_6_6.html b/autobahn/client/tungstenite_case_9_6_6.html new file mode 100644 index 0000000..575316a --- /dev/null +++ b/autobahn/client/tungstenite_case_9_6_6.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.6.6 : Pass - 30 ms @ 2020-09-07T18:44:06.807Z

+

Case Description

Send binary message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 2048 octets.

+

Case Expectation

Receive echo'ed text message (with payload as sent).

+ +

+ Case Outcome

Received binary message of length 1048576.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=288&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: AUQ2M7cY9nxMLMqDf/4YAA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: wUx6ULf38P7fmme5DimUyEtDyHg=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + +
Chop SizeCountOctets
818
14114
2571257
65536161048576
Total191048855
+

Octets Transmitted by Chop Size

+ + + + + + + +
Chop SizeCountOctets
414
10110
2061206
20485121048576
Total5151048796
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21
81
Total2
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323838266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 CLOSE CONNECTION AFTER 1000.000000 sec
+
003 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
004 TX OCTETS: 880203e8
+
005 RX OCTETS: 888264abe7416743
+
006 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3634616265373431
+
               0x03e8
+
007 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_6_6.json b/autobahn/client/tungstenite_case_9_6_6.json new file mode 100644 index 0000000..a16c818 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_6_6.json @@ -0,0 +1,124 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 288, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send binary message message with payload of length 1 * 2**20 (1M). Sent out data in chops of 2048 octets.", + "droppedByMe": true, + "duration": 30, + "expectation": "Receive echo'ed text message (with payload as sent).", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=288&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: AUQ2M7cY9nxMLMqDf/4YAA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: wUx6ULf38P7fmme5DimUyEtDyHg=\r\n\r\n", + "id": "9.6.6", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Received binary message of length 1048576.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "14": 1, + "257": 1, + "65536": 16 + }, + "started": "2020-09-07T18:44:06.807Z", + "trafficStats": null, + "txFrameStats": { + "2": 1, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "10": 1, + "206": 1, + "2048": 512 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323838266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "TI", + 1000 + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888264abe7416743" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "64abe741" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_7_1.html b/autobahn/client/tungstenite_case_9_7_1.html new file mode 100644 index 0000000..66b7ccd --- /dev/null +++ b/autobahn/client/tungstenite_case_9_7_1.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.7.1 : Pass - 64 ms @ 2020-09-07T18:44:06.838Z

+

Case Description

Send 1000 text messages of payload size 0 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed text messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=289&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: qAEmrwnGMZGb3VS9hI4LGg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: chLbBnOAMtA+KB6DuyPzYrY6Rqo=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
610006000
818
2571257
Total10026265
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
210002000
414
2061206
Total10022210
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323839266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888294ab6ea59743
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3934616236656135
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_7_1.json b/autobahn/client/tungstenite_case_9_7_1.json new file mode 100644 index 0000000..a5580e4 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_7_1.json @@ -0,0 +1,130 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 289, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 text messages of payload size 0 to measure implementation/network RTT (round trip time) / latency.", + "droppedByMe": true, + "duration": 64, + "expectation": "Receive echo'ed text messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=289&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: qAEmrwnGMZGb3VS9hI4LGg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: chLbBnOAMtA+KB6DuyPzYrY6Rqo=\r\n\r\n", + "id": "9.7.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "6": 1000, + "8": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:06.838Z", + "trafficStats": null, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 1000, + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323839266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888294ab6ea59743" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "94ab6ea5" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_7_2.html b/autobahn/client/tungstenite_case_9_7_2.html new file mode 100644 index 0000000..27568ba --- /dev/null +++ b/autobahn/client/tungstenite_case_9_7_2.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.7.2 : Pass - 68 ms @ 2020-09-07T18:44:06.902Z

+

Case Description

Send 1000 text messages of payload size 16 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed text messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=290&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: myoChLVjYFW3nKavFZ06ow==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 9zm9J8kb2l9hz5KVe6T7JtYH9yc=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
22100022000
2571257
Total100222265
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
18100018000
2061206
Total100218210
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323930266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882209498be237c
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3230393439386265
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_7_2.json b/autobahn/client/tungstenite_case_9_7_2.json new file mode 100644 index 0000000..73e9a3e --- /dev/null +++ b/autobahn/client/tungstenite_case_9_7_2.json @@ -0,0 +1,130 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 290, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 text messages of payload size 16 to measure implementation/network RTT (round trip time) / latency.", + "droppedByMe": true, + "duration": 68, + "expectation": "Receive echo'ed text messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=290&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: myoChLVjYFW3nKavFZ06ow==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 9zm9J8kb2l9hz5KVe6T7JtYH9yc=\r\n\r\n", + "id": "9.7.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "22": 1000, + "257": 1 + }, + "started": "2020-09-07T18:44:06.902Z", + "trafficStats": null, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "18": 1000, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323930266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882209498be237c" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "209498be" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_7_3.html b/autobahn/client/tungstenite_case_9_7_3.html new file mode 100644 index 0000000..fa09ad2 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_7_3.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.7.3 : Pass - 71 ms @ 2020-09-07T18:44:06.970Z

+

Case Description

Send 1000 text messages of payload size 64 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed text messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=291&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: qhH8a/Lm2tmaGWrchyFC9g==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: TZJhdVyDVesbbeyih4yAHJNBnM0=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
70100070000
2571257
Total100270265
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
66100066000
2061206
Total100266210
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323931266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888209a89e7c0a40
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3039613839653763
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_7_3.json b/autobahn/client/tungstenite_case_9_7_3.json new file mode 100644 index 0000000..8b98c4b --- /dev/null +++ b/autobahn/client/tungstenite_case_9_7_3.json @@ -0,0 +1,130 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 291, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 text messages of payload size 64 to measure implementation/network RTT (round trip time) / latency.", + "droppedByMe": true, + "duration": 71, + "expectation": "Receive echo'ed text messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=291&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: qhH8a/Lm2tmaGWrchyFC9g==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: TZJhdVyDVesbbeyih4yAHJNBnM0=\r\n\r\n", + "id": "9.7.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "70": 1000, + "257": 1 + }, + "started": "2020-09-07T18:44:06.970Z", + "trafficStats": null, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "66": 1000, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323931266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888209a89e7c0a40" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "09a89e7c" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_7_4.html b/autobahn/client/tungstenite_case_9_7_4.html new file mode 100644 index 0000000..0586768 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_7_4.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.7.4 : Pass - 81 ms @ 2020-09-07T18:44:07.042Z

+

Case Description

Send 1000 text messages of payload size 256 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed text messages (with payload as sent). Timeout case after 120 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=292&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 10CvzTJcbCFL/Fyof1l4PQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: AmA3f9jB6Ugm+jMiYSUg5Kh7O7o=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
2571257
2641000264000
Total1002264265
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
2601000260000
Total1002260210
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323932266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 120.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 888218a918a61b41
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3138613931386136
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_7_4.json b/autobahn/client/tungstenite_case_9_7_4.json new file mode 100644 index 0000000..77f6dcc --- /dev/null +++ b/autobahn/client/tungstenite_case_9_7_4.json @@ -0,0 +1,130 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 292, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 text messages of payload size 256 to measure implementation/network RTT (round trip time) / latency.", + "droppedByMe": true, + "duration": 81, + "expectation": "Receive echo'ed text messages (with payload as sent). Timeout case after 120 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=292&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 10CvzTJcbCFL/Fyof1l4PQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: AmA3f9jB6Ugm+jMiYSUg5Kh7O7o=\r\n\r\n", + "id": "9.7.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "264": 1000 + }, + "started": "2020-09-07T18:44:07.042Z", + "trafficStats": null, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "260": 1000 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323932266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 120 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "888218a918a61b41" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "18a918a6" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_7_5.html b/autobahn/client/tungstenite_case_9_7_5.html new file mode 100644 index 0000000..e87446f --- /dev/null +++ b/autobahn/client/tungstenite_case_9_7_5.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.7.5 : Pass - 113 ms @ 2020-09-07T18:44:07.123Z

+

Case Description

Send 1000 text messages of payload size 1024 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed text messages (with payload as sent). Timeout case after 240 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=293&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: SHJHNqdKhCxRTbC0KYc3gw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: b9z5ZMalUpCx2ZfsRTNKd3jqjHc=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
2571257
103210001032000
Total10021032265
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
102810001028000
Total10021028210
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323933266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 240.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88821c132b531ffb
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3163313332623533
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_7_5.json b/autobahn/client/tungstenite_case_9_7_5.json new file mode 100644 index 0000000..df287fe --- /dev/null +++ b/autobahn/client/tungstenite_case_9_7_5.json @@ -0,0 +1,130 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 293, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 text messages of payload size 1024 to measure implementation/network RTT (round trip time) / latency.", + "droppedByMe": true, + "duration": 113, + "expectation": "Receive echo'ed text messages (with payload as sent). Timeout case after 240 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=293&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: SHJHNqdKhCxRTbC0KYc3gw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: b9z5ZMalUpCx2ZfsRTNKd3jqjHc=\r\n\r\n", + "id": "9.7.5", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "1032": 1000 + }, + "started": "2020-09-07T18:44:07.123Z", + "trafficStats": null, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "1028": 1000 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323933266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 240 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88821c132b531ffb" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "1c132b53" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_7_6.html b/autobahn/client/tungstenite_case_9_7_6.html new file mode 100644 index 0000000..2a33a86 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_7_6.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.7.6 : Pass - 253 ms @ 2020-09-07T18:44:07.237Z

+

Case Description

Send 1000 text messages of payload size 4096 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed text messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=294&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: bpLcX+SPxc1nqYsBTGDzFA==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 0Qju0Xc1K3fleekNgiHx+ZpX3ak=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
2571257
410410004104000
Total10024104265
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
410010004100000
Total10024100210
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
11000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323934266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88822d89c7d82e61
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3264383963376438
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_7_6.json b/autobahn/client/tungstenite_case_9_7_6.json new file mode 100644 index 0000000..2f24003 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_7_6.json @@ -0,0 +1,130 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 294, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 text messages of payload size 4096 to measure implementation/network RTT (round trip time) / latency.", + "droppedByMe": true, + "duration": 253, + "expectation": "Receive echo'ed text messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=294&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: bpLcX+SPxc1nqYsBTGDzFA==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 0Qju0Xc1K3fleekNgiHx+ZpX3ak=\r\n\r\n", + "id": "9.7.6", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "1": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "4104": 1000 + }, + "started": "2020-09-07T18:44:07.237Z", + "trafficStats": null, + "txFrameStats": { + "1": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "4100": 1000 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323934266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88822d89c7d82e61" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "2d89c7d8" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_8_1.html b/autobahn/client/tungstenite_case_9_8_1.html new file mode 100644 index 0000000..5aa1c20 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_8_1.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.8.1 : Pass - 65 ms @ 2020-09-07T18:44:07.490Z

+

Case Description

Send 1000 binary messages of payload size 0 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed binary messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=295&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: XXz3ZCchLu0CbnZTLMv4Bw==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: KP8rnuoZ7dslasyydYBNwK9u6/Y=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
610006000
818
2571257
Total10026265
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
210002000
414
2061206
Total10022210
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323935266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88827e4058c87da8
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3765343035386338
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_8_1.json b/autobahn/client/tungstenite_case_9_8_1.json new file mode 100644 index 0000000..d6178a0 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_8_1.json @@ -0,0 +1,130 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 295, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 binary messages of payload size 0 to measure implementation/network RTT (round trip time) / latency.", + "droppedByMe": true, + "duration": 65, + "expectation": "Receive echo'ed binary messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=295&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: XXz3ZCchLu0CbnZTLMv4Bw==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: KP8rnuoZ7dslasyydYBNwK9u6/Y=\r\n\r\n", + "id": "9.8.1", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "6": 1000, + "8": 1, + "257": 1 + }, + "started": "2020-09-07T18:44:07.490Z", + "trafficStats": null, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "2": 1000, + "4": 1, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323935266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88827e4058c87da8" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "7e4058c8" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_8_2.html b/autobahn/client/tungstenite_case_9_8_2.html new file mode 100644 index 0000000..052e00b --- /dev/null +++ b/autobahn/client/tungstenite_case_9_8_2.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.8.2 : Pass - 69 ms @ 2020-09-07T18:44:07.555Z

+

Case Description

Send 1000 binary messages of payload size 16 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed binary messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=296&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: SrfA4rE5e7vTjNbtm1cK1w==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: srQJZCTF5ch3cRgxZrLxwXJZFlg=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
22100022000
2571257
Total100222265
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
18100018000
2061206
Total100218210
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323936266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88821b833eb3186b
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3162383333656233
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_8_2.json b/autobahn/client/tungstenite_case_9_8_2.json new file mode 100644 index 0000000..e5fe313 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_8_2.json @@ -0,0 +1,130 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 296, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 binary messages of payload size 16 to measure implementation/network RTT (round trip time) / latency.", + "droppedByMe": true, + "duration": 69, + "expectation": "Receive echo'ed binary messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=296&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: SrfA4rE5e7vTjNbtm1cK1w==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: srQJZCTF5ch3cRgxZrLxwXJZFlg=\r\n\r\n", + "id": "9.8.2", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "22": 1000, + "257": 1 + }, + "started": "2020-09-07T18:44:07.555Z", + "trafficStats": null, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "18": 1000, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323936266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88821b833eb3186b" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "1b833eb3" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_8_3.html b/autobahn/client/tungstenite_case_9_8_3.html new file mode 100644 index 0000000..abe982a --- /dev/null +++ b/autobahn/client/tungstenite_case_9_8_3.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.8.3 : Pass - 69 ms @ 2020-09-07T18:44:07.624Z

+

Case Description

Send 1000 binary messages of payload size 64 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed binary messages (with payload as sent). Timeout case after 60 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=297&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 5Wr0u8wFrpRlPB3gbYV6bQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 1dP8AnFNSov0us0FGJgx7tuekXA=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
70100070000
2571257
Total100270265
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
66100066000
2061206
Total100266210
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323937266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 60.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88824fbbb7a54c53
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3466626262376135
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_8_3.json b/autobahn/client/tungstenite_case_9_8_3.json new file mode 100644 index 0000000..acd05af --- /dev/null +++ b/autobahn/client/tungstenite_case_9_8_3.json @@ -0,0 +1,130 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 297, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 binary messages of payload size 64 to measure implementation/network RTT (round trip time) / latency.", + "droppedByMe": true, + "duration": 69, + "expectation": "Receive echo'ed binary messages (with payload as sent). Timeout case after 60 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=297&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 5Wr0u8wFrpRlPB3gbYV6bQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 1dP8AnFNSov0us0FGJgx7tuekXA=\r\n\r\n", + "id": "9.8.3", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "70": 1000, + "257": 1 + }, + "started": "2020-09-07T18:44:07.624Z", + "trafficStats": null, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "66": 1000, + "206": 1 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323937266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 60 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88824fbbb7a54c53" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "4fbbb7a5" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_8_4.html b/autobahn/client/tungstenite_case_9_8_4.html new file mode 100644 index 0000000..6de3eeb --- /dev/null +++ b/autobahn/client/tungstenite_case_9_8_4.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.8.4 : Pass - 78 ms @ 2020-09-07T18:44:07.694Z

+

Case Description

Send 1000 binary messages of payload size 256 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed binary messages (with payload as sent). Timeout case after 120 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=298&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: av0eHvYtaxFhInfEOs6udg==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: c/OC1F/SykS0wfOSvySwFkFBcdM=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
2571257
2641000264000
Total1002264265
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
2601000260000
Total1002260210
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323938266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 120.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88820a75a4da099d
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3061373561346461
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_8_4.json b/autobahn/client/tungstenite_case_9_8_4.json new file mode 100644 index 0000000..8a9adb6 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_8_4.json @@ -0,0 +1,130 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 298, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 binary messages of payload size 256 to measure implementation/network RTT (round trip time) / latency.", + "droppedByMe": true, + "duration": 78, + "expectation": "Receive echo'ed binary messages (with payload as sent). Timeout case after 120 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=298&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: av0eHvYtaxFhInfEOs6udg==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: c/OC1F/SykS0wfOSvySwFkFBcdM=\r\n\r\n", + "id": "9.8.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "264": 1000 + }, + "started": "2020-09-07T18:44:07.694Z", + "trafficStats": null, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "260": 1000 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323938266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 120 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88820a75a4da099d" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "0a75a4da" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_8_5.html b/autobahn/client/tungstenite_case_9_8_5.html new file mode 100644 index 0000000..d77ce30 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_8_5.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.8.5 : Pass - 105 ms @ 2020-09-07T18:44:07.773Z

+

Case Description

Send 1000 binary messages of payload size 1024 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed binary messages (with payload as sent). Timeout case after 240 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=299&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: TwglC6CsFAtTg/qtcBWP2Q==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: qBj3hw4yXdMBirvEYDlCRjFKVUA=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
2571257
103210001032000
Total10021032265
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
102810001028000
Total10021028210
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d323939266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 240.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 8882998ef1359a66
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3939386566313335
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_8_5.json b/autobahn/client/tungstenite_case_9_8_5.json new file mode 100644 index 0000000..ca0ac0e --- /dev/null +++ b/autobahn/client/tungstenite_case_9_8_5.json @@ -0,0 +1,130 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 299, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 binary messages of payload size 1024 to measure implementation/network RTT (round trip time) / latency.", + "droppedByMe": true, + "duration": 105, + "expectation": "Receive echo'ed binary messages (with payload as sent). Timeout case after 240 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=299&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: TwglC6CsFAtTg/qtcBWP2Q==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: qBj3hw4yXdMBirvEYDlCRjFKVUA=\r\n\r\n", + "id": "9.8.5", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "1032": 1000 + }, + "started": "2020-09-07T18:44:07.773Z", + "trafficStats": null, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "1028": 1000 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d323939266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 240 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "8882998ef1359a66" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "998ef135" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/tungstenite_case_9_8_6.html b/autobahn/client/tungstenite_case_9_8_6.html new file mode 100644 index 0000000..64f4115 --- /dev/null +++ b/autobahn/client/tungstenite_case_9_8_6.html @@ -0,0 +1,299 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

Tungstenite - Case 9.8.6 : Pass - 207 ms @ 2020-09-07T18:44:07.879Z

+

Case Description

Send 1000 binary messages of payload size 4096 to measure implementation/network RTT (round trip time) / latency.

+

Case Expectation

Receive echo'ed binary messages (with payload as sent). Timeout case after 480 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=300&agent=Tungstenite HTTP/1.1
+Host: localhost:9001
+Connection: Upgrade
+Upgrade: websocket
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: l4+HHgG0VfM00DoxhoCWXQ==
+sec-websocket-extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: K9qaEmY4LiPGpYGUijIgGTnUFyk=
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + +
Chop SizeCountOctets
818
2571257
410410004104000
Total10024104265
+

Octets Transmitted by Chop Size

+ + + + + + +
Chop SizeCountOctets
414
2061206
410010004100000
Total10024100210
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333030266167656e743d54756e677374656e69746520485454502f312e310d0a
+
               486f73743a206c6f63616c686f73 ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 480.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88825a55fc2659bd
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3561353566633236
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/tungstenite_case_9_8_6.json b/autobahn/client/tungstenite_case_9_8_6.json new file mode 100644 index 0000000..be369ce --- /dev/null +++ b/autobahn/client/tungstenite_case_9_8_6.json @@ -0,0 +1,130 @@ +{ + "agent": "Tungstenite", + "behavior": "OK", + "behaviorClose": "OK", + "case": 300, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 binary messages of payload size 4096 to measure implementation/network RTT (round trip time) / latency.", + "droppedByMe": true, + "duration": 207, + "expectation": "Receive echo'ed binary messages (with payload as sent). Timeout case after 480 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=300&agent=Tungstenite HTTP/1.1\r\nHost: localhost:9001\r\nConnection: Upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: l4+HHgG0VfM00DoxhoCWXQ==\r\nsec-websocket-extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: K9qaEmY4LiPGpYGUijIgGTnUFyk=\r\n\r\n", + "id": "9.8.6", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": false, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "257": 1, + "4104": 1000 + }, + "started": "2020-09-07T18:44:07.879Z", + "trafficStats": null, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "206": 1, + "4100": 1000 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 257, + "474554202f72756e436173653f636173653d333030266167656e743d54756e677374656e69746520485454502f312e310d0a486f73743a206c6f63616c686f73 ..." + ] + ], + [ + "TO", + [ + 206, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 480 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88825a55fc2659bd" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "5a55fc26" + ] + ] +} \ No newline at end of file diff --git a/autobahn/client/ws_rs_case_12_5_4.html b/autobahn/client/ws_rs_case_12_5_4.html new file mode 100644 index 0000000..5810e0e --- /dev/null +++ b/autobahn/client/ws_rs_case_12_5_4.html @@ -0,0 +1,989 @@ + + + + + + + + + +
+
Autobahn WebSocket Testsuite Report
+
Autobahn WebSocket
+
+

WS-RS - Case 12.5.4 : Pass - 452 ms @ 2020-09-08T17:26:02.658Z

+

Case Description

Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use default permessage-deflate offer.

+

Case Expectation

Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.

+ +

+ Case Outcome

Ok, received all echo'ed messages in time.

+ Expected:
{}

+ Observed:
[] +

+

Case Closing Behavior

Connection was properly closed (OK)

+

+

Opening Handshake

+
GET /runCase?case=377&agent=WS-RS HTTP/1.1
+Connection: Upgrade
+Host: 127.0.0.1:9001
+Sec-WebSocket-Version: 13
+Sec-WebSocket-Key: 0G0GvVMdYSSTyCQI7hlQJA==
+Upgrade: websocket
+Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits
+
HTTP/1.1 101 Switching Protocols
+Server: AutobahnTestSuite/0.8.1-0.10.9
+X-Powered-By: AutobahnPython/0.10.9
+Upgrade: WebSocket
+Connection: Upgrade
+Sec-WebSocket-Accept: 9oJ5Styb5ZxRz3BXHTNsv2HMUQ4=
+Sec-WebSocket-Extensions: permessage-deflate
+

+

Closing Behavior

+ + + + + + + + + + + + + + + +
KeyValueDescription
isServerTrueTrue, iff I (the fuzzer) am a server, and the peer is a client.
closedByMeTrueTrue, iff I have initiated closing handshake (that is, did send close first).
failedByMeFalseTrue, iff I have failed the WS connection (i.e. due to protocol error). Failing can be either by initiating closing handshake or brutal drop TCP.
droppedByMeTrueTrue, iff I dropped the TCP connection.
wasCleanTrueTrue, iff full WebSocket closing handshake was performed (close frame sent and received) _and_ the server dropped the TCP (which is its responsibility).
wasNotCleanReasonNoneWhen wasClean == False, the reason what happened.
wasServerConnectionDropTimeoutFalseWhen we are a client, and we expected the server to drop the TCP, but that didn't happen in time, this gets True.
wasOpenHandshakeTimeoutFalseWhen performing the opening handshake, but the peer did not finish in time, this gets True.
wasCloseHandshakeTimeoutFalseWhen we initiated a closing handshake, but the peer did not respond in time, this gets True.
localCloseCode1000The close code I sent in close frame (if any).
localCloseReasonNoneThe close reason I sent in close frame (if any).
remoteCloseCode1000The close code the peer sent me in close frame (if any).
remoteCloseReasonNoneThe close reason the peer sent me in close frame (if any).


+

Wire Statistics

+

Octets Received by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
818
205100
217147
33133
35135
39139
40280
41282
42142
43286
443132
453135
46146
47294
49298
51151
523156
53153
553165
562112
582116
59159
60160
622124
63163
643192
652130
66166
682136
692138
70170
712142
72172
73173
75175
78178
81181
82182
832166
842168
85185
862172
88188
90190
912182
923276
93193
952190
97197
1001100
1021102
1042208
1051105
1072214
1092218
1102220
1161116
1201120
1212242
1261126
1341134
1371137
1431143
1461146
1511151
1552310
1561156
1582316
1601160
1651165
1681168
1851185
1903570
1911191
1961196
2041204
2051205
2101210
2121212
2131213
2141214
2172434
2223666
2251225
2301230
2431243
2451245
2511251
2541254
2661266
2691269
2731273
2751275
2781278
2831283
2861286
2882576
2921292
2951295
2961296
2971297
2992598
3081308
3111311
3141314
3182636
3251325
3281328
3292658
3451345
3481348
3501350
3521352
3562712
3571357
3601360
3621362
3631363
3651365
3661366
3671367
3801380
3831383
3911391
3921392
4132826
4151415
4181418
4231423
4261426
4341434
4351435
4451445
4641464
4671467
4751475
4811481
4871487
4941494
5081508
5111511
5371537
5431543
54621092
54721094
5611561
5631563
5651565
5701570
58031740
5821582
5861586
5921592
5961596
5971597
6001600
6071607
6111611
6171617
6241624
6331633
6401640
64131923
6491649
6501650
6521652
6571657
6581658
65921318
6611661
6721672
6961696
6981698
7021702
7071707
7151715
7181718
7201720
7211721
7271727
7331733
7351735
7371737
7381738
7391739
7401740
7431743
7441744
7461746
74721494
7511751
7531753
7541754
7601760
7671767
7701770
7711771
7751775
77621552
7781778
77921558
78621572
7921792
7941794
79521590
7971797
8031803
80821616
8101810
81421628
8171817
8181818
81921638
8201820
8241824
82521650
8271827
8281828
83121662
83221664
8341834
8351835
8361836
83832514
8391839
84221684
84332529
8451845
8461846
84821696
8491849
85054250
8511851
85221704
85321706
85421708
8571857
85921718
8601860
86121722
8621862
86321726
8651865
8661866
8671867
86821736
86921738
8701870
8711871
8741874
8761876
8771877
87832634
87965274
88021760
88143524
8821882
8831883
8841884
8851885
88621772
8871887
8901890
89121782
8921892
89321786
89532685
89721794
89943596
90221804
90354515
9041904
90532715
90721814
9121912
9131913
91432742
9151915
91732751
9191919
92054600
9211921
9221922
9231923
9241924
92521850
92721854
9281928
93021860
9311931
93321866
9341934
9351935
93621872
93732811
9381938
9391939
9401940
9411941
94243768
94321886
94432832
94521890
94743788
94921898
95021900
9511951
9521952
95421908
95621912
9581958
96021920
9631963
9641964
96521930
96621932
96721934
97421948
9751975
9771977
9781978
9801980
98321966
98421968
9871987
9901990
9941994
99821996
9991999
100411004
100722014
101011010
101111011
101311013
102122042
102233066
102511025
102622052
102733081
103411034
103511035
103733111
1038493511734
Total1002812301
+

Octets Transmitted by Chop Size

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Chop SizeCountOctets
414
16580
177119
29129
37137
38276
393117
40140
41282
423126
433129
44288
45290
484192
50150
51151
522104
544216
562112
57157
58158
592118
60160
612122
62162
642128
65165
662132
67167
68168
69169
71171
73173
74174
76176
782156
80180
81181
822164
83183
84184
85185
862172
872174
88188
89189
932186
94194
952190
992198
1002200
1012202
1052210
1061106
1071107
1081108
1121112
1131113
1181118
1231123
1241124
1311131
1331133
1391139
1431143
1451145
1471147
1521152
1552310
1592318
1631163
1661166
1741174
1811181
1862372
1871187
1921192
1941194
2021202
2081208
2101210
2131213
2171217
2181218
2202440
2221222
2241224
2251225
2271227
2331233
2391239
2441244
2501250
2521252
2672534
2741274
2781278
2791279
2821282
2831283
2841284
2881288
2941294
2971297
2981298
2991299
3041304
3061306
3071307
3111311
3161316
3171317
3231323
3241324
3252650
3341334
3441344
3481348
3501350
3522704
3552710
3561356
3611361
3641364
3651365
3691369
3721372
3821382
3831383
3872774
4092818
4111411
4141414
4191419
4221422
4312862
4421442
4611461
4631463
4711471
4821482
4841484
4901490
5041504
5071507
5331533
5391539
54221084
5431543
5451545
5571557
5591559
5611561
5661566
57621152
5771577
5781578
5821582
5901590
59321186
5961596
6041604
6071607
6141614
6221622
6281628
63621272
6381638
6391639
6451645
6461646
6481648
6531653
6541654
65521310
6571657
6681668
6921692
6941694
6981698
7031703
7111711
7141714
7161716
7171717
7231723
7291729
7311731
7341734
7351735
7361736
7381738
7391739
7401740
7421742
74321486
7471747
7491749
7501750
7561756
7631763
7661766
7671767
7711771
77221544
7761776
77721554
78221564
7881788
7911791
7921792
7931793
7941794
7991799
80421608
8061806
8101810
8131813
81421628
8151815
8161816
8171817
8201820
8211821
8221822
8231823
8241824
8271827
82821656
8301830
8311831
83221664
83432502
8351835
83932517
8401840
84121682
8421842
8441844
8451845
84621692
8471847
84832544
84921698
85021700
8511851
8531853
8541854
85521710
8561856
8571857
8581858
85921718
8601860
86221724
86321726
8641864
86521730
86621732
8671867
8701870
8721872
8731873
87432622
87543500
8761876
87754385
87821756
87921758
8811881
88221764
88321766
8861886
88721774
8881888
88921778
89132673
89321786
89532685
8971897
8981898
89943596
90021800
90143604
90321806
90921818
91021820
9111911
9121912
91321826
91521830
91654580
9171917
9181918
9191919
9201920
92121842
9231923
92632778
92721854
92921858
9301930
9311931
93221864
93332799
9351935
9361936
93732811
93821876
9391939
94032820
94143764
94343772
94521890
9461946
9471947
94821896
9501950
95121902
9521952
9551955
9561956
9571957
9601960
96132883
96221924
96321926
97021940
9731973
97421948
9761976
97921958
98021960
9851985
9871987
9901990
99421988
9951995
100011000
100322006
100611006
100711007
100911009
101722034
101833054
102111021
102222044
102333069
102511025
102833084
103111031
1034493509762
Total1002808941
+

Frames Received by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

Frames Transmitted by Opcode

+ + + + + +
OpcodeCount
21000
81
Total1001
+

+

Wire Log

+
+
000 RX OCTETS: 474554202f72756e436173653f636173653d333737266167656e743d57532d525320485454502f312e310d0a436f6e6e6563
+
               74696f6e3a20557067726164650d ...
+
001 TX OCTETS: 485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e
+
               5465737453756974652f302e382e ...
+
002 WIRELOG DISABLED
+
003 CLOSE CONNECTION AFTER 240.000000 sec
+
004 WIRELOG ENABLED
+
005 TX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASK=None, PAYLOAD-REPEAT-LEN=None, CHOPSIZE=None, SYNC=False
+
               0x03e8
+
006 TX OCTETS: 880203e8
+
007 RX OCTETS: 88829c6914c49f81
+
008 RX FRAME : OPCODE=8, FIN=True, RSV=0, PAYLOAD-LEN=2, MASKED=True, MASK=3963363931346334
+
               0x03e8
+
009 TCP DROPPED BY ME
+
+

+ + diff --git a/autobahn/client/ws_rs_case_12_5_4.json b/autobahn/client/ws_rs_case_12_5_4.json new file mode 100644 index 0000000..66d0748 --- /dev/null +++ b/autobahn/client/ws_rs_case_12_5_4.json @@ -0,0 +1,836 @@ +{ + "agent": "WS-RS", + "behavior": "OK", + "behaviorClose": "OK", + "case": 377, + "closedByMe": true, + "createStats": true, + "createWirelog": true, + "description": "Send 1000 compressed messages each of payload size 1024, auto-fragment to 0 octets. Use default permessage-deflate offer.", + "droppedByMe": true, + "duration": 452, + "expectation": "Receive echo'ed messages (with payload as sent). Timeout case after 240 secs.", + "expected": {}, + "expectedClose": { + "closeCode": [ + 1000 + ], + "closedByMe": true, + "requireClean": true + }, + "failedByMe": false, + "httpRequest": "GET /runCase?case=377&agent=WS-RS HTTP/1.1\r\nConnection: Upgrade\r\nHost: 127.0.0.1:9001\r\nSec-WebSocket-Version: 13\r\nSec-WebSocket-Key: 0G0GvVMdYSSTyCQI7hlQJA==\r\nUpgrade: websocket\r\nSec-WebSocket-Extensions: permessage-deflate; client_max_window_bits\r\n\r\n", + "httpResponse": "HTTP/1.1 101 Switching Protocols\r\nServer: AutobahnTestSuite/0.8.1-0.10.9\r\nX-Powered-By: AutobahnPython/0.10.9\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: 9oJ5Styb5ZxRz3BXHTNsv2HMUQ4=\r\nSec-WebSocket-Extensions: permessage-deflate\r\n\r\n", + "id": "12.5.4", + "isServer": true, + "localCloseCode": 1000, + "localCloseReason": null, + "received": [], + "remoteCloseCode": 1000, + "remoteCloseReason": null, + "reportCompressionRatio": true, + "reportTime": true, + "result": "Ok, received all echo'ed messages in time.", + "resultClose": "Connection was properly closed", + "rxFrameStats": { + "2": 1000, + "8": 1 + }, + "rxOctetStats": { + "8": 1, + "20": 5, + "21": 7, + "33": 1, + "35": 1, + "39": 1, + "40": 2, + "41": 2, + "42": 1, + "43": 2, + "44": 3, + "45": 3, + "46": 1, + "47": 2, + "49": 2, + "51": 1, + "52": 3, + "53": 1, + "55": 3, + "56": 2, + "58": 2, + "59": 1, + "60": 1, + "62": 2, + "63": 1, + "64": 3, + "65": 2, + "66": 1, + "68": 2, + "69": 2, + "70": 1, + "71": 2, + "72": 1, + "73": 1, + "75": 1, + "78": 1, + "81": 1, + "82": 1, + "83": 2, + "84": 2, + "85": 1, + "86": 2, + "88": 1, + "90": 1, + "91": 2, + "92": 3, + "93": 1, + "95": 2, + "97": 1, + "100": 1, + "102": 1, + "104": 2, + "105": 1, + "107": 2, + "109": 2, + "110": 2, + "116": 1, + "120": 1, + "121": 2, + "126": 1, + "134": 1, + "137": 1, + "143": 1, + "146": 1, + "151": 1, + "155": 2, + "156": 1, + "158": 2, + "160": 1, + "165": 1, + "168": 1, + "185": 1, + "190": 3, + "191": 1, + "196": 1, + "204": 1, + "205": 1, + "210": 1, + "212": 1, + "213": 1, + "214": 1, + "217": 2, + "222": 3, + "225": 1, + "230": 1, + "243": 1, + "245": 1, + "251": 1, + "254": 1, + "266": 1, + "269": 1, + "273": 1, + "275": 1, + "278": 1, + "283": 1, + "286": 1, + "288": 2, + "292": 1, + "295": 1, + "296": 1, + "297": 1, + "299": 2, + "308": 1, + "311": 1, + "314": 1, + "318": 2, + "325": 1, + "328": 1, + "329": 2, + "345": 1, + "348": 1, + "350": 1, + "352": 1, + "356": 2, + "357": 1, + "360": 1, + "362": 1, + "363": 1, + "365": 1, + "366": 1, + "367": 1, + "380": 1, + "383": 1, + "391": 1, + "392": 1, + "413": 2, + "415": 1, + "418": 1, + "423": 1, + "426": 1, + "434": 1, + "435": 1, + "445": 1, + "464": 1, + "467": 1, + "475": 1, + "481": 1, + "487": 1, + "494": 1, + "508": 1, + "511": 1, + "537": 1, + "543": 1, + "546": 2, + "547": 2, + "561": 1, + "563": 1, + "565": 1, + "570": 1, + "580": 3, + "582": 1, + "586": 1, + "592": 1, + "596": 1, + "597": 1, + "600": 1, + "607": 1, + "611": 1, + "617": 1, + "624": 1, + "633": 1, + "640": 1, + "641": 3, + "649": 1, + "650": 1, + "652": 1, + "657": 1, + "658": 1, + "659": 2, + "661": 1, + "672": 1, + "696": 1, + "698": 1, + "702": 1, + "707": 1, + "715": 1, + "718": 1, + "720": 1, + "721": 1, + "727": 1, + "733": 1, + "735": 1, + "737": 1, + "738": 1, + "739": 1, + "740": 1, + "743": 1, + "744": 1, + "746": 1, + "747": 2, + "751": 1, + "753": 1, + "754": 1, + "760": 1, + "767": 1, + "770": 1, + "771": 1, + "775": 1, + "776": 2, + "778": 1, + "779": 2, + "786": 2, + "792": 1, + "794": 1, + "795": 2, + "797": 1, + "803": 1, + "808": 2, + "810": 1, + "814": 2, + "817": 1, + "818": 1, + "819": 2, + "820": 1, + "824": 1, + "825": 2, + "827": 1, + "828": 1, + "831": 2, + "832": 2, + "834": 1, + "835": 1, + "836": 1, + "838": 3, + "839": 1, + "842": 2, + "843": 3, + "845": 1, + "846": 1, + "848": 2, + "849": 1, + "850": 5, + "851": 1, + "852": 2, + "853": 2, + "854": 2, + "857": 1, + "859": 2, + "860": 1, + "861": 2, + "862": 1, + "863": 2, + "865": 1, + "866": 1, + "867": 1, + "868": 2, + "869": 2, + "870": 1, + "871": 1, + "874": 1, + "876": 1, + "877": 1, + "878": 3, + "879": 6, + "880": 2, + "881": 4, + "882": 1, + "883": 1, + "884": 1, + "885": 1, + "886": 2, + "887": 1, + "890": 1, + "891": 2, + "892": 1, + "893": 2, + "895": 3, + "897": 2, + "899": 4, + "902": 2, + "903": 5, + "904": 1, + "905": 3, + "907": 2, + "912": 1, + "913": 1, + "914": 3, + "915": 1, + "917": 3, + "919": 1, + "920": 5, + "921": 1, + "922": 1, + "923": 1, + "924": 1, + "925": 2, + "927": 2, + "928": 1, + "930": 2, + "931": 1, + "933": 2, + "934": 1, + "935": 1, + "936": 2, + "937": 3, + "938": 1, + "939": 1, + "940": 1, + "941": 1, + "942": 4, + "943": 2, + "944": 3, + "945": 2, + "947": 4, + "949": 2, + "950": 2, + "951": 1, + "952": 1, + "954": 2, + "956": 2, + "958": 1, + "960": 2, + "963": 1, + "964": 1, + "965": 2, + "966": 2, + "967": 2, + "974": 2, + "975": 1, + "977": 1, + "978": 1, + "980": 1, + "983": 2, + "984": 2, + "987": 1, + "990": 1, + "994": 1, + "998": 2, + "999": 1, + "1004": 1, + "1007": 2, + "1010": 1, + "1011": 1, + "1013": 1, + "1021": 2, + "1022": 3, + "1025": 1, + "1026": 2, + "1027": 3, + "1034": 1, + "1035": 1, + "1037": 3, + "1038": 493 + }, + "started": "2020-09-08T17:26:02.658Z", + "trafficStats": { + "incomingCompressionRatio": 0.7853984375, + "incomingOctetsAppLevel": 1024000, + "incomingOctetsWebSocketLevel": 804248, + "incomingOctetsWireLevel": 812042, + "incomingWebSocketFrames": 1000, + "incomingWebSocketMessages": 1000, + "incomingWebSocketOverhead": 0.009691040574549144, + "outgoingCompressionRatio": 0.7860244140625, + "outgoingOctetsAppLevel": 1024000, + "outgoingOctetsWebSocketLevel": 804889, + "outgoingOctetsWireLevel": 808685, + "outgoingWebSocketFrames": 1000, + "outgoingWebSocketMessages": 1000, + "outgoingWebSocketOverhead": 0.004716178255635249, + "preopenIncomingOctetsWireLevel": 251, + "preopenOutgoingOctetsWireLevel": 252 + }, + "txFrameStats": { + "2": 1000, + "8": 1 + }, + "txOctetStats": { + "4": 1, + "16": 5, + "17": 7, + "29": 1, + "37": 1, + "38": 2, + "39": 3, + "40": 1, + "41": 2, + "42": 3, + "43": 3, + "44": 2, + "45": 2, + "48": 4, + "50": 1, + "51": 1, + "52": 2, + "54": 4, + "56": 2, + "57": 1, + "58": 1, + "59": 2, + "60": 1, + "61": 2, + "62": 1, + "64": 2, + "65": 1, + "66": 2, + "67": 1, + "68": 1, + "69": 1, + "71": 1, + "73": 1, + "74": 1, + "76": 1, + "78": 2, + "80": 1, + "81": 1, + "82": 2, + "83": 1, + "84": 1, + "85": 1, + "86": 2, + "87": 2, + "88": 1, + "89": 1, + "93": 2, + "94": 1, + "95": 2, + "99": 2, + "100": 2, + "101": 2, + "105": 2, + "106": 1, + "107": 1, + "108": 1, + "112": 1, + "113": 1, + "118": 1, + "123": 1, + "124": 1, + "131": 1, + "133": 1, + "139": 1, + "143": 1, + "145": 1, + "147": 1, + "152": 1, + "155": 2, + "159": 2, + "163": 1, + "166": 1, + "174": 1, + "181": 1, + "186": 2, + "187": 1, + "192": 1, + "194": 1, + "202": 1, + "208": 1, + "210": 1, + "213": 1, + "217": 1, + "218": 1, + "220": 2, + "222": 1, + "224": 1, + "225": 1, + "227": 1, + "233": 1, + "239": 1, + "244": 1, + "250": 1, + "252": 1, + "267": 2, + "274": 1, + "278": 1, + "279": 1, + "282": 1, + "283": 1, + "284": 1, + "288": 1, + "294": 1, + "297": 1, + "298": 1, + "299": 1, + "304": 1, + "306": 1, + "307": 1, + "311": 1, + "316": 1, + "317": 1, + "323": 1, + "324": 1, + "325": 2, + "334": 1, + "344": 1, + "348": 1, + "350": 1, + "352": 2, + "355": 2, + "356": 1, + "361": 1, + "364": 1, + "365": 1, + "369": 1, + "372": 1, + "382": 1, + "383": 1, + "387": 2, + "409": 2, + "411": 1, + "414": 1, + "419": 1, + "422": 1, + "431": 2, + "442": 1, + "461": 1, + "463": 1, + "471": 1, + "482": 1, + "484": 1, + "490": 1, + "504": 1, + "507": 1, + "533": 1, + "539": 1, + "542": 2, + "543": 1, + "545": 1, + "557": 1, + "559": 1, + "561": 1, + "566": 1, + "576": 2, + "577": 1, + "578": 1, + "582": 1, + "590": 1, + "593": 2, + "596": 1, + "604": 1, + "607": 1, + "614": 1, + "622": 1, + "628": 1, + "636": 2, + "638": 1, + "639": 1, + "645": 1, + "646": 1, + "648": 1, + "653": 1, + "654": 1, + "655": 2, + "657": 1, + "668": 1, + "692": 1, + "694": 1, + "698": 1, + "703": 1, + "711": 1, + "714": 1, + "716": 1, + "717": 1, + "723": 1, + "729": 1, + "731": 1, + "734": 1, + "735": 1, + "736": 1, + "738": 1, + "739": 1, + "740": 1, + "742": 1, + "743": 2, + "747": 1, + "749": 1, + "750": 1, + "756": 1, + "763": 1, + "766": 1, + "767": 1, + "771": 1, + "772": 2, + "776": 1, + "777": 2, + "782": 2, + "788": 1, + "791": 1, + "792": 1, + "793": 1, + "794": 1, + "799": 1, + "804": 2, + "806": 1, + "810": 1, + "813": 1, + "814": 2, + "815": 1, + "816": 1, + "817": 1, + "820": 1, + "821": 1, + "822": 1, + "823": 1, + "824": 1, + "827": 1, + "828": 2, + "830": 1, + "831": 1, + "832": 2, + "834": 3, + "835": 1, + "839": 3, + "840": 1, + "841": 2, + "842": 1, + "844": 1, + "845": 1, + "846": 2, + "847": 1, + "848": 3, + "849": 2, + "850": 2, + "851": 1, + "853": 1, + "854": 1, + "855": 2, + "856": 1, + "857": 1, + "858": 1, + "859": 2, + "860": 1, + "862": 2, + "863": 2, + "864": 1, + "865": 2, + "866": 2, + "867": 1, + "870": 1, + "872": 1, + "873": 1, + "874": 3, + "875": 4, + "876": 1, + "877": 5, + "878": 2, + "879": 2, + "881": 1, + "882": 2, + "883": 2, + "886": 1, + "887": 2, + "888": 1, + "889": 2, + "891": 3, + "893": 2, + "895": 3, + "897": 1, + "898": 1, + "899": 4, + "900": 2, + "901": 4, + "903": 2, + "909": 2, + "910": 2, + "911": 1, + "912": 1, + "913": 2, + "915": 2, + "916": 5, + "917": 1, + "918": 1, + "919": 1, + "920": 1, + "921": 2, + "923": 1, + "926": 3, + "927": 2, + "929": 2, + "930": 1, + "931": 1, + "932": 2, + "933": 3, + "935": 1, + "936": 1, + "937": 3, + "938": 2, + "939": 1, + "940": 3, + "941": 4, + "943": 4, + "945": 2, + "946": 1, + "947": 1, + "948": 2, + "950": 1, + "951": 2, + "952": 1, + "955": 1, + "956": 1, + "957": 1, + "960": 1, + "961": 3, + "962": 2, + "963": 2, + "970": 2, + "973": 1, + "974": 2, + "976": 1, + "979": 2, + "980": 2, + "985": 1, + "987": 1, + "990": 1, + "994": 2, + "995": 1, + "1000": 1, + "1003": 2, + "1006": 1, + "1007": 1, + "1009": 1, + "1017": 2, + "1018": 3, + "1021": 1, + "1022": 2, + "1023": 3, + "1025": 1, + "1028": 3, + "1031": 1, + "1034": 493 + }, + "wasClean": true, + "wasCloseHandshakeTimeout": false, + "wasNotCleanReason": null, + "wasOpenHandshakeTimeout": false, + "wasServerConnectionDropTimeout": false, + "wirelog": [ + [ + "RO", + [ + 251, + "474554202f72756e436173653f636173653d333737266167656e743d57532d525320485454502f312e310d0a436f6e6e656374696f6e3a20557067726164650d ..." + ] + ], + [ + "TO", + [ + 252, + "485454502f312e312031303120537769746368696e672050726f746f636f6c730d0a5365727665723a204175746f6261686e5465737453756974652f302e382e ..." + ], + false + ], + [ + "WLM", + false + ], + [ + "TI", + 240 + ], + [ + "WLM", + true + ], + [ + "TF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + null, + null, + null, + false + ], + [ + "TO", + [ + 4, + "880203e8" + ], + false + ], + [ + "RO", + [ + 8, + "88829c6914c49f81" + ] + ], + [ + "RF", + [ + 2, + "0x03e8" + ], + 8, + true, + 0, + true, + "9c6914c4" + ] + ] +} \ No newline at end of file diff --git a/autobahn/server-results.json b/autobahn/server-results.json index 4b1ea8d..0dcbf05 100644 --- a/autobahn/server-results.json +++ b/autobahn/server-results.json @@ -120,1512 +120,1512 @@ "reportfile": "rust_websocket_case_10_1_1.json" }, "12.1.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_1_1.json" }, "12.1.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_1_10.json" }, "12.1.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_1_11.json" }, "12.1.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_1_12.json" }, "12.1.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_1_13.json" }, "12.1.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_1_14.json" }, "12.1.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_1_15.json" }, "12.1.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_1_16.json" }, "12.1.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_1_17.json" }, "12.1.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_1_18.json" }, "12.1.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_1_2.json" }, "12.1.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_1_3.json" }, "12.1.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_1_4.json" }, "12.1.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_1_5.json" }, "12.1.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_1_6.json" }, "12.1.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_1_7.json" }, "12.1.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_1_8.json" }, "12.1.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_1_9.json" }, "12.2.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_2_1.json" }, "12.2.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_2_10.json" }, "12.2.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_2_11.json" }, "12.2.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_2_12.json" }, "12.2.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_2_13.json" }, "12.2.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_2_14.json" }, "12.2.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_2_15.json" }, "12.2.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_2_16.json" }, "12.2.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_2_17.json" }, "12.2.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_2_18.json" }, "12.2.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_2_2.json" }, "12.2.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_2_3.json" }, "12.2.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_2_4.json" }, "12.2.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_2_5.json" }, "12.2.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_2_6.json" }, "12.2.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_2_7.json" }, "12.2.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_2_8.json" }, "12.2.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_2_9.json" }, "12.3.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_3_1.json" }, "12.3.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_3_10.json" }, "12.3.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_3_11.json" }, "12.3.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_3_12.json" }, "12.3.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_3_13.json" }, "12.3.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_3_14.json" }, "12.3.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_3_15.json" }, "12.3.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_3_16.json" }, "12.3.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_3_17.json" }, "12.3.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_3_18.json" }, "12.3.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_3_2.json" }, "12.3.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_3_3.json" }, "12.3.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_3_4.json" }, "12.3.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_3_5.json" }, "12.3.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_3_6.json" }, "12.3.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_3_7.json" }, "12.3.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_3_8.json" }, "12.3.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_3_9.json" }, "12.4.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_4_1.json" }, "12.4.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_4_10.json" }, "12.4.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_4_11.json" }, "12.4.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_4_12.json" }, "12.4.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_4_13.json" }, "12.4.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_4_14.json" }, "12.4.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_4_15.json" }, "12.4.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_4_16.json" }, "12.4.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_4_17.json" }, "12.4.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_4_18.json" }, "12.4.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_4_2.json" }, "12.4.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_4_3.json" }, "12.4.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_4_4.json" }, "12.4.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_4_5.json" }, "12.4.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_4_6.json" }, "12.4.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_4_7.json" }, "12.4.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_4_8.json" }, "12.4.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_4_9.json" }, "12.5.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_5_1.json" }, "12.5.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_5_10.json" }, "12.5.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_5_11.json" }, "12.5.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_5_12.json" }, "12.5.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_5_13.json" }, "12.5.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_5_14.json" }, "12.5.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_5_15.json" }, "12.5.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_5_16.json" }, "12.5.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_5_17.json" }, "12.5.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_5_18.json" }, "12.5.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_5_2.json" }, "12.5.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_5_3.json" }, "12.5.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_5_4.json" }, "12.5.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_5_5.json" }, "12.5.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_5_6.json" }, "12.5.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_5_7.json" }, "12.5.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_5_8.json" }, "12.5.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_12_5_9.json" }, "13.1.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_1_1.json" }, "13.1.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_1_10.json" }, "13.1.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_1_11.json" }, "13.1.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_1_12.json" }, "13.1.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_1_13.json" }, "13.1.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_1_14.json" }, "13.1.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_1_15.json" }, "13.1.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_1_16.json" }, "13.1.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_1_17.json" }, "13.1.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_1_18.json" }, "13.1.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_1_2.json" }, "13.1.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_1_3.json" }, "13.1.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_1_4.json" }, "13.1.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_1_5.json" }, "13.1.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_1_6.json" }, "13.1.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_1_7.json" }, "13.1.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_1_8.json" }, "13.1.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_1_9.json" }, "13.2.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_2_1.json" }, "13.2.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_2_10.json" }, "13.2.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_2_11.json" }, "13.2.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_2_12.json" }, "13.2.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_2_13.json" }, "13.2.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_2_14.json" }, "13.2.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_2_15.json" }, "13.2.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_2_16.json" }, "13.2.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_2_17.json" }, "13.2.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_2_18.json" }, "13.2.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_2_2.json" }, "13.2.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_2_3.json" }, "13.2.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_2_4.json" }, "13.2.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_2_5.json" }, "13.2.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_2_6.json" }, "13.2.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_2_7.json" }, "13.2.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_2_8.json" }, "13.2.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_2_9.json" }, "13.3.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_3_1.json" }, "13.3.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_3_10.json" }, "13.3.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_3_11.json" }, "13.3.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_3_12.json" }, "13.3.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_3_13.json" }, "13.3.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_3_14.json" }, "13.3.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_3_15.json" }, "13.3.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_3_16.json" }, "13.3.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_3_17.json" }, "13.3.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_3_18.json" }, "13.3.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_3_2.json" }, "13.3.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_3_3.json" }, "13.3.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_3_4.json" }, "13.3.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_3_5.json" }, "13.3.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_3_6.json" }, "13.3.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_3_7.json" }, "13.3.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_3_8.json" }, "13.3.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_3_9.json" }, "13.4.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_4_1.json" }, "13.4.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_4_10.json" }, "13.4.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_4_11.json" }, "13.4.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_4_12.json" }, "13.4.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_4_13.json" }, "13.4.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_4_14.json" }, "13.4.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_4_15.json" }, "13.4.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_4_16.json" }, "13.4.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_4_17.json" }, "13.4.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_4_18.json" }, "13.4.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_4_2.json" }, "13.4.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_4_3.json" }, "13.4.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_4_4.json" }, "13.4.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_4_5.json" }, "13.4.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_4_6.json" }, "13.4.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_4_7.json" }, "13.4.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_4_8.json" }, "13.4.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_4_9.json" }, "13.5.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_5_1.json" }, "13.5.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_5_10.json" }, "13.5.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_5_11.json" }, "13.5.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_5_12.json" }, "13.5.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_5_13.json" }, "13.5.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_5_14.json" }, "13.5.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_5_15.json" }, "13.5.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_5_16.json" }, "13.5.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_5_17.json" }, "13.5.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_5_18.json" }, "13.5.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_5_2.json" }, "13.5.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_5_3.json" }, "13.5.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_5_4.json" }, "13.5.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_5_5.json" }, "13.5.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_5_6.json" }, "13.5.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_5_7.json" }, "13.5.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_5_8.json" }, "13.5.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_5_9.json" }, "13.6.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_6_1.json" }, "13.6.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_6_10.json" }, "13.6.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_6_11.json" }, "13.6.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 1, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_6_12.json" }, "13.6.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_6_13.json" }, "13.6.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_6_14.json" }, "13.6.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_6_15.json" }, "13.6.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_6_16.json" }, "13.6.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_6_17.json" }, "13.6.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_6_18.json" }, "13.6.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_6_2.json" }, "13.6.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_6_3.json" }, "13.6.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_6_4.json" }, "13.6.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_6_5.json" }, "13.6.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_6_6.json" }, "13.6.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_6_7.json" }, "13.6.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_6_8.json" }, "13.6.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_6_9.json" }, "13.7.1": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_7_1.json" }, "13.7.10": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_7_10.json" }, "13.7.11": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_7_11.json" }, "13.7.12": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_7_12.json" }, "13.7.13": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_7_13.json" }, "13.7.14": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_7_14.json" }, "13.7.15": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_7_15.json" }, "13.7.16": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_7_16.json" }, "13.7.17": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_7_17.json" }, "13.7.18": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_7_18.json" }, "13.7.2": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_7_2.json" }, "13.7.3": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_7_3.json" }, "13.7.4": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_7_4.json" }, "13.7.5": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_7_5.json" }, "13.7.6": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_7_6.json" }, "13.7.7": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_7_7.json" }, "13.7.8": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, "reportfile": "rust_websocket_case_13_7_8.json" }, "13.7.9": { - "behavior": "UNIMPLEMENTED", + "behavior": "OK", "behaviorClose": "OK", "duration": 0, "remoteCloseCode": null, diff --git a/examples/autobahn-client.rs b/examples/autobahn-client.rs index 31aedb2..ab6d15d 100644 --- a/examples/autobahn-client.rs +++ b/examples/autobahn-client.rs @@ -1,12 +1,23 @@ use log::*; use url::Url; +use tungstenite::client::connect_with_config; +use tungstenite::extensions::compression::CompressionConfig; +use tungstenite::protocol::WebSocketConfig; use tungstenite::{connect, Error, Message, Result}; const AGENT: &str = "Tungstenite"; fn get_case_count() -> Result { - let (mut socket, _) = connect(Url::parse("ws://localhost:9001/getCaseCount").unwrap())?; + let (mut socket, _) = connect_with_config( + Url::parse("ws://localhost:9001/getCaseCount").unwrap(), + Some(WebSocketConfig { + max_send_queue: None, + max_message_size: Some(64 << 20), + max_frame_size: Some(16 << 20), + compression_config: CompressionConfig::deflate(), + }), + )?; let msg = socket.read_message()?; socket.close(None)?; Ok(msg.into_text()?.parse::().unwrap()) @@ -31,7 +42,16 @@ fn run_test(case: u32) -> Result<()> { case, AGENT )) .unwrap(); - let (mut socket, _) = connect(case_url)?; + let (mut socket, _) = connect_with_config( + case_url, + Some(WebSocketConfig { + max_send_queue: None, + max_message_size: Some(64 << 20), + max_frame_size: Some(16 << 20), + compression_config: CompressionConfig::deflate(), + }), + )?; + loop { match socket.read_message()? { msg @ Message::Text(_) | msg @ Message::Binary(_) => { @@ -43,18 +63,20 @@ fn run_test(case: u32) -> Result<()> { } fn main() { + println!("Starting"); + env_logger::init(); - let total = get_case_count().unwrap(); + // let total = get_case_count().unwrap(); - for case in 1..=total { - if let Err(e) = run_test(case) { - match e { - Error::ConnectionClosed | Error::Protocol(_) | Error::Utf8 => (), - err => error!("test: {}", err), - } + // for case in 1..=total { + if let Err(e) = run_test(377) { + match e { + Error::ConnectionClosed | Error::Protocol(_) | Error::Utf8 => (), + err => error!("test: {}", err), } } + // } update_reports().unwrap(); } diff --git a/src/extensions/compression.rs b/src/extensions/compression.rs index 54e5501..7d5b1aa 100644 --- a/src/extensions/compression.rs +++ b/src/extensions/compression.rs @@ -36,6 +36,16 @@ pub enum CompressionStrategy { Deflate(DeflateExtension), } +impl PartialEq for CompressionStrategy { + fn eq(&self, other: &Self) -> bool { + match (self, other) { + (CompressionStrategy::Uncompressed, CompressionStrategy::Uncompressed) => true, + (CompressionStrategy::Deflate(_), CompressionStrategy::Deflate(_)) => true, + _ => false, + } + } +} + #[derive(Debug, Clone)] pub struct CompressionExtensionError(String); @@ -53,6 +63,12 @@ impl From for crate::Error { } } +impl CompressionStrategy { + pub fn is_enabled(&self) -> bool { + *self != CompressionStrategy::Uncompressed + } +} + impl WebSocketExtension for CompressionStrategy { type Error = CompressionExtensionError; @@ -129,9 +145,28 @@ impl WebSocketExtension for CompressionConfig { fn on_request(&mut self, mut request: Request) -> Request { if let Some(header_value) = self.as_header_value() { - request - .headers_mut() - .append(SEC_WEBSOCKET_EXTENSIONS, header_value); + match self { + CompressionConfig::Deflate(config) => { + let mut header_value: String = header_value.to_str().unwrap().into(); + if config.max_window_bits < 15 { + header_value.push_str(&format!( + "; client_max_window_bits={}; server_max_window_bits={}", + config.max_window_bits, config.max_window_bits + )) + } else { + header_value.push_str("; client_max_window_bits") + } + if config.request_no_context_takeover { + header_value.push_str("; server_no_context_takeover") + } + request.headers_mut().append( + SEC_WEBSOCKET_EXTENSIONS, + HeaderValue::from_str(&header_value).unwrap(), + ); + } + + CompressionConfig::Uncompressed => {} + } } request diff --git a/src/extensions/deflate.rs b/src/extensions/deflate.rs index 38fdd41..fc37f4e 100644 --- a/src/extensions/deflate.rs +++ b/src/extensions/deflate.rs @@ -5,8 +5,12 @@ use std::fmt::{Display, Formatter}; use crate::extensions::WebSocketExtension; use crate::protocol::frame::coding::{Data, OpCode}; use crate::protocol::frame::Frame; -use flate2::{Compress, CompressError, Compression, Decompress, DecompressError}; +use flate2::{ + Compress, CompressError, Compression, Decompress, DecompressError, FlushCompress, + FlushDecompress, Status, +}; use std::mem::replace; +use std::slice; pub struct DeflateExtension { pub(crate) config: DeflateConfig, @@ -98,12 +102,16 @@ impl WebSocketExtension for DeflateExtension { if let OpCode::Data(_) = frame.header().opcode { frame.header_mut().rsv1 = true; - let mut compressed = Vec::with_capacity(frame.payload().len()); + // println!("Compressing: {:?}", frame.payload()); + + let mut compressed = Vec::with_capacity(frame.payload().len() * 2); self.deflator.compress(frame.payload(), &mut compressed)?; let len = compressed.len(); compressed.truncate(len - 4); + println!("Compressed to: {:?}", compressed.len()); + *frame.payload_mut() = compressed; if self.config.compress_reset { @@ -115,60 +123,69 @@ impl WebSocketExtension for DeflateExtension { } fn on_receive_frame(&mut self, mut frame: Frame) -> Result, Self::Error> { - if frame.header().rsv1 { - frame.header_mut().rsv1 = false; + match frame.header().opcode { + OpCode::Control(_) => Ok(Some(frame)), + _ => { + if !self.fragments.is_empty() || frame.header().rsv1 { + frame.header_mut().rsv1 = false; - if !frame.header().is_final { - self.fragments.push(frame); - return Ok(None); - } else { - if let OpCode::Data(Data::Continue) = frame.header().opcode { - if !self.config.fragments_grow - && self.config.fragments_capacity == self.fragments.len() - { - return Err(DeflateExtensionError::DeflateError( - "Exceeded max fragments.".into(), - )); - } else { + if !frame.header().is_final { self.fragments.push(frame); + return Ok(None); + } else { + if let OpCode::Data(Data::Continue) = frame.header().opcode { + if !self.config.fragments_grow + && self.config.fragments_capacity == self.fragments.len() + { + return Err(DeflateExtensionError::DeflateError( + "Exceeded max fragments.".into(), + )); + } else { + self.fragments.push(frame); + } + + let opcode = self.fragments.first().unwrap().header().opcode; + let size = self + .fragments + .iter() + .fold(0, |len, frame| len + frame.payload().len()); + let mut compressed = Vec::with_capacity(size); + let mut decompressed = Vec::with_capacity(size * 2); + + replace( + &mut self.fragments, + Vec::with_capacity(self.config.fragments_capacity), + ) + .into_iter() + .for_each(|f| { + compressed.extend(f.into_data()); + }); + + compressed.extend(&[0, 0, 255, 255]); + + self.inflator.decompress(&compressed, &mut decompressed)?; + + frame = Frame::message(decompressed, opcode, true); + } else { + frame.payload_mut().extend(&[0, 0, 255, 255]); + + let mut decompress_output = + Vec::with_capacity(frame.payload().len() * 2); + self.inflator + .decompress(frame.payload(), &mut decompress_output)?; + + *frame.payload_mut() = decompress_output; + } + + if self.config.decompress_reset { + self.inflator.reset(false); + } } - - let opcode = self.fragments.first().unwrap().header().opcode; - let size = self - .fragments - .iter() - .fold(0, |len, frame| len + frame.payload().len()); - let mut compressed = Vec::with_capacity(size); - let decompressed = Vec::with_capacity(size * 2); - - replace( - &mut self.fragments, - Vec::with_capacity(self.config.fragments_capacity), - ) - .into_iter() - .for_each(|f| { - compressed.extend(f.into_data()); - }); - - compressed.extend(&[0, 0, 255, 255]); - frame = Frame::message(decompressed, opcode, true); - } else { - frame.payload_mut().extend(&[0, 0, 255, 255]); - - let mut decompress_output = Vec::with_capacity(frame.payload().len() * 2); - self.inflator - .decompress(frame.payload(), &mut decompress_output)?; - - *frame.payload_mut() = decompress_output; } - if self.config.decompress_reset { - self.inflator.reset(false); - } + Ok(Some(frame)) } } - - Ok(Some(frame)) } } @@ -199,17 +216,76 @@ impl Deflator { self.compress.reset() } + // pub fn compress(&mut self, input: &[u8], output: &mut Vec) -> Result { + // loop { + // let before_in = self.compress.total_in(); + // output.reserve(256); + // let status = self + // .compress + // .compress_vec(input, output, flate2::FlushCompress::Sync)?; + // let written = (self.compress.total_in() - before_in) as usize; + // + // if written != 0 || status == flate2::Status::StreamEnd { + // return Ok(written); + // } + // } + // } + pub fn compress(&mut self, input: &[u8], output: &mut Vec) -> Result { + let mut read_buff = Vec::from(input); + let mut output_size; + let mut eof = false; + + if output.len() != output.capacity() { + unsafe { + output.set_len(output.capacity()); + } + } + loop { + output_size = output.len(); + + if output_size == output.capacity() { + output.reserve(input.len()); + unsafe { + output.set_len(output.capacity()); + } + } + + let before_out = self.compress.total_out(); let before_in = self.compress.total_in(); - output.reserve(256); + + let out_slice = unsafe { + slice::from_raw_parts_mut( + output.as_mut_ptr().offset(output_size as isize), + output.capacity() - output_size, + ) + }; + + let flush_strategy = if eof { + FlushCompress::Finish + } else { + FlushCompress::None + }; + let status = self .compress - .compress_vec(input, output, flate2::FlushCompress::Sync)?; - let written = (self.compress.total_in() - before_in) as usize; + .compress(&read_buff, out_slice, flush_strategy)?; + + let consumed = (self.compress.total_in() - before_in) as usize; + read_buff = read_buff.split_off(consumed); + + unsafe { + output.set_len((self.compress.total_out() - before_out) as usize + output_size); + } + + if !eof && read_buff.len() == 0 { + eof = true; + continue; + } - if written != 0 || status == flate2::Status::StreamEnd { - return Ok(written); + if read_buff.len() == 0 && output.len() > 0 { + return Ok(consumed); } } } @@ -236,16 +312,13 @@ impl Inflator { output: &mut Vec, ) -> Result { let mut read_buff = Vec::from(input); - let mut eof = false; + let mut output_size; loop { - if read_buff.is_empty() { - eof = true; - } - - if !eof && output.is_empty() { - output.reserve(256); + output_size = output.len(); + if output_size == output.capacity() { + output.reserve(input.len()); unsafe { output.set_len(output.capacity()); } @@ -254,25 +327,233 @@ impl Inflator { let before_out = self.decompress.total_out(); let before_in = self.decompress.total_in(); - let decompression_strategy = if eof { - flate2::FlushDecompress::Finish - } else { - flate2::FlushDecompress::None + let out_slice = unsafe { + slice::from_raw_parts_mut( + output.as_mut_ptr().offset(output_size as isize), + output.capacity() - output_size, + ) }; - let status = self - .decompress - .decompress(&read_buff, output, decompression_strategy)?; + let status = + self.decompress + .decompress(&read_buff, out_slice, FlushDecompress::Finish)?; let consumed = (self.decompress.total_in() - before_in) as usize; read_buff = read_buff.split_off(consumed); - let read = (self.decompress.total_out() - before_out) as usize; + unsafe { + output.set_len((self.decompress.total_out() - before_out) as usize + output_size); + } - if read != 0 || status == flate2::Status::StreamEnd { - output.truncate(read); - return Ok(read); + match status { + Status::Ok | Status::BufError => { + if read_buff.len() == 0 && output.len() > 0 { + return Ok(consumed); + } else { + continue; + } + } + s => panic!(s), } } } } + +#[test] +fn t() { + let v1 = vec![ + 37, 80, 68, 70, 45, 49, 46, 50, 10, 37, 199, 236, 143, 162, 10, 54, 32, 48, 32, 111, 98, + 106, 10, 60, 60, 47, 76, 101, 110, 103, 116, 104, 32, 55, 32, 48, 32, 82, 47, 70, 105, 108, + 116, 101, 114, 32, 47, 70, 108, 97, 116, 101, 68, 101, 99, 111, 100, 101, 62, 62, 10, 115, + 116, 114, 101, 97, 109, 10, 120, 156, 125, 83, 193, 110, 212, 48, 16, 189, 231, 192, 55, + 248, 88, 36, 118, 106, 123, 198, 118, 124, 44, 168, 160, 10, 1, 106, 27, 46, 220, 178, 219, + 236, 174, 209, 38, 105, 55, 217, 138, 254, 61, 99, 39, 54, 55, 148, 67, 148, 55, 227, 241, + 123, 111, 94, 36, 40, 33, 227, 179, 190, 119, 125, 245, 82, 93, 63, 144, 56, 76, 213, 139, + 80, 169, 148, 95, 187, 94, 124, 108, 184, 200, 159, 202, 129, 86, 198, 136, 102, 95, 45, + 231, 148, 80, 74, 129, 247, 86, 88, 167, 193, 213, 74, 52, 125, 117, 117, 251, 110, 23, + 186, 97, 126, 223, 252, 174, 156, 132, 218, 58, 238, 108, 158, 170, 171, 38, 34, 220, 47, + 9, 253, 10, 157, 219, 48, 132, 225, 16, 11, 198, 131, 38, 107, 214, 194, 184, 143, 152, 86, + 96, 12, 230, 243, 63, 182, 83, 119, 126, 109, 183, 167, 46, 214, 188, 6, 35, 109, 157, 107, + 207, 169, 31, 161, 70, 149, 251, 187, 115, 59, 143, 17, 38, 214, 41, 203, 232, 115, 132, + 54, 154, 9, 123, 227, 197, 70, 27, 208, 104, 83, 229, 91, 234, 214, 22, 156, 215, 121, 240, + 83, 119, 154, 34, 138, 22, 208, 35, 173, 232, 101, 90, 89, 147, 5, 203, 221, 43, 252, 105, + 28, 230, 238, 79, 82, 110, 107, 168, 165, 202, 58, 191, 156, 219, 231, 99, 154, 195, 70, + 162, 80, 4, 72, 86, 71, 35, 55, 74, 19, 72, 75, 98, 227, 16, 8, 213, 63, 167, 106, 240, 78, + 187, 98, 200, 54, 180, 11, 17, 3, 158, 36, 230, 193, 144, 76, 245, 96, 139, 73, 43, 32, 61, + 81, 49, 98, 154, 187, 48, 36, 221, 150, 117, 96, 188, 142, 164, 101, 179, 86, 225, 45, 55, + 36, 95, 136, 87, 76, 70, 229, 141, 29, 187, 41, 100, 218, 150, 19, 1, 94, 122, 181, 208, + 38, 15, 198, 90, 158, 131, 96, 105, 161, 125, 55, 76, 115, 152, 47, 115, 218, 15, 17, 215, + 41, 27, 176, 31, 211, 120, 197, 118, 213, 42, 147, 191, 185, 204, 227, 48, 246, 227, 37, + 93, 97, 17, 60, 22, 189, 11, 221, 58, 134, 74, 231, 133, 206, 221, 233, 20, 14, 93, 170, + 32, 113, 22, 139, 13, 75, 216, 56, 107, 117, 238, 125, 124, 99, 73, 253, 244, 33, 81, 225, + 21, 27, 157, 151, 244, 57, 93, 6, 90, 162, 163, 18, 195, 203, 112, 28, 247, 171, 5, 158, + 55, 237, 242, 156, 155, 240, 184, 228, 197, 32, 24, 66, 177, 81, 53, 40, 52, 171, 109, 243, + 177, 235, 219, 57, 236, 218, 83, 26, 202, 39, 149, 207, 155, 248, 143, 27, 215, 41, 192, + 32, 157, 183, 217, 234, 95, 55, 119, 95, 19, 89, 100, 27, 56, 173, 43, 252, 115, 8, 175, + 41, 148, 252, 123, 169, 34, 129, 23, 26, 146, 100, 45, 1, 109, 249, 193, 222, 150, 177, + 200, 185, 118, 37, 145, 167, 241, 48, 36, 10, 156, 52, 13, 202, 241, 202, 120, 11, 44, 61, + 150, 191, 167, 196, 43, 4, 148, 117, 118, 62, 221, 103, 128, 76, 137, 79, 191, 54, 89, 93, + 20, 108, 23, 19, 209, 74, 83, 56, 165, 46, 230, 105, 40, 139, 210, 82, 234, 136, 222, 54, + 226, 190, 186, 175, 254, 2, 247, 54, 15, 175, 101, 110, 100, 115, 116, 114, 101, 97, 109, + 10, 101, 110, 100, 111, 98, 106, 10, 55, 32, 48, 32, 111, 98, 106, 10, 53, 55, 56, 10, 101, + 110, 100, 111, 98, 106, 10, 49, 55, 32, 48, 32, 111, 98, 106, 10, 60, 60, 47, 82, 52, 10, + 52, 32, 48, 32, 82, 62, 62, 10, 101, 110, 100, 111, 98, 106, 10, 49, 56, 32, 48, 32, 111, + 98, 106, 10, 60, 60, 47, 82, 49, 54, 10, 49, 54, 32, 48, 32, 82, 47, 82, 49, 51, 10, 49, + 51, 32, 48, 32, 82, 47, 82, 49, 48, 10, 49, 48, 32, 48, 32, 82, 62, 62, 10, 101, 110, 100, + 111, 98, 106, 10, 50, 51, 32, 48, 32, 111, 98, 106, 10, 60, 60, 47, 76, 101, 110, 103, 116, + 104, 32, 50, 52, 32, 48, 32, 82, 47, 70, 105, 108, 116, 101, 114, 32, 47, 70, 108, 97, 116, + 101, 68, 101, 99, 111, 100, 101, 62, 62, 10, 115, 116, 114, 101, 97, 109, 10, 120, 156, + 173, 86, 75, 143, 27, 69, 16, 190, 91, 252, 8, 31, 55, 82, 92, 116, 87, 191, 143, 139, 128, + 16, 16, 129, 100, 205, 5, 229, 50, 182, 219, 235, 129, 241, 12, 59, 211, 78, 216, 83, 254, + 58, 53, 253, 178, 29, 22, 177, 72, 200, 7, 75, 213, 221, 85, 213, 223, 163, 122, 24, 240, + 37, 155, 127, 249, 127, 123, 92, 60, 44, 30, 150, 60, 198, 202, 223, 246, 184, 252, 106, + 189, 248, 242, 29, 114, 138, 128, 99, 142, 47, 215, 251, 69, 58, 192, 151, 232, 12, 48, 52, + 75, 173, 20, 232, 229, 250, 184, 184, 185, 221, 189, 88, 255, 182, 224, 10, 164, 148, 130, + 246, 172, 119, 139, 155, 15, 237, 52, 140, 211, 28, 167, 60, 102, 233, 192, 105, 212, 114, + 206, 179, 226, 22, 193, 162, 94, 174, 148, 5, 235, 116, 220, 206, 33, 166, 64, 224, 218, + 230, 12, 183, 187, 152, 99, 142, 175, 242, 194, 138, 107, 48, 50, 174, 254, 60, 14, 251, + 120, 6, 21, 37, 81, 58, 31, 250, 122, 76, 137, 44, 104, 167, 100, 14, 190, 107, 218, 222, + 199, 68, 2, 1, 37, + ]; + let v2 = vec![ + 170, 28, 191, 219, 206, 49, 7, 218, 136, 90, 245, 48, 54, 187, 180, 119, 101, 53, 40, 102, + 48, 85, 21, 60, 46, 255, 234, 251, 124, 87, 163, 152, 203, 103, 194, 120, 58, 198, 86, 36, + 56, 44, 137, 246, 177, 30, 8, 110, 84, 9, 125, 138, 105, 25, 160, 149, 90, 150, 230, 78, + 99, 190, 185, 145, 186, 220, 226, 182, 191, 247, 31, 99, 70, 7, 232, 24, 207, 225, 166, + 223, 5, 31, 195, 6, 180, 174, 45, 191, 238, 247, 195, 120, 108, 66, 251, 251, 188, 38, 29, + 40, 94, 75, 254, 16, 107, 26, 234, 95, 137, 66, 205, 208, 245, 9, 84, 195, 40, 141, 185, + 68, 245, 151, 190, 253, 16, 11, 48, 48, 136, 229, 128, 31, 167, 54, 124, 202, 184, 90, 2, + 171, 244, 19, 10, 105, 86, 62, 167, 160, 154, 91, 35, 222, 133, 0, 105, 18, 158, 248, 95, + 121, 63, 19, 108, 88, 197, 240, 59, 63, 110, 98, 219, 28, 148, 115, 181, 235, 144, 169, 34, + 60, 74, 43, 223, 55, 254, 62, 211, 75, 242, 181, 220, 94, 93, 255, 117, 63, 133, 54, 156, + 226, 57, 161, 1, 141, 82, 255, 7, 155, 167, 48, 244, 195, 49, 50, 39, 45, 8, 235, 10, 161, + 109, 196, 197, 2, 99, 206, 149, 12, 193, 119, 93, 123, 159, 100, 38, 56, 32, 199, 42, 179, + 152, 129, 115, 208, 66, 151, 216, 221, 227, 20, 124, 74, 189, 226, 138, 131, 96, 242, 74, + 175, 223, 206, 43, 228, 83, 99, 116, 41, 58, 54, 167, 254, 48, 236, 19, 10, 82, 1, 39, 71, + 148, 78, 219, 187, 236, 216, 107, 231, 51, 13, 179, 164, 86, 142, 236, 163, 92, 226, 193, + 111, 187, 102, 108, 98, 14, 13, 66, 10, 83, 186, 108, 135, 254, 73, 219, 35, 19, 169, 189, + 11, 219, 175, 15, 109, 156, 17, 72, 19, 129, 155, 210, 70, 56, 248, 41, 199, 13, 88, 81, + 161, 73, 49, 106, 140, 217, 10, 192, 166, 153, 252, 46, 111, 53, 115, 218, 44, 185, 100, + 83, 1, 142, 243, 18, 139, 142, 210, 116, 43, 201, 10, 135, 195, 24, 61, 195, 13, 40, 89, + 46, 176, 109, 198, 177, 77, 57, 73, 168, 2, 109, 221, 156, 132, 65, 155, 141, 49, 252, 115, + 15, 160, 170, 10, 166, 254, 243, 70, 68, 135, 213, 165, 73, 91, 73, 6, 228, 47, 83, 149, + 186, 79, 106, 39, 165, 10, 212, 226, 90, 53, 195, 41, 94, 154, 48, 147, 6, 245, 19, 186, + 225, 255, 174, 155, 228, 72, 193, 207, 131, 239, 113, 90, 69, 201, 208, 220, 3, 205, 240, + 210, 3, 36, 167, 233, 101, 4, 84, 3, 141, 248, 130, 202, 115, 132, 164, 221, 133, 144, 94, + 102, 67, 90, 39, 75, 219, 175, 60, 141, 169, 212, 160, 132, 106, 143, 199, 120, 28, 36, + 205, 155, 146, 25, 114, 199, 146, 85, 56, 222, 12, 25, 34, 203, 108, 137, 253, 209, 36, + 139, 83, 21, 77, 30, 44, 52, 237, 179, 77, 132, 149, 21, 130, 172, 51, 238, 64, 158, 153, + 190, 210, 153, 113, 213, 196, 135, 102, 202, 252, 89, 86, 135, 252, 38, 1, 64, 229, 207, + 115, 49, 63, 6, 116, 88, 98, 233, 125, 58, 109, 142, 109, 8, 73, 64, 210, 64, 137, 251, + 110, 242, 31, 15, 126, 76, 252, 75, 16, 26, 241, 154, 255, 149, 48, 114, 30, 187, 87, 6, + 78, 120, 145, 230, 17, 249, 21, 98, 22, 184, 19, 149, 227, 129, 238, 50, 230, 231, 80, 11, + 83, 194, 59, 127, 63, 250, 88, 81, 208, 172, 231, 12, 171, 238, 51, 70, 150, 179, 130, 198, + 195, 169, 233, 218, 47, 182, 77, 49, 176, 162, 1, 104, 47, 158, 158, 60, 118, 157, 169, 69, + 155, 174, 203, 46, 147, 66, 60, 203, 101, 181, 216, 19, 187, 50, 232, 124, 118, 124, 73, + 182, 27, 250, 244, 224, 145, 17, 233, 225, 185, 166, 2, 213, 252, 25, 242, 143, 144, 28, + 255, 62, 91, 31, 39, 223, 237, 243, 188, 33, 113, 21, 52, 78, 125, 231, 167, 41, 191, 183, + 12, 207, 2, 247, 36, 110, 223, 111, 51, 151, 212, 174, 172, 158, 13, 67, 238, 246, 194, + 199, 217, 247, 196, 227, 60, 206, 244, 165, 171, 182, 121, 32, 145, 238, 101, 113, 97, 24, + 155, 241, 49, 115, 134, 88, 57, 75, 230, 158, 199, 60, 183, 159, 101, 38, 4, 185, 168, 38, + 11, 254, 207, 0, 233, 41, 35, 114, 221, 60, 89, 221, 60, 134, 210, 100, 77, 0, 11, 165, + 206, 52, 108, 218, 132, 49, 213, 147, 231, 9, 250, 10, 202, 168, 100, 188, 32, 252, 211, + 38, 199, 148, 172, 229, 232, 43, 32, 248, 212, 28, 125, 70, 113, 85, 129, 126, 127, 243, + 99, 19, 210, 179, 76, 11, 78, 212, 239, 149, 55, 245, 173, 86, 213, 157, 2, 37, 231, 136, + 239, 95, 204, 43, 223, 172, 151, 111, 23, 111, 23, 127, 1, 75, 50, 131, 211, 101, 110, 100, + 115, 116, 114, 101, 97, 109, 10, 101, 110, 100, 111, 98, 106, 10, 50, 52, 32, 48, 32, 111, + 98, 106, 10, 49, 48, 54, 56, 10, 101, 110, 100, 111, 98, 106, 10, 50, 56, 32, 48, 32, 111, + 98, 106, 10, 60, 60, 47, 82, 50, 55, 10, 50, 55, 32, 48, 32, 82, 47, 82, 50, 49, 10, 50, + 49, 32, 48, 32, 82, 62, 62, 10, 101, 110, 100, 111, 98, 106, 10, 51, 51, 32, 48, 32, 111, + 98, 106, 10, 60, 60, 47, 76, 101, 110, 103, 116, 104, 32, 51, 52, 32, 48, 32, 82, 47, 70, + 105, 108, 116, 101, 114, 32, 47, 70, 108, 97, 116, 101, 68, 101, 99, 111, 100, 101, 62, 62, + 10, 115, 116, 114, 101, 97, 109, 10, 120, 156, 205, 90, 77, 111, 28, 199, 17, 189, 211, 70, + 126, 3, 143, 10, 64, 78, 250, 187, 123, 114, 147, + ]; + let v3 = vec![ + 45, 195, 49, 18, 66, 182, 41, 36, 128, 161, 203, 112, 183, 197, 29, 115, 119, 134, 158, + 153, 149, 44, 93, 244, 215, 83, 61, 93, 85, 61, 187, 92, 146, 138, 147, 67, 160, 131, 128, + 222, 222, 238, 234, 170, 87, 175, 94, 213, 82, 84, 242, 92, 164, 127, 248, 255, 106, 119, + 246, 219, 217, 111, 231, 114, 94, 163, 255, 86, 187, 243, 111, 222, 156, 253, 229, 103, 45, + 207, 93, 85, 123, 29, 236, 249, 155, 119, 103, 249, 11, 242, 220, 56, 89, 185, 90, 158, + 123, 171, 170, 90, 195, 71, 187, 179, 23, 109, 219, 254, 249, 205, 175, 240, 21, 37, 225, + 144, 170, 22, 240, 57, 124, 229, 82, 73, 83, 57, 239, 207, 47, 157, 171, 172, 128, 181, + 245, 217, 139, 151, 55, 227, 52, 52, 105, 187, 174, 43, 39, 67, 128, 83, 211, 250, 106, + 194, 35, 252, 121, 93, 213, 78, 57, 51, 31, 33, 131, 175, 148, 134, 35, 180, 174, 132, 208, + 243, 214, 215, 55, 99, 28, 222, 207, 71, 136, 74, 41, 235, 240, 136, 230, 102, 27, 211, + 170, 2, 19, 106, 235, 113, 245, 245, 125, 90, 147, 186, 178, 166, 86, 184, 22, 135, 102, + 234, 135, 121, 111, 93, 105, 175, 52, 174, 95, 245, 243, 94, 3, 107, 78, 226, 218, 58, 110, + 199, 121, 21, 204, 178, 129, 238, 122, 251, 226, 245, 235, 171, 241, 237, 159, 211, 39, 70, + 84, 78, 208, 209, 205, 48, 219, 32, 125, 229, 116, 160, 51, 110, 99, 151, 174, 108, 223, + 227, 187, 131, 18, 116, 208, 188, 59, 84, 222, 215, 154, 44, 30, 63, 142, 83, 220, 205, + 151, 106, 95, 213, 134, 142, 254, 176, 105, 87, 104, 137, 147, 224, 159, 188, 186, 73, 75, + 112, 164, 119, 202, 146, 47, 155, 14, 247, 41, 79, 38, 236, 122, 114, 131, 174, 117, 121, + 26, 218, 42, 44, 47, 142, 83, 127, 153, 86, 47, 181, 23, 149, 181, 245, 249, 165, 116, 149, + 55, 249, 224, 249, 185, 149, 52, 198, 208, 185, 155, 102, 156, 178, 89, 16, 12, 169, 29, + 217, 48, 181, 187, 120, 9, 113, 106, 227, 252, 16, 11, 62, 242, 130, 108, 94, 55, 211, 12, + 1, 165, 33, 82, 53, 125, 165, 233, 214, 24, 62, 23, 84, 77, 230, 196, 223, 246, 177, 91, + 197, 177, 154, 143, 1, 20, 0, 36, 240, 179, 55, 105, 201, 85, 218, 90, 65, 48, 26, 154, + 182, 107, 187, 219, 217, 30, 91, 137, 224, 233, 156, 20, 174, 121, 85, 87, 210, 209, 238, + 102, 215, 239, 59, 132, 129, 144, 146, 28, 61, 229, 128, 171, 10, 192, 78, 91, 39, 242, + 159, 9, 53, 173, 69, 120, 250, 14, 194, 154, 239, 131, 39, 10, 45, 232, 190, 109, 219, 197, + 102, 200, 142, 116, 170, 82, 128, 199, 217, 145, 58, 167, 65, 159, 81, 41, 82, 224, 221, 1, + 42, 201, 74, 45, 28, 125, 240, 110, 232, 119, 232, 46, 107, 180, 58, 237, 97, 3, 72, 182, + 140, 138, 177, 217, 221, 231, 108, 128, 163, 148, 177, 245, 194, 243, 179, 39, 21, 164, + 164, 175, 41, 138, 111, 54, 148, 57, 198, 27, 114, 239, 253, 208, 67, 70, 205, 55, 107, 64, + 168, 181, 116, 115, 59, 162, 241, 66, 26, 58, 120, 218, 52, 115, 6, 43, 153, 206, 37, 203, + 247, 227, 190, 217, 110, 63, 206, 71, 152, 74, 120, 69, 174, 187, 153, 61, 86, 5, 17, 56, + 249, 250, 105, 131, 104, 244, 194, 74, 62, 150, 210, 73, 90, 175, 158, 9, 91, 90, 2, 186, + 80, 202, 208, 253, 253, 59, 132, 114, 128, 148, 81, 75, 40, 55, 25, 202, 174, 86, 154, 54, + 191, 207, 75, 94, 72, 70, 95, 211, 110, 137, 85, 52, 240, 158, 208, 100, 236, 180, 4, 26, + 88, 172, 30, 98, 91, 129, 203, 252, 17, 182, 33, 37, 141, 97, 140, 244, 251, 1, 31, 23, 4, + 3, 117, 213, 239, 238, 247, 19, 160, 170, 239, 154, 57, 61, 29, 184, 169, 228, 195, 16, 71, + 248, 218, 10, 99, 174, 128, 74, 216, 87, 68, 61, 240, 70, 41, 101, 217, 63, 13, 237, 106, + 138, 235, 57, 236, 38, 164, 8, 135, 7, 97, 183, 198, 81, 216, 119, 240, 178, 121, 213, 0, + 15, 51, 101, 174, 250, 14, 185, 209, 25, 206, 241, 161, 37, 170, 128, 199, 250, 176, 244, + 239, 205, 62, 189, 96, 196, 200, 187, 84, 69, 150, 33, 1, 240, 88, 29, 10, 120, 16, 82, 16, + 38, 193, 233, 13, 177, 31, 243, 58, 128, 21, 8, 93, 151, 119, 254, 21, 205, 134, 74, 67, + 187, 223, 190, 144, 153, 142, 165, 133, 138, 33, 121, 243, 186, 185, 207, 222, 196, 36, + 177, 146, 243, 247, 164, 41, 125, 230, 83, 41, 109, 160, 183, 247, 88, 1, 128, 249, 130, + 165, 131, 57, 41, 225, 233, 154, 147, 178, 237, 222, 245, 195, 142, 239, 3, 190, 146, 198, + 233, 242, 160, 126, 248, 136, 92, 9, 97, 80, 7, 119, 74, 89, 1, 125, 50, 53, 65, 244, 63, + 126, 138, 232, 191, 224, 56, 60, 64, 100, 204, 42, 2, 158, 185, 100, 21, 34, 36, 126, 172, + 176, 252, 176, 5, 137, 132, 192, 169, 252, 117, 215, 78, 25, 3, 182, 242, 53, 87, 139, 4, + 226, 11, 92, 14, 158, 151, 223, 190, 80, 232, 99, 96, 221, 90, 149, 58, 242, 30, 253, 83, + 43, 74, 131, 184, 237, 239, 119, 177, 67, 34, 118, 11, 39, 228, 44, 181, 214, 50, 119, 96, + 28, 146, 176, 224, 220, 104, 114, 93, 116, 86, 177, 111, 187, 248, 1, 195, 30, 36, 187, 99, + 81, 74, 132, 226, 116, 3, 204, 239, 87, 211, 126, 136, 23, 89, 85, 232, 3, 85, 97, 224, 81, + 53, 25, 138, 53, 13, 42, 32, 23, 247, 190, 155, 226, 239, 19, 198, 9, 184, 131, 214, 111, + 135, 108, 148, 178, + ]; + + let mut compressor = Deflator::new(Compression::best()); + + let mut f = |v: Vec<_>| { + let mut compressed = Vec::with_capacity(10); + let r = compressor.compress(&v, &mut compressed); + println!("{:?}", r); + + let len = compressed.len(); + compressed.truncate(len - 4); + + println!("Compressed to: {:?}", compressed.len()); + }; + + f(v1); + f(v2); + f(v3); +} + +// #[test] +// fn t() { +// let mut decompressor = Inflator::new(); +// +// +// +// let mut buffer = Vec::with_capacity(v2.len() * 2); +// +// let r = decompressor.decompress(&v2, &mut buffer); +// +// println!("String: {:?}", String::from_utf8(buffer.to_vec())); +// +// println!("{:?}", r); +// } diff --git a/src/lib.rs b/src/lib.rs index b89f9e4..7697980 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -3,13 +3,13 @@ // missing_docs, // missing_copy_implementations, // missing_debug_implementations, - trivial_casts, - trivial_numeric_casts, - unstable_features, - unused_must_use, - unused_mut, - unused_imports, - unused_import_braces + // trivial_casts, + // trivial_numeric_casts, + // unstable_features, + // unused_must_use, + // unused_mut, + // unused_imports, + // unused_import_braces )] pub use http; diff --git a/src/protocol/mod.rs b/src/protocol/mod.rs index 7e41c07..80b7783 100644 --- a/src/protocol/mod.rs +++ b/src/protocol/mod.rs @@ -439,6 +439,16 @@ impl WebSocketContext { )); } + { + let hdr = frame.header(); + + if !self.compressor.is_enabled() && hdr.rsv1 || hdr.rsv2 || hdr.rsv3 { + return Err(Error::Protocol( + "Reserved bits are non-zero and no WebSocket extensions are enabled".into(), + )); + } + } + match self.role { Role::Server => { if frame.is_masked() { @@ -492,14 +502,23 @@ impl WebSocketContext { OpCode::Data(data) => { let fin = frame.header().is_final; - let compressor = &mut self.compressor; - let frame = match compressor.on_receive_frame(frame)? { + let frame = match self.compressor.on_receive_frame(frame)? { Some(frame) => frame, None => return Ok(None), }; match data { OpData::Continue => { + if self.compressor.is_enabled() { + let message_type = match frame.header().opcode { + OpCode::Data(OpData::Text) => IncompleteMessageType::Text, + OpCode::Data(OpData::Binary) => IncompleteMessageType::Binary, + _ => panic!("Bug: message is not text nor binary"), + }; + + self.incomplete = Some(IncompleteMessage::new(message_type)); + } + if let Some(ref mut msg) = self.incomplete { msg.extend(frame.into_data(), self.config.max_message_size)?; } else {