Commit Graph
100 Commits
Author SHA1 Message Date
Benjamin Sergeant c192c9ec96 (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 86f6fca703 (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 bbe744a323 (cobra to sentry) remove noisy logging 2020-01-31 16:07:36 -08:00
Benjamin Sergeant 3d401fbc8d (ixcobra) check if we are authenticated in publishNext before trying to publish a message 2020-01-30 20:52:11 -08:00
Benjamin Sergeant 48ea80bb8f bump version and update changelog 2020-01-28 10:50:03 -08:00
Benjamin Sergeant 44a813caae quit checkConnection after sleeping if requested to stop (iterate on #151) 2020-01-28 10:46:04 -08:00
Benjamin Sergeant 78af792f23 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 1ee8e31483 bump version 2020-01-27 17:41:27 -08:00
Benjamin Sergeant e927dcca3a Fix #148 2020-01-27 17:29:44 -08:00
Benjamin Sergeant f3d562ff02 add -6 option to ws echo_server / cf #148 2020-01-26 16:44:44 -08:00
Benjamin Sergeant 3c27228585 (SocketServer) add ability to bind on an ipv6 address 2020-01-26 16:21:56 -08:00
Benjamin Sergeant 9d7807b25c (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 99fe6ea493 fix #144 - get rid of stubbed windows ssl schannel backend 2020-01-14 13:39:48 -08:00
Benjamin Sergeant acab19fe9f install gdb in the alpine dockerfile 2020-01-14 13:37:28 -08:00
Benjamin Sergeant 2f59fcc02d activate chat test on Windows 2020-01-13 16:44:10 -08:00
Benjamin Sergeant 8a344788ba simplify socket interface 2020-01-12 22:30:16 -08:00
Benjamin Sergeant 5d641bc267 use curl code for large apple ssl send 2020-01-12 22:04:06 -08:00
Benjamin Sergeant 0c4866420a test broadcast server 2020-01-12 21:32:26 -08:00
Benjamin Sergeant 8ed7c660d4 more doc 2020-01-12 11:16:54 -08:00
Benjamin Sergeant 4cbf85f4d4 (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 a8ff91ac3c 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 4cb3326078 (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 87625a8805 fix broken autobahn link 2020-01-09 15:30:33 -08:00
Benjamin Sergeant b75264b98f poll: handle POLLNVAL 2020-01-09 13:45:58 -08:00
Benjamin Sergeant 21f42210a2 formatting 2020-01-09 13:45:31 -08:00
Benjamin Sergeant 27287aea50 ws send / detect disconnection earlier 2020-01-09 13:30:08 -08:00
Benjamin Sergeant 39f69bd2b6 socket polling / handle more error case such as hanged socket 2020-01-09 12:26:57 -08:00
Benjamin Sergeant 00dc8bacee websocket closing / handle failure to flush send buffer as an error case 2020-01-09 12:17:37 -08:00
Benjamin Sergeant 9e24475fd6 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 61bcc9d27d refactor receiving socket code in its own method 2020-01-09 12:00:42 -08:00
Benjamin Sergeant 7e521e38ef Windows ws build fix 2020-01-07 17:37:38 -08:00
Benjamin Sergeant 8410a65754 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 5020870cdf (apple ssl) unify read and write ssl utility code 2020-01-06 15:19:14 -08:00
Benjamin Sergeant f75684a412 apple ssl: aesthetic change (get rid of yoda comparisons/conditionals) 2020-01-06 14:45:05 -08:00
Benjamin Sergeant 7c63232157 (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 c10ff1d210 add reference ssl echo server using websockets and nginx reverse proxy to terminate ssl 2020-01-05 15:26:35 -08:00
Benjamin Sergeant 40e344a958 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 0bc4c4c136 add another compatibility python client 2020-01-04 15:37:40 -08:00
Benjamin Sergeant 196f3d4b8a Add a simple python program to send a file (debugging #140) 2020-01-04 15:18:02 -08:00
Benjamin Sergeant 162e228b34 (ws send) add option (-x) to disable per message deflate compression 2020-01-04 15:08:36 -08:00
Benjamin Sergeant e34d960b28 fix typo in ws embedded help 2020-01-04 14:37:53 -08:00
Benjamin Sergeant d62a102aba (ws send + receive) handle all message types (ping + pong + fragment) / investigate #140 2020-01-04 13:45:07 -08:00
Benjamin Sergeant 18091f49ab Install source code when making a Docker container 2020-01-04 13:44:02 -08:00
Benjamin Sergeant 24cd529693 add user list in readme 2019-12-30 22:16:29 -08:00
Benjamin Sergeant 4ba92832ce correct version number 2019-12-30 22:14:53 -08:00
Benjamin Sergeant 0520329350 tag version 2019-12-30 17:17:28 -08:00
Benjamin Sergeant ac0c218455 clang-format 2019-12-30 08:46:18 -08:00
Benjamin Sergeant 299dc0452e (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 f4af84dc06 (ws cobra to sentry) handle null events for empty queues 2019-12-28 10:16:18 -08:00
Benjamin Sergeant 6522bc06ba (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 50bea7dffa (ws cobra to sentry) refactor queue related code into a class 2019-12-27 18:24:45 -08:00
Benjamin Sergeant c4e9abfe80 (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 a805270d02 (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 e13b57c73b (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 5be84926ef (cobra client) send a websocket ping every 30s to keep the connection opened 2019-12-24 17:16:41 -08:00
Benjamin Sergeant 33e7271b85 (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 d72e5e70f6 socket tls options: display ciphers 2019-12-23 12:25:25 -08:00
Benjamin Sergeant e2c5f751bd (doc) fix typo 2019-12-22 20:33:14 -08:00
Benjamin Sergeant 351b86e266 v7.6.4 2019-12-22 20:32:10 -08:00
Benjamin Sergeant d0cbff4f4e (client) error handling, quote url in error case when failing to parse on 2019-12-22 20:30:29 -08:00
Benjamin Sergeant cbfc9b9f94 (ws) ws_cobra_publish: register callbacks before connecting 2019-12-22 20:29:37 -08:00
Benjamin Sergeant ca816d801f (doc) mention mbedtls in supported ssl server backend 2019-12-22 20:28:44 -08:00
Benjamin Sergeant 2f354d31eb update gitignore file 2019-12-20 15:21:36 -08:00
Benjamin Sergeant 2c6c1edd37 (tls) add a simple description of the TLS configuration routine for debugging 2019-12-20 15:18:04 -08:00
Benjamin Sergeant 9799e7e84b (mbedtls) correct support for using own certificate and private key 2019-12-20 15:13:26 -08:00
Benjamin Sergeant 81be970679 (ws commands) in websocket proxy, disable automatic reconnections + in Dockerfile, use alpine 3.11 2019-12-20 09:51:21 -08:00
Benjamin Sergeant 52221906f6 (cobra) Add TLS options to all cobra commands and classes. Add example to the doc. 2019-12-19 20:49:28 -08:00
Benjamin Sergeant 3e786fe23a formatting 2019-12-19 19:13:55 -08:00
Benjamin Sergeant de24aac7d5 (cobra-to-sentry) capture application version from device field 2019-12-18 15:41:59 -08:00
Benjamin Sergeant cd4b0ccf6f IXSentryClient: remove duplicated line 2019-12-18 15:29:53 -08:00
Benjamin Sergeant 4e1888ac19 (tls) Experimental TLS server support with mbedtls (windows) + process cert tlsoption (client + server) 2019-12-18 11:51:02 -08:00
Benjamin Sergeant 237ede56aa (tls servers) Make it clear that apple ssl and mbedtls backends do not support SSL in server mode 2019-12-18 10:43:05 -08:00
Benjamin Sergeant ba3b1c1a0f (tls options client) TLSOptions struct _validated member should be initialized to false 2019-12-17 14:10:28 -08:00
Benjamin Sergeant c60c606e0f (websocket client) improve the error message when connecting to a non websocket server 2019-12-16 17:57:43 -08:00
Benjamin Sergeant 5897de6bd9 (server) attempt at fixing #131 by using blocking writes in server mode 2019-12-12 12:17:29 -08:00
Benjamin Sergeant cca304fc18 (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 432624df0d update spdlog 2019-12-06 22:05:12 -08:00
Benjamin Sergeant 9c047fac72 (mac) convert SSL errors to utf8 2019-12-06 16:45:49 -08:00
Benjamin Sergeant 615df9cef0 Add script to extract the version from the header file and remove DOCKER_VERSION 2019-12-06 16:44:05 -08:00
Benjamin Sergeant 094d16304d (ws) cobra to sentry. Handle Error 429 Too Many Requests and politely wait before sending more data to sentry 2019-12-05 15:59:29 -08:00
Benjamin Sergeant c2377e8747 Using Alpine edge distribution to live on the edge 2019-12-05 15:46:01 -08:00
Benjamin Sergeant a63c0d6e78 sentry minidump upload timeout 2019-12-05 15:19:27 -08:00
Benjamin Sergeant aa3bface30 bunch of docker compose dev changes 2019-12-05 15:18:02 -08:00
Benjamin Sergeant 5d75a3aac3 (ws) #125 / fix build problem when jsoncpp is not installed locally 2019-12-03 17:18:16 -08:00
Benjamin Sergeant c75959fcb5 (ws) #125 / cmake detects an already installed jsoncpp and will try to use this one if present 2019-12-03 16:01:46 -08:00
Benjamin Sergeant af1a54f2ad (http client) use std::unordered_map instead of std::map for HttpParameters and HttpFormDataParameters class aliases 2019-12-03 09:25:00 -08:00
Benjamin Sergeant 8a385449ce [#113] Mention StreamSSL as an example windows schannel implementation 2019-12-03 09:22:27 -08:00
Benjamin Sergeant 396a6985ae (client) internal IXDNSLookup class requires a valid cancellation request function callback to be passed in 2019-12-02 14:52:19 -08:00
Benjamin Sergeant 92db53c470 (client) fix an overflow in the exponential back off code 2019-12-02 13:51:45 -08:00
Benjamin Sergeant 49865fed0a ws cobra_subscribe / sleep 1s instead of 10ms in the main loop 2019-12-02 09:52:52 -08:00
Benjamin Sergeant f3f71314d9 Improve the limitation section in the doc about TLS, cf bug #113 2019-12-02 09:52:05 -08:00
Benjamin Sergeant 2d593dd63b ws cobra subcommands / channel is not a positional argument anymore 2019-11-28 15:17:13 -08:00
Benjamin Sergeant 779b1e6077 add doc about using ws to run a cobra server/publisher/subscriber 2019-11-27 09:26:45 -08:00
Benjamin Sergeant 6054dd4b49 (http client) Add support for multipart HTTP POST upload + (ixsentry) Add support for uploading a minidump to sentry 2019-11-25 21:11:11 -08:00
Benjamin SergeantandGitHub 69aa3839bf Update README.md 2019-11-23 12:44:24 -08:00
Benjamin Sergeant 6808a0b500 On Darwin SSL, add ability to skip peer verification. 2019-11-20 13:58:08 -08:00
Benjamin Sergeant a7df6120d5 bump version for 32-bit fix 2019-11-20 11:35:07 -08:00
Benjamin Sergeant d20ab19fa9 tweaks to the test python proxy code / (moved here) https://gist.github.com/bsergean/bad452fa543ec7df6b7fd496696b2cd8 2019-11-20 11:32:21 -08:00
Benjamin Sergeant 2cfadd93b5 add a python websocket proxy which works on Linux, while ws proxy_server does not 2019-11-18 13:46:11 -08:00