Benjamin Sergeant
217d0650f4
bump version
2019-08-26 10:20:01 -07:00
Benjamin Sergeant
45d7bb34d7
ws connect has a new option to send HTTP headers + use WebSocketHttpHeaders instead of unordered_map<string, string>
2019-08-26 10:19:09 -07:00
Benjamin Sergeant
2e32319236
CobraConnection: sets a unique id field for all messages sent to [cobra]( https://github.com/machinezone/cobra ).
...
CobraConnection: sets a counter as a field for each event published.
2019-08-26 09:51:37 -07:00
Benjamin Sergeant
8eb0d0b7c3
put windows poll in the global namespace, not ix namespace
2019-08-26 09:51:37 -07:00
Benjamin Sergeant
193da820b2
Windows: use select instead of WSAPoll, through a poll wrapper
2019-08-22 10:34:17 -07:00
Benjamin Sergeant
c6198305d4
add new makefile target to make git tags
2019-08-20 09:21:30 -07:00
Benjamin Sergeant
c77d6ae3f5
bump version + talk about Windows fix in the changelog
2019-08-20 09:20:02 -07:00
Benjamin Sergeant
c72b2dbd6b
add poll alias to WSAPoll on Windows
2019-08-19 22:26:25 -07:00
Benjamin Sergeant
835523f77b
fix #101 / wrong include in IXSocket.cpp on Windows
2019-08-19 22:19:39 -07:00
Benjamin Sergeant
ec8a35b587
README tweaks
2019-08-19 20:35:26 -07:00
Benjamin Sergeant
aca18995d1
README / formatting
2019-08-19 20:33:56 -07:00
Benjamin Sergeant
f9178f58aa
README.md: add reference to WSAStartup to initialize the networking system
2019-08-19 09:47:59 -07:00
Benjamin Sergeant
2477946e68
(CI) linux: install libmbedtls
2019-08-14 21:49:43 -07:00
Benjamin Sergeant
7c4d040384
(CI) try to build Linux on Ubuntu Bionic
2019-08-14 21:44:49 -07:00
Benjamin Sergeant
197cf8ed36
bump version
2019-08-14 21:36:20 -07:00
Benjamin Sergeant
dd0d7c268f
CobraMetricThreadedPublisher _enable flag is an atomic, and CobraMetricsPublisher is enabled by default
2019-08-14 19:54:30 -07:00
Benjamin Sergeant
b2bfccac0a
clang format
2019-08-13 10:59:18 -07:00
Benjamin Sergeant
8b8b352e61
fix #99 / Connect error descriptions are invalid
2019-08-13 10:49:11 -07:00
Benjamin Sergeant
0403dd354b
update readme
2019-08-06 20:55:44 -07:00
Benjamin Sergeant
b78b453504
fix #98
2019-08-02 17:11:53 -07:00
Benjamin Sergeant
f8fef833b8
new options for cobra commands
...
- ws cobra_subscribe has a new -q (quiet) option
- ws cobra_subscribe knows to and display msg stats (count and # of messages received per second)
- ws cobra_subscribe, cobra_to_statsd and cobra_to_sentry commands have a new option, --filter to restrict the events they want to receive
2019-08-01 15:22:24 -07:00
Benjamin Sergeant
fc4068f2e5
ws connect command has a new option to send in binary mode (still default to text)
2019-07-25 15:48:45 -07:00
Benjamin Sergeant
c300866dcc
add better line editing capability to ws connect, thanks to linenoise-cpp
2019-07-25 11:54:50 -07:00
Benjamin Sergeant
18485a74e5
README.md / cosmetic
2019-07-23 14:04:45 -07:00
Benjamin Sergeant
4dd5950406
fix typo in README
2019-07-23 13:52:16 -07:00
Benjamin Sergeant
98de54106d
README: add reference to conan/vcpk to the build section
2019-07-22 20:41:06 -07:00
Benjamin Sergeant
4d64272a1a
do not update homebrew when installing a package
2019-07-03 14:49:39 -07:00
Benjamin Sergeant
0ccece908b
ci / get mbedtls from homebrew on mac
2019-07-03 14:46:05 -07:00
Benjamin Sergeant
64cd725060
do not use mbed tls for the unittest
2019-07-03 14:39:46 -07:00
Benjamin Sergeant
cc2fa55608
add new docker file to run the unittest with tsan on latest Ubuntu
2019-06-30 23:37:25 -07:00
Benjamin Sergeant
4fb268585c
dns / use cancellable instead of blocking
2019-06-30 23:26:14 -07:00
Benjamin Sergeant
3a2495c456
make IXDNSLookup more robust
2019-06-26 19:12:48 -07:00
Benjamin Sergeant
1d4d058ed0
simplify IXDNSLookup
2019-06-26 16:25:07 -07:00
Benjamin Sergeant
15a1347531
use poll instead of select in SocketServer
2019-06-25 17:18:24 -07:00
Benjamin Sergeant
4cbfa71338
switch from select to poll to deal with Android 9 giving us high socket fds when calling ::connect
2019-06-25 17:11:27 -07:00
Benjamin Sergeant
705625af0a
refactor select code + add protection against large fds (cf Android 9)
2019-06-25 15:41:39 -07:00
Benjamin Sergeant
01bc6654cb
Add extra check in IXWebSocketCloseTest.cpp
2019-06-25 14:10:39 -07:00
Benjamin Sergeant
eea42bff66
select refactoring IXSocket::select -> IXSocket::poll
2019-06-25 10:16:40 -07:00
Benjamin Sergeant
06b4762c19
disable CI on Windows
2019-06-25 00:28:11 -07:00
Benjamin Sergeant
1ee9479009
cmake use_tls fix
2019-06-24 23:34:31 -07:00
Benjamin Sergeant
73e94ed03a
do not build mbedtls on ci
2019-06-24 23:28:35 -07:00
Benjamin Sergeant
1883519e82
try to disable TLS for unittesting
2019-06-24 23:27:44 -07:00
Benjamin Sergeant
6f6c1f85ef
CI / build zlib and mbedtls locally
2019-06-24 23:17:19 -07:00
Benjamin Sergeant
c55ff3cb1b
CI work
2019-06-24 10:17:57 -07:00
Benjamin Sergeant
d8e83caffc
fix warning
2019-04-13 21:16:04 -07:00
Benjamin Sergeant
fbf80b9f50
ws: new command to subscribe to a cobra server and send an event to a sentry server
2019-04-11 16:03:05 -07:00
Benjamin Sergeant
c2a9139d41
(ws) add subcommands: cobra subscribe, and cobra subscribe to statsd bridge
2019-04-08 21:56:01 -07:00
Benjamin Sergeant
6e3dff149a
linux ci tentative fix
2019-04-03 22:02:10 -07:00
Benjamin Sergeant
1bacbe38f4
better unittest runner / can run through lldb and produce a junit XML artifact
2019-03-29 15:54:05 -07:00
Benjamin Sergeant
2e9c610ac9
Bump sleep time in test shell script
2019-03-29 09:36:56 -07:00
Benjamin Sergeant
eb063ec60a
(redis_subscribe) in verbose mode, received message gets printed with a 'received: ' header
2019-03-29 09:35:19 -07:00
Benjamin Sergeant
37fb14646d
Add clarification notice about third party modules
2019-03-29 09:34:17 -07:00
Benjamin Sergeant
ae543518d3
offline version of remark-latest
2019-03-28 16:06:43 -07:00
Benjamin Sergeant
c865d64608
redis conf slides
2019-03-28 14:17:19 -07:00
Benjamin Sergeant
3004422cb6
slides
2019-03-27 16:27:52 -07:00
Benjamin Sergeant
0c46a17443
add redis-conf slides
2019-03-27 15:53:55 -07:00
Benjamin Sergeant
497373d976
ws redis command improvements + test script
2019-03-27 13:41:46 -07:00
Benjamin Sergeant
91198aca0d
(ws) redis_subscribe and redis_publish can take a password + display subscribe response
2019-03-26 09:33:22 -07:00
Benjamin Sergeant
b17a5e5f0b
update doc
2019-03-24 21:48:14 -07:00
Benjamin Sergeant
3f0ef59f65
remove Formula folder
...
Homebrew stuff is at https://github.com/bsergean/homebrew-IXWebSocket
2019-03-24 21:43:38 -07:00
Benjamin Sergeant
1e96edc293
(server) fix masking bug
2019-03-22 15:33:04 -07:00
Benjamin Sergeant
0afb77393b
can send TEXT message (we only support BINARY messages now)
2019-03-22 14:24:22 -07:00
Benjamin Sergeant
7614b642bb
unmasked code is broken
2019-03-22 14:24:15 -07:00
Benjamin Sergeant
bc89580dfe
remove printf + unittest fix
2019-03-22 09:56:28 -07:00
Benjamin Sergeant
358ae13a88
(server) server should not mask data when sending to client (some python client libraries enforce that and assert)
2019-03-22 09:53:56 -07:00
Benjamin Sergeant
ccf9dcba70
(server) HTTP response is malformed
2019-03-22 09:52:19 -07:00
Benjamin Sergeant
94604fad61
minor cleanup
2019-03-21 13:51:25 -07:00
Benjamin Sergeant
5c4cc7c50d
HTTP/1.1 response should contains a reason (websocket server)
...
Fix compatibility problem with websockets python library, where the response does not contains a reason
File "/.../lib/python3.7/site-packages/websockets/http.py", line 126, in read_response
version, status_code, reason = status_line[:-2].split(b' ', 2)
ValueError: not enough values to unpack (expected 3, got 2)
The above exception was the direct cause of the following exception:
websockets.exceptions.InvalidMessage: Malformed HTTP message
2019-03-21 13:43:47 -07:00
Benjamin Sergeant
9ed961ec06
cleanup, remove dead method
2019-03-21 10:06:59 -07:00
Benjamin Sergeant
e6bd8cc8c4
(cmake) add a warning about 32/64 conversion problems.
2019-03-20 21:51:38 -07:00
Benjamin Sergeant
310724c961
make PollResultType an enum class
2019-03-19 09:29:57 -07:00
Benjamin Sergeant
ceba8ae620
fix bug with isReadyToWrite
2019-03-18 22:05:04 -07:00
Benjamin Sergeant
fead661ab7
workaround bug in Socket::isReadyToWrite
2019-03-18 20:37:33 -07:00
Benjamin Sergeant
9c8c17f577
use milliseconds
2019-03-18 20:17:44 -07:00
Benjamin Sergeant
a04f83930f
ws / log subcommand name
2019-03-18 17:54:06 -07:00
Benjamin Sergeant
c421d19800
disable sigpipe on osx when writing/reading into a dead pipe
2019-03-18 17:52:01 -07:00
Benjamin Sergeant
521f02c90e
edit homebrew install steps
2019-03-18 15:45:33 -07:00
Benjamin Sergeant
c86b6074f2
add an install target
2019-03-18 15:11:08 -07:00
Benjamin Sergeant
d5d1a2c5f4
no default parameters for isReadyToWrite and isReadyToRead
2019-03-18 14:31:21 -07:00
Benjamin Sergeant
2a90e3f478
when trying to flush the send buffer, use select to wait until it is possible instead of using sleep to retry at a given frequency
2019-03-18 14:25:27 -07:00
Benjamin Sergeant
e1de1f6682
remove unused gitmodule file
2019-03-17 10:38:48 -07:00
Benjamin Sergeant
47ed5e4d4d
remove unused folder
2019-03-17 10:38:19 -07:00
Benjamin Sergeant
d77f6f5659
linux hangs when closing
2019-03-16 11:38:23 -07:00
Benjamin Sergeant
05f0045d5d
edit README
2019-03-16 11:32:46 -07:00
Benjamin Sergeant
c4afb84f6e
use pipe to abort select on Linux as well as macOS
2019-03-15 17:46:40 -07:00
Benjamin Sergeant
b0b2f9b6d2
missing assert include on Linux
2019-03-15 11:43:27 -07:00
Benjamin Sergeant
ee37feb489
cleanup
2019-03-15 11:41:57 -07:00
Benjamin Sergeant
6b8337596f
unittest fix
2019-03-14 18:58:16 -07:00
Benjamin Sergeant
250665b92e
linux compile fix
2019-03-14 18:55:33 -07:00
Benjamin Sergeant
86b83c889e
linux fixes
2019-03-14 18:54:47 -07:00
Benjamin Sergeant
c9c657c07b
build fix
2019-03-14 18:53:21 -07:00
Benjamin Sergeant
4f2babaf54
select interrupt cleanup
2019-03-14 18:37:38 -07:00
Benjamin Sergeant
1b03bf4555
linux build fix
2019-03-14 15:17:17 -07:00
Benjamin Sergeant
977b995af9
replace uint8_t with uint64_t for the send/close requests types / use named variable to index into the _fildes array
2019-03-14 15:03:57 -07:00
Benjamin Sergeant
310ab990bd
set a default close reason string
2019-03-14 14:52:51 -07:00
Benjamin Sergeant
d6b49b54d4
do not busy loop while sending
2019-03-14 14:48:08 -07:00
Benjamin Sergeant
f00cf39462
remove docker folder
2019-03-14 14:48:02 -07:00
Benjamin Sergeant
18550cf1cb
send optimization + ws file transfer test
2019-03-14 14:47:53 -07:00
Benjamin Sergeant
d6597d9f52
websocket send: make sure all data in the kernel buffer is sent
2019-03-11 22:16:55 -07:00
Benjamin Sergeant
892ea375e3
add new message type when receiving message fragments
2019-03-11 11:12:43 -07:00