Commit Graph
100 Commits
Author SHA1 Message Date
Benjamin Sergeant 879a4b38aa std::chrono::duration is not initialized to 0 units of time 2019-05-26 14:16:15 -07:00
Benjamin Sergeant 13c87e38ed do not select on a closed file descriptor (doing so crash on Android) 2019-05-22 18:58:22 -07:00
Benjamin Sergeant 718154cfb4 enable IXWebSocketMessageQTest.cpp on mac and windows 2019-05-22 11:03:13 -07:00
Benjamin Sergeant d6eabae4f0 one cpu on windows for executing tests 2019-05-17 15:45:31 -07:00
Benjamin Sergeant 6bd81bb92e add back IXWebSocketMessageQueue, with its unittest disabled 2019-05-16 22:41:39 -07:00
Benjamin Sergeant 126a91dfec Linux build fix: strncpy needs <string.h> 2019-05-16 22:21:15 -07:00
Benjamin Sergeant 51fa147b99 Revert "Merge branch 'Dimon4eg-message-queue'"
This reverts commit 13fa325134, reversing
changes made to aecd5e9c94.
2019-05-16 22:15:17 -07:00
Benjamin Sergeant 6160877167 Fix Address Sanitizer heap-buffer-overflow in WebSocketHandshakeKeyGen::generate
=================================================================
==5077==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x6070000077e0 at pc 0x00010ba18c54 bp 0x70000dd45b10 sp 0x70000dd45b08
READ of size 1 at 0x6070000077e0 thread T12
    #0 0x10ba18c53 in WebSocketHandshakeKeyGen::generate(char const*, char*) libwshandshake.hpp:113
    #1 0x10ba2065a in ix::WebSocketHandshake::serverHandshake(int, int) IXWebSocketHandshake.cpp:356
    #2 0x10b9c4952 in ix::WebSocketTransport::connectToSocket(int, int) IXWebSocketTransport.cpp:190
    #3 0x10b97e4c2 in ix::WebSocket::connectToSocket(int, int) IXWebSocket.cpp:193
2019-05-16 21:59:03 -07:00
Benjamin Sergeant 717f049579 Merge branch 'Dimon4eg-message-queue' 2019-05-16 19:26:45 -07:00
Benjamin Sergeant f71331056c bring back socket mutex which is needed, some CI failures are happening without it 2019-05-16 19:23:32 -07:00
Benjamin Sergeant c131ff2662 disable socket mutex usage in WebSocketTransport 2019-05-16 19:23:32 -07:00
Benjamin Sergeant 616447e01d remove dead code 2019-05-16 19:23:32 -07:00
Benjamin Sergeant 8c1d66bcf3 refactor connect unittest so that it hits a local server instead of a remote server 2019-05-16 19:23:32 -07:00
Benjamin Sergeant bea580b906 travis makefile fix 2019-05-16 19:23:32 -07:00
Benjamin Sergeant c513e02b24 try to run ws test on linux + macOS on travis 2019-05-16 19:23:32 -07:00
Benjamin Sergeant 90d71deb0f Add constants for closing code and messages 2019-05-16 19:23:32 -07:00
Benjamin Sergeant fc0776303a first socket test hit a local server instead of a remote server / this can help with a windows intermittent failure 2019-05-16 19:23:32 -07:00
Benjamin Sergeant bb0c6f9a8a build ws on travis (mac + linux) 2019-05-16 19:23:32 -07:00
Benjamin Sergeant dae21e7681 use a regular mutex instead of a recursive one + stop properly 2019-05-16 19:23:32 -07:00
Benjamin Sergeant d28437ecc0 adding logging to IXWebSocketTestConnectionDisconnection makes it fails reliably 2019-05-16 19:23:32 -07:00
Benjamin Sergeant 7fec24af67 Update README.md 2019-05-16 19:23:32 -07:00
Benjamin Sergeant 0de3637569 Update README.md 2019-05-16 19:23:32 -07:00
Benjamin Sergeant f94c7cef59 -j option actually work ... 2019-05-16 19:23:32 -07:00
Benjamin Sergeant 7734d63b1b unittest / add options to set the number of jobs 2019-05-16 19:23:32 -07:00
Benjamin Sergeant f894504761 enum class HttpErrorCode derives from int 2019-05-16 19:23:32 -07:00
Benjamin Sergeant 7aa9b4ee64 try to re-enable some tests 2019-05-16 19:23:32 -07:00
Benjamin Sergeant a12250dc16 recursive mutex + enable test that was breaking on Ubuntu Xenial + gcc + tsan 2019-05-16 19:23:32 -07:00
Benjamin Sergeant d8fbe1a63e comment failing test 2019-05-16 19:23:32 -07:00
Benjamin Sergeant 91e1760719 comment failing test 2019-05-16 19:23:32 -07:00
Benjamin Sergeant 02c8a62e7d do not build ws for now on travis 2019-05-16 19:23:32 -07:00
Benjamin Sergeant 0c9bcfb8ac more protection against socket when closing 2019-05-16 19:23:32 -07:00
Benjamin Sergeant bd4c5037c7 fix compile errors with C++ enum class 2019-05-16 19:23:32 -07:00
Benjamin Sergeant ccaaedf38f close and stop with code and reason + docker = ubuntu xenial 2019-05-16 19:23:32 -07:00
Benjamin Sergeant e2acbe8499 Revert "Revert "fix cast warning caught on windows""
This reverts commit 25eaf730bc.
2019-05-16 19:23:32 -07:00
Benjamin Sergeant aba880a6b3 Revert "fix cast warning caught on windows"
This reverts commit 4edb7447df.
2019-05-16 19:23:32 -07:00
Benjamin Sergeant 616e8da0a5 fix cast warning caught on windows 2019-05-16 19:23:32 -07:00
Benjamin Sergeant 4fc8224264 build with gcc on Linux 2019-05-16 19:23:32 -07:00
Benjamin Sergeant 66dae5840c use spdlog for logging in the unittest 2019-05-16 19:23:32 -07:00
Benjamin Sergeant 89b9e6e531 fix inverted conditional 2019-05-16 19:23:31 -07:00
Benjamin Sergeant fc4623381a server code / add dedicated thread to close/join terminated connection threads 2019-05-16 19:23:31 -07:00
Benjamin Sergeant 1023e925f6 travis cmake version on macOS does not know --parallel option 2019-05-16 19:23:31 -07:00
Benjamin Sergeant 5d65365751 build in parallel + stop building linux + clang 2019-05-16 19:23:31 -07:00
Benjamin Sergeant ee64a6ec7e disable ping tests for now as they are not super reliable 2019-05-16 19:23:31 -07:00
Benjamin Sergeant 9bc09105d7 Feature/windows ci (#76)
* close with params

* ...

* different generator

* core size = 1

* disable more tests to get something working on windows

* try to enable another test on windows

* enable all OS

* set proper version of linux

* another try

* try again with just env variables

* Revert "core size = 1"

This reverts commit 29af74bba6.

* add windows and mac

* Revert "close with params"

This reverts commit 6bb00b6788.
2019-05-16 19:23:31 -07:00
Benjamin Sergeant 6d900b8ffb bring back socket mutex which is needed, some CI failures are happening without it 2019-05-16 15:58:20 -07:00
Benjamin Sergeant 5a2c070898 disable socket mutex usage in WebSocketTransport 2019-05-16 15:46:32 -07:00
Benjamin Sergeant 58f17ddb09 remove dead code 2019-05-16 15:05:20 -07:00
Benjamin Sergeant 47c9786bab refactor connect unittest so that it hits a local server instead of a remote server 2019-05-16 14:25:31 -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 309ed80446 Add constants for closing code and messages 2019-05-16 12:46:53 -07:00
Benjamin Sergeant 01f2eb6615 first socket test hit a local server instead of a remote server / this can help with a windows intermittent failure 2019-05-16 12:24:58 -07:00
Benjamin Sergeant 3a55c7aaba build ws on travis (mac + linux) 2019-05-16 07:01:15 -07:00
Benjamin Sergeant 243f41bf28 use a regular mutex instead of a recursive one + stop properly 2019-05-15 19:26:02 -07:00
Benjamin Sergeant 934b28f5b6 adding logging to IXWebSocketTestConnectionDisconnection makes it fails reliably 2019-05-15 19:26:02 -07:00
Benjamin SergeantandGitHub edfc03bed2 Update README.md 2019-05-15 19:22:05 -07:00
Benjamin SergeantandGitHub 59ce71b64d Update README.md 2019-05-15 18:57:17 -07:00
Benjamin Sergeant d473a7dc22 -j option actually work ... 2019-05-15 18:15:45 -07:00
Benjamin Sergeant efb063d600 unittest / add options to set the number of jobs 2019-05-15 17:52:03 -07:00
Benjamin Sergeant 12fe55905c enum class HttpErrorCode derives from int 2019-05-15 16:50:00 -07:00
Benjamin Sergeant aed831c075 try to re-enable some tests 2019-05-15 16:28:29 -07:00
Benjamin Sergeant 5ad15fad8b recursive mutex + enable test that was breaking on Ubuntu Xenial + gcc + tsan 2019-05-15 16:01:05 -07:00
Benjamin Sergeant a7d328896c comment failing test 2019-05-15 15:44:14 -07:00
Benjamin Sergeant 1274a151d0 comment failing test 2019-05-15 15:37:30 -07:00
Benjamin Sergeant d93d639345 do not build ws for now on travis 2019-05-15 15:26:49 -07:00
Benjamin Sergeant e0d9a16985 more protection against socket when closing 2019-05-15 15:18:46 -07:00
Benjamin Sergeant 7f1070dde6 fix compile errors with C++ enum class 2019-05-15 15:18:46 -07:00
Benjamin Sergeant 7f1e70329c close and stop with code and reason + docker = ubuntu xenial 2019-05-15 15:18:46 -07:00
Benjamin Sergeant c935be6a49 Revert "Revert "fix cast warning caught on windows""
This reverts commit 25eaf730bc.
2019-05-13 22:16:49 -07:00
Benjamin Sergeant 4ee502fa1a Revert "fix cast warning caught on windows"
This reverts commit 4edb7447df.
2019-05-13 21:35:34 -07:00
Benjamin Sergeant 084805b248 fix cast warning caught on windows 2019-05-13 21:29:47 -07:00
Benjamin Sergeant 2843a20814 build with gcc on Linux 2019-05-13 17:35:21 -07:00
Benjamin Sergeant 08a56726a8 use spdlog for logging in the unittest 2019-05-13 17:32:57 -07:00
Benjamin Sergeant 7cad8654e5 fix inverted conditional 2019-05-13 17:18:07 -07:00
Benjamin Sergeant 841cfe37dd server code / add dedicated thread to close/join terminated connection threads 2019-05-13 17:17:35 -07:00
Benjamin Sergeant 849a41293f travis cmake version on macOS does not know --parallel option 2019-05-13 17:17:35 -07:00
Benjamin Sergeant 5b17edb3f9 build in parallel + stop building linux + clang 2019-05-13 17:06:56 -07:00
Benjamin Sergeant 9f2047dad6 disable ping tests for now as they are not super reliable 2019-05-13 17:01:22 -07:00
Benjamin SergeantandGitHub c01c53c5c7 Feature/windows ci (#76)
* close with params

* ...

* different generator

* core size = 1

* disable more tests to get something working on windows

* try to enable another test on windows

* enable all OS

* set proper version of linux

* another try

* try again with just env variables

* Revert "core size = 1"

This reverts commit 29af74bba6.

* add windows and mac

* Revert "close with params"

This reverts commit 6bb00b6788.
2019-05-13 16:51:58 -07:00
Benjamin Sergeant 7740028291 all derived class use final keyword 2019-05-12 11:43:21 -07:00
Benjamin Sergeant d575c7c2a9 bump version to 2.0.0 2019-05-11 14:22:41 -07:00
Benjamin Sergeant 80226cb7d3 add comment about why a unittest is disabled 2019-05-11 12:25:40 -07:00
Benjamin Sergeant 6189e0cd50 remove irrelevant comment 2019-05-11 12:24:11 -07:00
Benjamin Sergeant 4934f5846b minor tweaks to have full feature parity before unittest broke 2019-05-11 11:54:21 -07:00
Benjamin Sergeant c8c1aabf20 fix race condition in SelectInteruptPipe, where _fildes are not protected (caught by fedora tsan) 2019-05-11 11:45:26 -07:00
Benjamin Sergeant 518a445074 rename some variables, minor cleanup 2019-05-11 10:24:28 -07:00
Benjamin Sergeant 16758293ff fix warning in statsd_client about %m gnu only printf special char 2019-05-11 09:22:29 -07:00
Benjamin Sergeant e965322a98 fix overflow warning in msgpack11.cpp 2019-05-10 21:17:05 -07:00
Benjamin Sergeant fcf5c41b43 add env var to display the ws command typed in 2019-05-10 16:27:23 -07:00
Benjamin Sergeant 88adbf0ca2 cout -> spdlog 2019-05-10 12:33:34 -07:00
Benjamin Sergeant f90fc4bfa2 fix static analyzer thing with un-used variable 2019-05-09 16:57:58 -07:00
Benjamin Sergeant dc1f9fb243 use spdlog for logging in ws + unittest + remove un-needed mutex 2019-05-09 15:30:44 -07:00
Benjamin Sergeant 7c30c8aa07 cout -> cerr 2019-05-09 15:06:42 -07:00
Benjamin Sergeant 287537b34a tweak unittest sleep duration to fix gcc+linux CI 2019-05-09 11:10:39 -07:00
Benjamin Sergeant 094b5834b7 warning police 2019-05-09 09:25:56 -07:00
Benjamin Sergeant 232aa069d2 IXCobraMetricsThreadedPublisher.cpp uses a lambda to log instead of std::cerr 2019-05-08 18:53:32 -07:00
Benjamin Sergeant d53c9c5ecf change default ports for the ws command line tool 2019-05-08 13:56:42 -07:00
Benjamin Sergeant 48c19b4f3c ws connect display more accurate messages for incoming messages 2019-05-08 13:56:42 -07:00
Benjamin Sergeant 1e1d5c3f7d update appveyor windows build file 2019-05-06 17:50:55 -07:00
Benjamin Sergeant 3893c12054 socket server / used wrong mutex to protect _connectionsThreads 2019-05-06 12:24:20 -07:00