Commit Graph

617 Commits

Author SHA1 Message Date
Benjamin Sergeant
122118196b move snake code to its own subfolder like ixcobra, ixcrypto, etc... 2019-09-23 11:46:16 -07:00
Benjamin Sergeant
6f2fe49a7b reformat everything with clang-format 2019-09-23 10:25:23 -07:00
Benjamin Sergeant
b667c0ad40 fix unittest 2019-09-22 19:40:33 -07:00
Benjamin Sergeant
283cf83d47 fix unittest compiler warnings 2019-09-22 19:22:48 -07:00
Benjamin Sergeant
ab1b5cd665 compile fixes 2019-09-22 18:52:57 -07:00
Benjamin Sergeant
dbf6d00249 add gihub actions 2019-09-22 18:45:30 -07:00
Benjamin Sergeant
d0963f4af0 compiled fixes on mac and windows 2019-09-22 18:43:57 -07:00
Matt DeBoer
dd01f734c6 WIP: support configurable certificates/keys, and root trust CAs (#114)
* wip: tls options implemented in openssl

* update naming, remove #define guard

* assert compiled with USE_TLS for tls options

* apply autoformatter

* include tls options impl

* style cleanup; auto ssl_err

* ssl_err -> sslErr

* be explicit about SSL_VERIFY_NONE
2019-09-22 18:06:15 -07:00
Benjamin Sergeant
1769199d32 Fix crash in the Linux unittest in the HTTP client code, in Socket::readBytes. Cobra Metrics Publisher code returns the message id of the message that got published, to be used to validated that it got sent properly when receiving an ack. 2019-09-21 09:23:58 -07:00
Benjamin Sergeant
8821183aea missing file in ws tool 2019-09-19 12:51:34 -07:00
Benjamin Sergeant
a7cf151639 In DNS lookup code, make sure the weak pointer we use lives through the expected scope (if branch) 2019-09-19 12:51:11 -07:00
Benjamin Sergeant
f7a12f52f8 On error while doing a client handshake, additionally display port number next to the host name 2019-09-17 12:08:52 -07:00
Benjamin Sergeant
1be3b8f4b1 rename test file 2019-09-17 12:07:31 -07:00
Benjamin Sergeant
0b844d8361 make test target does not try to install anything into /usr/local 2019-09-12 11:45:31 -07:00
Benjamin Sergeant
57086e28d8 fix unittest warnings + remove trailing spaces 2019-09-12 11:43:52 -07:00
Benjamin Sergeant
a55d4cdb76 update pre-commit file 2019-09-10 22:18:16 -07:00
Benjamin Sergeant
40a45717db update clang format file 2019-09-10 22:17:08 -07:00
Benjamin Sergeant
e853d9ac60 build fixes 2019-09-10 14:05:07 -07:00
Benjamin Sergeant
4ec0d9b113 update appveyor file to new directory structure 2019-09-10 12:33:47 -07:00
Benjamin Sergeant
0fde169aa4 restructure project 2019-09-10 12:19:22 -07:00
Benjamin Sergeant
c09015e870 update ws CLI11 (our command line argument parsing library) to the latest, which fix a compiler bug about optional 2019-09-09 21:25:33 -07:00
Benjamin Sergeant
7bfa6e8478 improve some websocket error messages + add a utility function with unittest to parse status line and stop using scanf which triggers warnings on Windows 2019-09-09 21:23:57 -07:00
Benjamin Sergeant
983df2d8f9 improve some websocket error messages + add a utility function with unittest to parse status line and stop using scanf which triggers warnings on Windows 2019-09-09 17:34:36 -07:00
Benjamin Sergeant
6beba16ca7 websocket and http server: server does not close the bound client socket in many cases 2019-09-09 16:48:26 -07:00
Benjamin Sergeant
48cefe5525 move poll wrapper on top of select (only used on Windows) to the ix namespace 2019-09-08 11:15:08 -07:00
Benjamin Sergeant
ae3856c10f
Fix Windows CI with appveyor (#110)
Fix windows CI with appveyor + minor tweaks.
2019-09-07 14:07:00 -07:00
Benjamin Sergeant
260a94d3b0 README: update link to the doc 2019-09-06 10:42:48 -07:00
Benjamin Sergeant
88c6d6c4cb ci 2019-09-05 22:32:54 -07:00
Benjamin Sergeant
d5a4931c92 travis linux 2019-09-05 22:29:00 -07:00
Benjamin Sergeant
11f4e90bc6 ci tweak / install redis 2019-09-05 22:14:55 -07:00
Benjamin Sergeant
2ce65e7a77 cobra metrics publisher test uses random free port 2019-09-05 22:05:00 -07:00
Benjamin Sergeant
e81c2c3e5c cobra chat test uses random free port 2019-09-05 22:02:10 -07:00
Benjamin Sergeant
e40dda7549 add cobra metrics publisher + server unittest 2019-09-05 21:57:05 -07:00
Benjamin Sergeant
d959d73261 Add new cobra unittest, using server and client 2019-09-05 20:49:58 -07:00
Benjamin Sergeant
07b7e37a92 snake unsubscription fixes 2019-09-05 20:47:15 -07:00
Benjamin Sergeant
eb7888347a Fix compiler warning 2019-09-05 20:29:14 -07:00
Benjamin Sergeant
d8664f4988 ws snake (cobra simple server) add basic support for unsubscription + subscribe send the proper subscription data + redis client subscription can be cancelled 2019-09-05 20:28:34 -07:00
Benjamin Sergeant
5e94791b13 IXCobraConnection / pdu handlers can crash if they receive json data which is not an object 2019-09-05 20:24:42 -07:00
Benjamin Sergeant
3e3f7171fc cobra publish fix 2019-09-05 14:31:28 -07:00
Benjamin Sergeant
308fda0b37
Update README.md 2019-09-05 14:30:51 -07:00
Benjamin Sergeant
66ed7577b1 all client autobahn test should pass ! last failing one was ...
+- zlib/deflate has a bug with windowsbits == 8, so we silently upgrade it to 9/ (fix autobahn test 13.X which uses 8 for the windows size)
2019-09-04 21:01:30 -07:00
Benjamin Sergeant
cae23c764f Fragmentation: for sent messages which are compressed, the continuation fragments should not have the rsv1 bit set (fix all autobahn tests for zlib compression 12.X)
Websocket Server / do a case insensitive string search when looking for an Upgrade header whose value is websocket. (some client use WebSocket with some upper-case characters)
2019-09-04 18:23:56 -07:00
Benjamin Sergeant
f25b2af6eb ws autobahn / use condition variables for stopping test case + add more logging on errors 2019-09-04 12:21:54 -07:00
Benjamin Sergeant
508d372df1 ws autobahn / report progress with spdlog::info to get timing info 2019-09-04 10:16:32 -07:00
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