Dimon4eg
99a3bbc4f9
use C++11 enums ( #67 )
...
* use C++11 enums
* small rename
* update tests
* update tests
* update ws
* update ws
* update README.md
2019-05-11 14:22:06 -07:00
tiwariashish86
b1d13105e7
Fixed pong synchronization issue ( #62 )
...
* Fixed pong synchronization issue
* Minor optimization in lock by scoping it to necessary changes.
* Fixing compilation issues
2019-05-09 15:06:05 -07:00
Kumamon38
1eb98cc74f
fix ping, fix send frame close ( #49 )
...
* fix ping, fix send frame close
* fixes for data race on _closeCode etc. and fix test
* fixing one TC
* fix waiting forever if no time to change of readyState, and poll never end
* add 1005 code if no status code received
* fixes for 1005 code
* fix test issue
* fix macOS issue
* revert to master tests and renaming
2019-05-09 09:21:05 -07:00
Alexandre Konieczny
6918f863b1
fix data race on _useMask
2019-04-29 16:41:34 -07:00
Kumamon38
28210ee31d
add boolean and add missing protocol error close constant ( #41 )
2019-04-23 04:31:55 -07:00
Benjamin Sergeant
7df7453365
indentation / comestic changes
2019-04-19 16:57:38 -07:00
Kumamon38
aea859af52
Ping timeout use constant ( #36 )
...
* use constant for ping timeout
* change close code types
2019-04-19 09:16:25 -07:00
Kumamon38
5682129b1d
fix close code/reason issue ( #34 )
...
* fix close code/reason issue
* added code 1006 for abnormal closure
2019-04-18 10:02:31 -07:00
Kumamon38
c3431f19bf
Real ping ( #32 )
...
* close method change and fix code
* missing mutex
* wip
* renaming and fixes
* renaming, fixes
* added enablePong/disablePong, add tests
* added new test cases
* add 1 test case
* fix gcd name to greatestCommonDivisor
* move ping and ping timeout checks into socket poll, local var in test cases and indent fixes
* indent issue
2019-04-18 09:24:16 -07:00
Benjamin Sergeant
b0f6026c23
make closeWireSize a default parameter of WebSocketTransport::close
2019-04-16 09:55:12 -07:00
Kumamon38
b2aca491b6
close method change and fix code ( #28 )
...
* close method change and fix code
* missing mutex
2019-04-16 08:58:34 -07:00
Benjamin Sergeant
f029321664
can send TEXT message (we only support BINARY messages now)
2019-03-22 14:24:22 -07:00
Benjamin Sergeant
4ef3073ca4
(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
5b6fdb6526
cleanup, remove dead method
2019-03-21 10:06:59 -07:00
Benjamin Sergeant
eac611ab1e
Feature/connection state ( #25 )
...
* (cmake) add a warning about 32/64 conversion problems.
* fix typo
* New connection state for server code + fix OpenSSL double init bug
* update README
2019-03-20 18:34:24 -07:00
Michael Lu
663299c91e
Fixed heartbeat typos ( #22 )
2019-03-19 21:31:43 -07:00
Benjamin Sergeant
08c2cdbf1d
send can fail silently when sending would block (EWOULDBLOCK return for send) ( #18 )
...
* try to use a pipe for communication
* flush send buffer on the background thread
* cleanup
* linux fix / linux still use event fd for now
* cleanup
2019-03-13 23:09:45 -07:00
Benjamin Sergeant
d88bf16500
add new message type when receiving message fragments
2019-03-11 11:12:43 -07:00
Benjamin Sergeant
932bb732e0
Feature/send large message ( #14 )
...
* introduce send fragment
* can pass a fin frame
* can send messages which are a perfect multiple of the chunk size
* set fin only for last fragment
* cleanup
* last fragment should be of type CONTINUATION
* Add simple send and receive programs
* speedups receiving + better way to wait for thing
* receive speedup by using linked list of chunks instead of large array
* document bug
* use chunks to receive data
* trailing spaces
2019-02-20 18:59:07 -08:00
Benjamin Sergeant
8983dd97a1
use dynamically generated port number to configure servers in unittest
2019-01-28 15:24:19 -08:00
Benjamin Sergeant
885d245afb
heartbeat correct
2019-01-25 16:11:39 -08:00
Benjamin Sergeant
a8b6573f96
hearbeat
2019-01-24 12:42:49 -08:00
Benjamin Sergeant
bce5ef2dca
timeout is configurable
2019-01-03 18:33:08 -08:00
Benjamin Sergeant
64f649d1f9
split handshake code into its own files, so that Transport file is less massive
2019-01-02 20:07:54 -08:00
Benjamin Sergeant
097c7e5397
server unittest for validating client request / new timeout cancellation handling (need refactoring)
2019-01-02 16:08:32 -08:00
Benjamin Sergeant
2b136b2981
refactoring + cancellation was buggy during http upgrade
2019-01-02 07:45:07 -08:00
Benjamin Sergeant
3443e82812
more cleanup to propagate server connection error and let onOpen callback execute
2018-12-31 12:43:47 -08:00
Benjamin Sergeant
ea07afcc0b
can create a socket from a fd
2018-12-29 21:53:33 -08:00
Benjamin Sergeant
cbadecab33
non blocking dns lookup
2018-12-14 16:28:17 -08:00
Benjamin Sergeant
62528e6a0b
http upgrade and connections use non blocking sockets
2018-12-09 14:07:40 -08:00
Benjamin Sergeant
c64bc20bb5
cleanup
2018-11-14 15:52:28 -08:00
Benjamin Sergeant
9cb1d03411
tweaks doc / license + send proper error code when closing the connecion
2018-11-12 09:00:55 -08:00
Benjamin Sergeant
4fed156b90
per message deflate support (with zlib)
2018-11-09 18:42:09 -08:00
Benjamin Sergeant
de8bcd36e8
(satori_publisher) better error handling
2018-11-07 14:54:44 -08:00
Benjamin Sergeant
f12e655cf8
Add DockerFile + parse rsv1 field
2018-11-07 11:45:17 -08:00
Benjamin Sergeant
912d926260
Handle Sec-WebSocket-Accept correctly
2018-10-27 10:24:48 -07:00
Benjamin Sergeant
a8dfd640a7
capture an error code and a reason when the server closes the connection
2018-10-25 18:51:19 -07:00
Benjamin Sergeant
eae2f7d113
Better ping/pong support
2018-10-25 14:43:35 -07:00
Benjamin Sergeant
09af729c07
g++ build fixes
2018-10-01 14:46:11 -07:00
Benjamin Sergeant
9b8d6cedfe
First import
2018-09-27 14:57:19 -07:00