Commit Graph
100 Commits
Author SHA1 Message Date
Benjamin Sergeant 332ffb0603 (cobra client) pass the message position to the subscription data callback 2020-03-13 12:49:37 -07:00
Benjamin Sergeant 90df3d1805 (openssl tls backend) Fix a hand in OpenSSL when using TLS v1.3 ... by disabling TLS v1.3 2020-03-12 16:27:25 -07:00
Benjamin Sergeant bda1bb6ab4 expose a way to set tls options for a sentry client, for testing 2020-03-12 16:18:28 -07:00
Benjamin Sergeant d4e1f71e3c (cobra2sentry bot) take a sentry client as input instead of a dsn 2020-03-12 12:30:58 -07:00
Benjamin Sergeant adf6aa1d6c (cobra2sentry bot) remove the jobs option passed to ws, and only use one sentry sender 2020-03-12 12:24:25 -07:00
Benjamin Sergeant cb1f9f5a44 clang formatting 2020-03-12 12:15:56 -07:00
Benjamin Sergeant 83ae105edb minor refactoring to delete files which are not needed 2020-03-12 12:13:31 -07:00
Benjamin Sergeant 7642ccc99e (unittest) fix silly compile error with renaming of Logger to TLogger 2020-03-12 11:15:54 -07:00
Benjamin Sergeant cb1ec7dc96 add unittest for cobra to sentry bots 2020-03-12 09:07:01 -07:00
Benjamin Sergeant 09b9483ddf fix casing problem with cmake filename 2020-03-11 16:04:16 -07:00
Benjamin Sergeant 27a8ae309f build failure on Linux 2020-03-11 15:59:48 -07:00
Benjamin Sergeant 3df7c942d7 move sentry and statsd cobra ws commands into a new ixbots folder 2020-03-11 15:55:56 -07:00
Benjamin Sergeant 6a4d69afc5 (cobra) IXCobraConfig struct has tlsOptions and per message deflate options 2020-03-11 12:40:32 -07:00
Benjamin Sergeant 0a11132b07 (cobra) add IXCobraConfig struct to pass cobra config around 2020-03-11 10:48:41 -07:00
Benjamin Sergeant cb9f0cb968 (doc) mention that OpenSSL can be used on Windows 2020-03-11 10:18:48 -07:00
Benjamin Sergeant b1f30bb40f (ws cobra_subscribe) add a --fluentd option to wrap a message in an enveloppe so that fluentd can recognize it 2020-03-09 15:25:43 -07:00
Benjamin Sergeant 4ef04b8339 (websocket server) fix regression with disabling zlib extension on the server side. If a client does not support this extension the server will handle it fine. We still need to figure out how to disable the option. cc #160 2020-03-02 16:53:08 -08:00
Benjamin Sergeant a42f115f79 compatibility: add node.js example server 2020-02-26 12:17:34 -08:00
Benjamin Sergeant 5ce1a596cf add a python echo server that does not close the connection after each received messages 2020-02-26 12:11:31 -08:00
Benjamin Sergeant 21db7b6c5b add a simple pytho echo client 2020-02-26 11:50:24 -08:00
Benjamin Sergeant e15a2900e7 (websocket) traffic tracker received bytes is message size while it should be wire size 2020-02-26 11:24:41 -08:00
Benjamin Sergeant 140a21c8b3 (ws_connect) display sent/received bytes statistics on exit 2020-02-26 11:23:36 -08:00
Benjamin Sergeant 6d0c568aaa update doc / fix incorrect comment about sending defaultint to binary mode 2020-02-24 16:24:32 -08:00
Benjamin Sergeant c96abcef1c build status github badge 2020-02-23 09:46:08 -08:00
Benjamin Sergeant 4a9b0b9dfd (server) give thread name to some usual worker threads / unittest is broken !! 2020-02-23 09:44:58 -08:00
Benjamin Sergeant 8837d5e784 (websocket server) fix regression from 8.1.2, where per-deflate message compression was always disabled 2020-02-22 10:15:43 -08:00
Benjamin Sergeant 242c945400 (client + server) Fix #155 / http header parser should treat the space(s) after the : delimiter as optional. Fixing this bug made us discover that websocket sub-protocols are not properly serialiazed, but start with a , 2020-02-21 14:05:38 -08:00
Benjamin Sergeant feab4dee0f split httpd test case into 2 test cases 2020-02-21 12:24:22 -08:00
Benjamin Sergeant 8175829b4b unittest / add extra test for checking headers 2020-02-21 12:22:37 -08:00
Benjamin Sergeant 4c66a7561e (WebSocketServer) add option to disable deflate compression, exposed with the -x option to ws echo_server 2020-02-18 21:38:28 -08:00
Benjamin Sergeant 111475e65c (ws cobra to statsd and sentry sender) exit if no messages are received for one minute, which is a sign that something goes wrong on the server side. That should be changed to be configurable in the future 2020-02-18 12:43:07 -08:00
Benjamin Sergeant 45061b0b14 (http client + sentry minidump upload) Multipart stream closing boundary is invalid + mark some options as mandatory in the command line toolsj 2020-02-13 12:25:18 -08:00
Benjamin Sergeant 1bb847a51c bump version for #154 fix which was about removing the unused subtree which was causing some way of installing to break 2020-02-12 11:21:46 -08:00
Benjamin Sergeant ce9feeafdf try to delete subtree usocket again 2020-02-12 10:08:42 -08:00
Benjamin Sergeant 415f0b3e6d CI/CD no need to run redis anymore, as we have our fake limited one 2020-02-07 17:15:16 -08:00
Benjamin Sergeant 94431756ff trigger a github action 2020-02-07 17:08:25 -08:00
Benjamin Sergeant 5f6c54bb90 (snake) add an option to disable answering pongs as response to pings, to test cobra client behavior with hanged connections 2020-01-31 16:55:54 -08:00
Benjamin Sergeant f994a41845 (IXCobraConnection) set a ping timeout of 90 seconds. If no pong messages are received as responses to ping for a while, give up and close the connection 2020-01-31 16:25:45 -08:00
Benjamin Sergeant f3760318b7 (cobra to sentry) remove noisy logging 2020-01-31 16:07:36 -08:00
Benjamin Sergeant c2362e6875 (ixcobra) check if we are authenticated in publishNext before trying to publish a message 2020-01-30 20:52:11 -08:00
Benjamin Sergeant 2d28b7d4ff bump version and update changelog 2020-01-28 10:50:03 -08:00
Benjamin Sergeant 86d3fc8621 quit checkConnection after sleeping if requested to stop (iterate on #151) 2020-01-28 10:46:04 -08:00
Benjamin Sergeant 422c7ff855 wait with a condition variable instead of a this_thread::sleep_for so that waiting can be cancelled when we stop/shutdown the data thread (see #151) 2020-01-28 10:04:32 -08:00
Benjamin Sergeant 1c7ccbae12 bump version 2020-01-27 17:41:27 -08:00
Benjamin Sergeant ed2a81f115 Fix #148 2020-01-27 17:29:44 -08:00
Benjamin Sergeant aa12098cb5 add -6 option to ws echo_server / cf #148 2020-01-26 16:44:44 -08:00
Benjamin Sergeant 5d4bb90703 (SocketServer) add ability to bind on an ipv6 address 2020-01-26 16:21:56 -08:00
Benjamin Sergeant fad9f89846 (ws) add a dnslookup sub-command, to get the ip address of a remote host 2020-01-26 16:21:56 -08:00
Benjamin Sergeant 65bae2736d fix #144 - get rid of stubbed windows ssl schannel backend 2020-01-14 13:39:48 -08:00
Benjamin Sergeant a923caec0b install gdb in the alpine dockerfile 2020-01-14 13:37:28 -08:00
Benjamin Sergeant 4d7332c4ee activate chat test on Windows 2020-01-13 16:44:10 -08:00
Benjamin Sergeant 4f3f1f3e4c simplify socket interface 2020-01-12 22:30:16 -08:00
Benjamin Sergeant 2a954b5b5b use curl code for large apple ssl send 2020-01-12 22:04:06 -08:00
Benjamin Sergeant b96b3b099f test broadcast server 2020-01-12 21:32:26 -08:00
Benjamin Sergeant bb31612ebe more doc 2020-01-12 11:16:54 -08:00
Benjamin Sergeant d2c5ab1cc4 (openssl + mbedssl) fix #140, can send large files with ws send over ssl / still broken with apple ssl 2020-01-12 11:08:44 -08:00
Benjamin Sergeant a01584ad9d compatibility websocket server / add non ssl echo_server which does not run into the ssl error (#140) 2020-01-12 10:34:33 -08:00
Benjamin Sergeant 9651f3823d (apple ssl) model write method after the OpenSSL one for consistency
More test code for #140.
2020-01-10 18:32:34 -08:00
Benjamin Sergeant 0544cdedeb fix broken autobahn link 2020-01-09 15:30:33 -08:00
Benjamin Sergeant df0239ae68 poll: handle POLLNVAL 2020-01-09 13:45:58 -08:00
Benjamin Sergeant c8bf2a0d82 formatting 2020-01-09 13:45:31 -08:00
Benjamin Sergeant 4d96804b22 ws send / detect disconnection earlier 2020-01-09 13:30:08 -08:00
Benjamin Sergeant ce9db42c23 socket polling / handle more error case such as hanged socket 2020-01-09 12:26:57 -08:00
Benjamin Sergeant a844dbc587 websocket closing / handle failure to flush send buffer as an error case 2020-01-09 12:17:37 -08:00
Benjamin Sergeant 28952cb0b0 ws send / check that we are connected when waiting for the send buffer to be flushed, and if so, abort 2020-01-09 12:16:12 -08:00
Benjamin Sergeant fe29579755 refactor receiving socket code in its own method 2020-01-09 12:00:42 -08:00
Benjamin Sergeant 1320e4ddaf Windows ws build fix 2020-01-07 17:37:38 -08:00
Benjamin Sergeant f4a7277d61 using centos8 for the default Dockerfile, to get a gdb that display source code when running on OpenShift 2020-01-07 14:58:40 -08:00
Benjamin Sergeant f6c482c65d (apple ssl) unify read and write ssl utility code 2020-01-06 15:19:14 -08:00
Benjamin Sergeant dec8a2b9ab apple ssl: aesthetic change (get rid of yoda comparisons/conditionals) 2020-01-06 14:45:05 -08:00
Benjamin Sergeant a5bc39be55 (websocket client) better error propagation when errors are detected while sending data + (ws send) detect failures to send big files, terminate in those cases and report error (troubleshooting #140) 2020-01-06 14:34:43 -08:00
Benjamin Sergeant c62ad5f466 add reference ssl echo server using websockets and nginx reverse proxy to terminate ssl 2020-01-05 15:26:35 -08:00
Benjamin Sergeant effa115ed2 Merge commit 'c992cb4e42cc223f67ede0e48d7ff3f4947af0c6' as 'test/compatibility/C/uWebSockets' 2020-01-04 15:41:03 -08:00
Benjamin Sergeant c992cb4e42 Squashed 'test/compatibility/C/uWebSockets/' content from commit 03681cc
git-subtree-dir: test/compatibility/C/uWebSockets
git-subtree-split: 03681ccbe630eb4db6322557e6bfe8cda8f41526
2020-01-04 15:41:03 -08:00
Benjamin Sergeant b9504fcd44 add another compatibility python client 2020-01-04 15:37:40 -08:00
Benjamin Sergeant 299bcd4b92 Add a simple python program to send a file (debugging #140) 2020-01-04 15:18:02 -08:00
Benjamin Sergeant f56098dd4c (ws send) add option (-x) to disable per message deflate compression 2020-01-04 15:08:36 -08:00
Benjamin Sergeant e0187b2d8e fix typo in ws embedded help 2020-01-04 14:37:53 -08:00
Benjamin Sergeant 31682f5f2d (ws send + receive) handle all message types (ping + pong + fragment) / investigate #140 2020-01-04 13:45:07 -08:00
Benjamin Sergeant 221087ffff Install source code when making a Docker container 2020-01-04 13:44:02 -08:00
Benjamin Sergeant c7fc4f0f8e add user list in readme 2019-12-30 22:16:29 -08:00
Benjamin Sergeant 2eece1d11a correct version number 2019-12-30 22:14:53 -08:00
Benjamin Sergeant 5ba05212ec tag version 2019-12-30 17:17:28 -08:00
Benjamin Sergeant d60777b9cc clang-format 2019-12-30 08:46:18 -08:00
Benjamin Sergeant 8b5e42fe84 (ws cobra to sentry/statsd) fix for handling null events properly for empty queues + use queue to send data to statsd 2019-12-28 17:28:05 -08:00
Benjamin Sergeant d89d152ad7 (ws cobra to sentry) handle null events for empty queues 2019-12-28 10:16:18 -08:00
Benjamin Sergeant 47a3736b24 (ws cobra to sentry) game is picked in a fair manner, so that all games get the same share of sent events 2019-12-27 19:10:15 -08:00
Benjamin Sergeant 1cd7cf340a (ws cobra to sentry) refactor queue related code into a class 2019-12-27 18:24:45 -08:00
Benjamin Sergeant 3a25a05d9c (ws cobra to sentry) bound the queue size used to hold up cobra messages before they are sent to sentry. Default queue size is a 100 messages. Without such limit the program runs out of memory when a subscriber receive a lot of messages that cannot make it to sentry 2019-12-25 22:15:57 -08:00
Benjamin Sergeant d2acfd5d1f (ws client) use correct compilation defines so that spdlog is not used as a header only library (reduce binary size and increase compilation speed) 2019-12-25 09:03:57 -08:00
Benjamin Sergeant 9dfcd8ea69 (ws client) all commands use spdlog instead of std::cerr or std::cout for logging 2019-12-24 21:55:34 -08:00
Benjamin Sergeant ee65f95fe3 (cobra client) send a websocket ping every 30s to keep the connection opened 2019-12-24 17:16:41 -08:00
Benjamin Sergeant b9cc6d7e23 (tls / apple) minor refactoring, move functions out of the anonymous namespace to become static member functions 2019-12-23 16:30:38 -08:00
Benjamin Sergeant 1e97e5e536 socket tls options: display ciphers 2019-12-23 12:25:25 -08:00
Benjamin Sergeant 440a1058b3 (doc) fix typo 2019-12-22 20:33:14 -08:00
Benjamin Sergeant ff489515be v7.6.4 2019-12-22 20:32:10 -08:00
Benjamin Sergeant 536a502b60 (client) error handling, quote url in error case when failing to parse on 2019-12-22 20:30:29 -08:00
Benjamin Sergeant db0ff4ecd1 (ws) ws_cobra_publish: register callbacks before connecting 2019-12-22 20:29:37 -08:00
Benjamin Sergeant e4aed56d72 (doc) mention mbedtls in supported ssl server backend 2019-12-22 20:28:44 -08:00
Benjamin Sergeant 1427a97dd9 update gitignore file 2019-12-20 15:21:36 -08:00