Benjamin Sergeant
285c12775a
cleanup
2019-02-28 21:18:27 -08:00
Benjamin Sergeant
6d56f7223a
http gzip compression
2019-02-27 18:02:45 -08:00
Benjamin Sergeant
0a752e7d18
cleanup argument parsing + add socket creation factory
2019-02-27 16:35:00 -08:00
Benjamin Sergeant
79f601ac65
follow redirects is optional
2019-02-25 22:01:04 -08:00
Benjamin Sergeant
069eccf415
chunk encoding / simple redirect support / -I option
2019-02-25 21:50:42 -08:00
Benjamin Sergeant
b563541b14
can specify extra headers
2019-02-25 17:17:05 -08:00
Benjamin Sergeant
3bcd6f97a6
simple HTTP post support (urlencode parameters)
2019-02-25 15:55:38 -08:00
Benjamin Sergeant
a0a53ab986
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-23 09:48:00 -08:00
Benjamin Sergeant
e20ddc2a08
unittest for sending large messages
2019-02-23 09:47:15 -08:00
Benjamin Sergeant
0b7c3ec235
can GET some pages
2019-02-14 20:11:42 -08:00
Benjamin Sergeant
29c96f287f
linux compile fix
2019-02-14 10:20:10 -08:00
Benjamin Sergeant
2a17cad1bf
add skeleton and broken http client code.
...
GET returns "Resource temporarily unavailable" errors...
2019-02-14 10:14:57 -08:00
Benjamin Sergeant
ae841af91a
use dynamically generated port number to configure servers in unittest
2019-01-28 15:24:19 -08:00
Benjamin Sergeant
ee12fbdb5f
windows build fix
2019-01-27 10:46:02 -08:00
Benjamin Sergeant
316c630830
constexpr to declare number of fds
2019-01-26 21:01:36 -08:00
Benjamin Sergeant
1ea5db6110
linux fix
2019-01-26 20:57:48 -08:00
Benjamin Sergeant
986d9a00c0
remove shutdown call
2019-01-26 20:54:23 -08:00
Benjamin Sergeant
7a05a11014
rebase poll branch
2019-01-26 20:50:25 -08:00
Benjamin Sergeant
f09434263c
insensitive string compare when validating server connection header
2019-01-25 16:17:51 -08:00
Benjamin Sergeant
fa7ef06f4d
heartbeat correct
2019-01-25 16:11:39 -08:00
Benjamin Sergeant
3c9ec0aed0
close server socket on exit
2019-01-24 21:16:32 -08:00
Benjamin Sergeant
05033714bf
hearbeat
2019-01-24 12:42:49 -08:00
Benjamin Sergeant
fdbd213fa2
check and validate the Connection: Upgrade header in client/server
2019-01-15 09:31:37 -08:00
Tony Lin
17b01a8c66
Fix missing upgrade header error
2019-01-15 15:35:37 +08:00
Benjamin Sergeant
79dd766fab
C++14 + use make_unique and make_shared to make shared pointers
2019-01-11 21:25:06 -08:00
Benjamin Sergeant
1fa75d7fb2
check select errors better
2019-01-07 11:18:00 -08:00
Benjamin Sergeant
e30ef4a87c
DNSLookup _id member does not need to be an atomic
2019-01-06 18:32:19 -08:00
Benjamin Sergeant
9fc94f0487
DNSLookup: fix #8
2019-01-06 18:27:26 -08:00
Benjamin Sergeant
121acdab6f
DNSLookup: copy hostname and port instead of accessing member
2019-01-06 18:17:12 -08:00
Benjamin Sergeant
6deaa03114
return false -> return -1
2019-01-06 18:10:39 -08:00
Benjamin Sergeant
a21aae521f
remove dead file
2019-01-06 14:26:11 -08:00
Benjamin Sergeant
a478f734f6
gcc linux compile fix
2019-01-06 12:12:39 -08:00
Benjamin Sergeant
98c579da03
make a class hierarchy for server code (IXWebSocketServer <- IXSocketServer)
2019-01-06 12:09:31 -08:00
Benjamin Sergeant
cc8a9e883e
unittest + compiler warnings
2019-01-05 21:10:08 -08:00
Benjamin Sergeant
4d587e35d8
windows compile fix
2019-01-05 21:02:55 -08:00
Benjamin Sergeant
50f4fd1115
int -> ssize_t for socker recv and send
2019-01-05 20:53:50 -08:00
Benjamin Sergeant
06d2b68696
header refactoring
2019-01-05 20:38:43 -08:00
Benjamin Sergeant
bf6f057777
windows connect (compile fix)
2019-01-05 17:35:50 -08:00
Benjamin Sergeant
b57c1d69f2
windows connect potential fix
2019-01-05 17:32:21 -08:00
Benjamin Sergeant
ff265d83f9
more accurate description of errors
2019-01-05 17:18:43 -08:00
Benjamin Sergeant
c8c81366f7
windows (compile) fix
2019-01-05 17:04:09 -08:00
Benjamin Sergeant
9a37fd56d1
windows fix
2019-01-05 17:02:39 -08:00
Benjamin Sergeant
e4b0286a25
fix gcc warning
2019-01-05 16:26:11 -08:00
Benjamin Sergeant
78d88a8520
openssl cleanup
2019-01-05 11:42:25 -08:00
Benjamin Sergeant
46d00360a8
unittest on appveyor
2019-01-04 17:28:13 -08:00
Benjamin Sergeant
af3df5e519
Socket::readLine works with arbitrary long lines
2019-01-03 18:47:01 -08:00
Benjamin Sergeant
d75753ec98
timeout is configurable
2019-01-03 18:33:08 -08:00
Benjamin Sergeant
332bb87231
remove useless FIXME comment
2019-01-03 18:02:03 -08:00
Benjamin Sergeant
9bc2e95196
capture path/uri when connecting, and pass it back through callbacks in the openInfo member
2019-01-03 17:44:10 -08:00
Benjamin Sergeant
30a0aa0a0f
implement a max connections (default = 32) settings
2019-01-03 17:05:44 -08:00