Commit Graph

78 Commits

Author SHA1 Message Date
Benjamin Sergeant
6c205b983e (openssl tls) when OpenSSL is older than 1.1, register the crypto locking callback to be thread safe. Should fix lots of CI failures 2020-05-06 16:26:30 -07:00
Benjamin Sergeant
beb26bc096 use ninja for local builds 2020-04-29 11:53:56 -07:00
Benjamin Sergeant
cd5fae6a5b generate a compilation database when building with make for the default target, so that clang-tidy can be used 2020-04-22 14:14:09 -07:00
Benjamin Sergeant
35630fe7ed new makefile target + better error description in Socket::readBytes 2020-04-14 21:50:56 -07:00
Benjamin Sergeant
2268b743ae add broadcasting test where 10 clients exchange messages, to try to trigger threading errors 2020-03-30 22:27:41 -07:00
Benjamin Sergeant
1d3db5f75b (cobra to statsd bot) add ability to extract a numerical value and send a timer event to statsd, with the --timer option 2020-03-30 16:08:47 -07:00
Benjamin Sergeant
296762ce06 add a docker deploy makefile target to build docker and push the built container in one shot 2020-03-29 22:08:36 -07:00
Benjamin Sergeant
40c619c1ec (docker) trim down docker image (300M -> 12M) / binary built without symbol and size optimization, and source code not copied over 2020-03-29 13:06:44 -07:00
Benjamin Sergeant
598fb071e3 have some make target compile in release with debug 2020-03-28 10:33:22 -07:00
Benjamin Sergeant
18164c0c38 New CI builder: Mac + MbedTLS + Thread Sanitizer 2020-03-26 19:16:04 -07:00
Benjamin Sergeant
09e4584fc8 New CI builder: Mac + OpenSSL + Thread Sanitizer 2020-03-26 16:46:47 -07:00
Benjamin Sergeant
575bceb1ec add make target for ubsan, tsan and asan, and enable running the unittest on mac with tsan 2020-03-18 20:53:54 -07:00
Benjamin Sergeant
e8f81776f9 (cobra to sentry bot + docker) default docker file uses mbedtls + ws cobra_to_sentry pass tls options to sentryClient. 2020-03-16 10:05:21 -07:00
johnfoconnor
d91b24723d version 8.0.2: add severity level for log sentry events (#152)
* script to update version

* version 8.0.2: add severity level for log sentry events
2020-01-28 14:04:18 -08:00
Benjamin Sergeant
e223f8fac2 (ws) cobra to sentry - created events with sentry tags based on tags present in the cobra messages 2019-12-11 17:28:11 -08:00
Benjamin Sergeant
9f98628709 Add script to extract the version from the header file and remove DOCKER_VERSION 2019-12-06 16:44:05 -08:00
Benjamin Sergeant
cc492bf1a3 add a python websocket proxy which works on Linux, while ws proxy_server does not 2019-11-18 13:46:11 -08:00
Benjamin Sergeant
85e00a195c docker build fixes 2019-10-26 11:47:08 -07:00
Benjamin Sergeant
8152898c4e add more docs about ws 2019-10-09 22:42:03 -07:00
Benjamin Sergeant
a383ac10d9 make sure the unittest pass withouth SSL 2019-10-03 09:41:17 -07:00
Benjamin Sergeant
2c32f5c593 add a target for building wihout ssl + take Matt Boer updated script to run ws test with SSL (still broken for large payload) 2019-10-03 07:47:34 -07:00
Benjamin Sergeant
a0cfaff528 Implement SSL server with OpenSSL backend / still flaky 2019-10-01 15:43:37 -07:00
Benjamin Sergeant
845bbc5208 all ws subcommands propagate tls options to servers (unimplemented) or ws or http client (implemented) (contributed by Matt DeBoer) 2019-09-30 18:21:20 -07:00
Benjamin Sergeant
55141aa875 ws curl + http client tls option handling + ca cert processing for mbedtls 2019-09-29 21:13:11 -07:00
Benjamin Sergeant
f6bf2531bb Add ability to use OpenSSL on apple platforms. 2019-09-29 15:34:58 -07:00
Benjamin Sergeant
94c589f696 Fix 2 race conditions detected with TSan, one in CobraMetricsPublisher::push and another one in WebSocketTransport::sendData (that one was bad). 2019-09-24 11:46:54 -07:00
Benjamin Sergeant
1cde26771a move snake code to its own subfolder like ixcobra, ixcrypto, etc... 2019-09-23 11:46:16 -07:00
Benjamin Sergeant
1c08cedd8a make test target does not try to install anything into /usr/local 2019-09-12 11:45:31 -07:00
Benjamin Sergeant
e2121d809e fix unittest warnings + remove trailing spaces 2019-09-12 11:43:52 -07:00
Benjamin Sergeant
2453f5b717 restructure project 2019-09-10 12:19:22 -07:00
Benjamin Sergeant
a43046c921 ws autobahn / report progress with spdlog::info to get timing info 2019-09-04 10:16:32 -07:00
Benjamin Sergeant
94c8966e86 Close connections when reserved bits are used (autobahn test: 3 Reserved Bits) 2019-09-01 16:23:00 -07:00
Benjamin Sergeant
96380dd462 doc 2019-09-01 11:28:27 -07:00
Benjamin Sergeant
7a73ec7c06 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
53c767140d add new makefile target to make git tags 2019-08-20 09:21:30 -07:00
Benjamin Sergeant
747746cba1 dns / use cancellable instead of blocking 2019-06-30 23:26:14 -07:00
Benjamin Sergeant
b26e9d0338 IXDNSLookup. Uses weak pointer + smart_ptr + shared_from_this instead of static sets + mutex to handle object going away before dns lookup has resolved 2019-06-19 00:43:59 -07:00
Benjamin Sergeant
3a1918eb2f Add -DUSE_VENDORED_THIRD_PARTY=1 to build ws 2019-06-10 13:26:41 -07:00
Benjamin Sergeant
076e8bf6a3 add an option to easily disable per message deflate compression 2019-06-06 13:48:53 -07:00
Benjamin Sergeant
539abe5151 HttpResponse is a struct, not a tuple 🉐 2019-06-03 22:12:52 -07:00
Benjamin Sergeant
396d0d9bdc Feature/ws windows (#86)
* try to build ws on window on travis 📮

* cmake invocation fixed on windows 🐝

* Can use mbedtls to calculate hmac + no openssl config option

* build only windows on travis 🕢

* run msbuild 💷

* proper command to build 🕛

* some build fixes

* change weird sizeof call 🐙

* warning and missing includes fixes 💮

* ifdef out statsd code on windows 🐍

* logic invertion in ifdef 👄

* bring back makefile 📜

* command line tool is built with mbedtls 🏥
2019-06-02 20:46:20 -07:00
Benjamin Sergeant
06cbebe22e Feature/mbedtls (#84)
* try to import mbedtls and build it

* add stubs socket class

* some boilterplate, read and write function implemented

* more boilterplate / current error in handshake because no CA cert is setup

* add something so skip ca verification, can ws curl https://google.com !

* cleanup / close implemented

* tweak CMakefiles

* typo in include

* update readme

* disable unittests
2019-06-01 17:41:48 -07:00
Benjamin Sergeant
285386e47f fix cobra to sentry + change ws docker file to use alpine (much smaller footprint) 2019-05-31 00:43:22 -07:00
Benjamin Sergeant
c65fec7271 clang format, based on cpprest 2019-05-30 08:46:50 -07:00
Benjamin Sergeant
e5edbeacb4 travis makefile fix 2019-05-16 14:02:24 -07:00
Benjamin Sergeant
964fb20df9 try to run ws test on linux + macOS on travis 2019-05-16 13:57:33 -07:00
Benjamin Sergeant
3a55c7aaba build ws on travis (mac + linux) 2019-05-16 07:01:15 -07:00
Benjamin Sergeant
e0d9a16985 more protection against socket when closing 2019-05-15 15:18:46 -07:00
Benjamin Sergeant
b8087f6c48 Fix #38 Add some docker doc in the README 2019-04-23 20:51:58 -07:00
Benjamin Sergeant
b6b9ffd15c doc cobra 2019-04-21 11:52:38 -07:00