Commit Graph

723 Commits

Author SHA1 Message Date
Benjamin Sergeant
12c3275c36 truncate module 2019-09-03 20:14:35 -07:00
Benjamin Sergeant
98189c23dc Per message deflate/compression: handle fragmented messages (fix autobahn test: 12.1.X and probably others) 2019-09-03 17:42:48 -07:00
Benjamin Sergeant
ec55b4a82a Receiving invalid UTF-8 TEXT message should fail and close the connection (fix remaining autobahn test: 6.X UTF-8 Handling) 2019-09-03 16:07:48 -07:00
Benjamin Sergeant
5d58982f77 IXWebSocketTransport message processing refactoring 2019-09-03 15:48:55 -07:00
Benjamin Sergeant
57665ca825 Validate close codes. Autobahn 7.9.* 2019-09-03 15:43:16 -07:00
Benjamin Sergeant
deaa753657 Validate that the close reason is proper utf-8. Autobahn 7.5.1 2019-09-03 14:35:40 -07:00
Benjamin Sergeant
7c7c877621 Sending invalid UTF-8 TEXT message should fail and close the connection (fix remaining autobahn test: 6.X UTF-8 Handling) 2019-09-03 14:12:40 -07:00
Benjamin Sergeant
afa71a6b4b Framentation: data and continuation blocks received out of order (fix autobahn test: 5.9 through 5.20 Fragmentation) 2019-09-03 12:02:56 -07:00
Benjamin Sergeant
172cd39702 Sending invalid UTF-8 TEXT message should fail and close the connection (fix **tons** of autobahn test: 6.X UTF-8 Handling) 2019-09-03 10:30:22 -07:00
Benjamin Sergeant
82213fd3a5 Message type (TEXT or BINARY) is invalid for received fragmented messages (fix autobahn test: 5.3 through 5.8 Fragmentation) 2019-09-03 09:13:38 -07:00
Benjamin Sergeant
a32bf885ba bump version 2019-09-02 10:14:15 -07:00
Benjamin Sergeant
61eb662e5f Ping and Pong messages cannot be fragmented (autobahn test: 5.1 and 5.2 Fragmentation) 2019-09-02 10:13:40 -07:00
Benjamin Sergeant
2887370666 Close connections when reserved bits are used (autobahn test: 3 Reserved Bits) 2019-09-01 16:23:00 -07:00
Benjamin Sergeant
8826d62075 changelog 2019-09-01 11:39:00 -07:00
Benjamin Sergeant
fae284e2e1 readme 2019-09-01 11:38:39 -07:00
Benjamin Sergeant
2408617ed9 doc 2019-09-01 11:28:27 -07:00
Benjamin Sergeant
cc10b7f998 compute test case count properly 2019-09-01 11:17:28 -07:00
Benjamin Sergeant
3c97d5f668 refactoring 2019-09-01 11:10:27 -07:00
Benjamin Sergeant
0accf24320 condition variable instead of busy looping 2019-09-01 10:50:16 -07:00
Benjamin Sergeant
8ec2ef345c quiet mode 2019-09-01 10:45:51 -07:00
Benjamin Sergeant
10dbe2d44d +add utf-8 validation code, not hooked up properly yet
+ws autobahn / Add code to test websocket client compliance with the autobahn test-suite
+Ping received with a payload too large (> 125 bytes) trigger a connection closure
+cobra / add tracking about published messages
+cobra / publish returns a message id, that can be used when
+cobra / new message type in the message received handler when publish/ok is received (can be used to implement an ack system).
2019-08-31 16:47:10 -07:00
Benjamin Sergeant
6b2cdb6b54 user agent 2019-08-30 12:50:56 -07:00
Benjamin Sergeant
06bc795133
New option to cap the max wait between reconnection attempts. Still default to 10s. (setMaxWaitBetweenReconnectionRetries) (#108) 2019-08-30 12:46:35 -07:00
Benjamin Sergeant
239a08ff9b readme 2019-08-26 22:49:40 -07:00
Benjamin Sergeant
41dd8d2184 readme 2019-08-26 22:29:10 -07:00
Benjamin Sergeant
57b4b13b65 doc / bring back detailed APIs 2019-08-26 22:11:35 -07:00
Benjamin Sergeant
a66b116aad one last tweak 2019-08-26 22:02:24 -07:00
Benjamin Sergeant
5c4102c0be readme tweaks 2019-08-26 21:57:05 -07:00
Benjamin Sergeant
ebb7318895 new simple readme 2019-08-26 21:55:00 -07:00
Benjamin Sergeant
b11876096b Add md doc made with mkdocs 2019-08-26 21:25:45 -07:00
Benjamin Sergeant
d603a74c6f fix #104 - change ZLIB find_package to be optional 2019-08-26 14:51:33 -07:00
Benjamin Sergeant
95d633e71e tentative gcc build fix 2019-08-26 14:29:16 -07:00
Benjamin Sergeant
217d0650f4 bump version 2019-08-26 10:20:01 -07:00
Benjamin Sergeant
45d7bb34d7 ws connect has a new option to send HTTP headers + use WebSocketHttpHeaders instead of unordered_map<string, string> 2019-08-26 10:19:09 -07:00
Benjamin Sergeant
2e32319236 CobraConnection: sets a unique id field for all messages sent to [cobra](https://github.com/machinezone/cobra).
CobraConnection: sets a counter as a field for each event published.
2019-08-26 09:51:37 -07:00
Benjamin Sergeant
8eb0d0b7c3 put windows poll in the global namespace, not ix namespace 2019-08-26 09:51:37 -07:00
ozychhi
f18f04c0ee Add client handshake extra headers (#105)
Even though 6455 defines all the necessary headers needed for
client/server handshake, in practice most of the cases websocket servers
expect few more headers. Therefore adding this functionality.
2019-08-26 09:37:40 -07:00
Benjamin Sergeant
193da820b2 Windows: use select instead of WSAPoll, through a poll wrapper 2019-08-22 10:34:17 -07:00
Benjamin Sergeant
c6198305d4 add new makefile target to make git tags 2019-08-20 09:21:30 -07:00
Benjamin Sergeant
c77d6ae3f5 bump version + talk about Windows fix in the changelog 2019-08-20 09:20:02 -07:00
Benjamin Sergeant
c72b2dbd6b add poll alias to WSAPoll on Windows 2019-08-19 22:26:25 -07:00
Benjamin Sergeant
835523f77b fix #101 / wrong include in IXSocket.cpp on Windows 2019-08-19 22:19:39 -07:00
Benjamin Sergeant
ec8a35b587 README tweaks 2019-08-19 20:35:26 -07:00
Benjamin Sergeant
aca18995d1 README / formatting 2019-08-19 20:33:56 -07:00
Benjamin Sergeant
f9178f58aa README.md: add reference to WSAStartup to initialize the networking system 2019-08-19 09:47:59 -07:00
Benjamin Sergeant
2477946e68 (CI) linux: install libmbedtls 2019-08-14 21:49:43 -07:00
Benjamin Sergeant
7c4d040384 (CI) try to build Linux on Ubuntu Bionic 2019-08-14 21:44:49 -07:00
Benjamin Sergeant
197cf8ed36 bump version 2019-08-14 21:36:20 -07:00
Benjamin Sergeant
dd0d7c268f CobraMetricThreadedPublisher _enable flag is an atomic, and CobraMetricsPublisher is enabled by default 2019-08-14 19:54:30 -07:00
Benjamin Sergeant
b2bfccac0a clang format 2019-08-13 10:59:18 -07:00