Commit Graph

104 Commits

Author SHA1 Message Date
Martin Becker
ad07f3c665 Allow to disable "Origin" header
The origin header often makes trouble with current WebSocket implementations. Thus, we introduce the WEBSOCKET_HEADERS_NO_ORIGIN macro which disables this header it if defined.
2017-07-18 12:37:04 +02:00
Links
a4533a028c fix NULL ptr when server abort the connection (#207) 2017-07-08 08:38:05 +02:00
jesben
f68d9d8030 Adding method for beginSocketIOSSL 2017-06-18 12:50:07 +02:00
Links
adb52b11e9 handle cases when not all data can be written to TCP stack #187 2017-04-09 17:58:23 +02:00
Philippe Guay
26140be6c9 fix #150 typo lenght -> length 2017-03-06 15:09:03 -05:00
Links
34a2d282e4 allow to moves all Header strings to Flash (~300 Byte) #152 2017-02-22 15:30:58 +01:00
Links
e93a323e56 add support for Fragmentation / continuation opcode Receive 2017-02-22 14:29:26 +01:00
Carl Ouellette
60e3d1080e Merge branch 'master' into master 2017-02-07 16:05:20 -05:00
nguyenhunga5
6757b8b74c Fix socket.io issue
Fix socket.io issue reference from https://github.com/Links2004/arduinoWebSockets/issues/167#issuecomment-276724057
2017-02-03 13:30:20 +07:00
Markus
bef2541ede fix #162
missing isSocketIO init
2017-01-21 12:31:12 +01:00
Markus
dac71c4c23 moving host header
try to fix #159
2017-01-08 09:55:28 +01:00
Markus
0aaf50f87f mask ping for client
fix #34
2017-01-06 10:44:25 +01:00
Fábio Toledo
ab3b5bae46 Update WebSocketsClient.cpp
fix typo that was breaking the build
2016-11-24 02:25:01 -02:00
Markus
45bb7dbe23 Update WebSocketsClient.cpp
fix #140 Socket.io client doesn't reconnect to server
2016-11-23 17:39:48 +01:00
quantumlicht
5cd68c5304 - Remove duplicate handshake headers
- Add debug log for displaying handshake headers
Host, Origin, and User-Agent were duplicated in the case the client was
not socketIO or if it was and has a sessionId
2016-11-16 18:35:14 -05:00
Markus Sattler
d2719573d4 add function to send WS ping
sendPing();

#130
2016-10-22 19:47:44 +02:00
CAOU123
7810d0d0b3 Make library compatible with Particle devices 2016-10-20 15:46:44 -04:00
Markus
529a86cc26 Merge pull request #90 from kenkus-futurice/master
Add socket.io client
2016-09-11 17:13:57 +02:00
cella
b3d4367d10 fix spellings 2016-06-17 15:37:07 +01:00
Kenta Kusumoto
f8a5acc9b7 Add socket.io client 2016-06-06 15:21:13 +03:00
Markus
6972f7a84e Merge pull request #74 from wnemay/master
Adjustments to headers during client handshake.
2016-05-10 18:02:09 +02:00
Thorsten Freitag
dd14850bb6 Used case insensitive recognition for upgrade header. Should work as before, but also with servers that wrongly use lower case upgrade in the header 2016-05-10 11:56:01 +10:00
Thorsten Freitag
d36f7bb100 Changed Header value to lower case upgrade, seems to fix connection issues with SAP HCP IoT services. Changed setAuthorization(const char * auth) to send Auth header as is, without BASIC to enable oAuth tokens in header 2016-05-09 00:11:42 +10:00
Wayne May
10a8d3ca67 Adding Origin, as required by spec. https://tools.ietf.org/html/rfc6455#section-1.6 2016-04-30 20:55:59 -07:00
Wayne May
4f55c36c80 RFC requires a port for Host when it is non default. https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.23 2016-04-30 15:46:19 -07:00
Uri Shaked
00be8c7833 Make the Sec-WebSocket-Protocol header optional
Some server implementations (e.g. slack bots api) don't accept the connection if `Sec-WebSocket-Protocol` is specified.
2016-03-16 11:55:21 +02:00
Markus Sattler
450ca76a74 add return value to all send functions 2016-02-20 12:27:19 +01:00
Markus Sattler
c57a4c19ab add HTTP Basic Authorization to WS Client and Server
see: #55
2016-02-17 17:56:03 +01:00
Markus Sattler
2d87bfa3d6 less ram usage when using strings 2016-02-06 19:21:24 +01:00
Markus Sattler
0a8a8979ef Merge remote-tracking branch 'remotes/origin/master' into async
Conflicts:
	src/WebSockets.h
2016-01-29 13:22:15 +01:00
Markus Sattler
76853c7a73 async client working 2016-01-29 13:16:02 +01:00
Bruno Tibério
358d8c769e added subprotocol for ssl client also 2016-01-24 17:08:22 +00:00
Markus Sattler
1275914c86 first parts of client working 2016-01-24 00:52:23 +01:00
Markus Sattler
790a922d5a add deprecated warning for loop in async mode
fix sync mode
2016-01-23 18:41:45 +01:00
Markus Sattler
5c2c257526 fix server disconnect problems 2016-01-23 18:34:30 +01:00
Markus Sattler
57e30e0634 First steps to do async 2016-01-23 16:27:02 +01:00
Bruno Tibério
3e0b0bd377 updated with upstream, added subprotocol to client 2016-01-20 23:56:09 +00:00
Markus Sattler
21e092d179 code cleanup
improve readWait error handling
2015-12-28 16:33:54 +01:00
Markus Sattler
848979ecf0 use String to store fingerprint
(const char * can be invalidate based on which scope it coming from)
move _fingerprint to Client class only (server not need it)
2015-12-24 12:58:05 +01:00
Chris Hinze
07bd519940 disconnect on certificate mismatch 2015-12-24 04:52:05 +01:00
Chris Hinze
73680279f5 verify ssl certificate fingerprint 2015-12-24 04:47:11 +01:00
Markus Sattler
098c488ff0 add beginSSL 2015-12-10 10:10:06 +01:00
Markus Sattler
093797a815 first step for SSL (wss) support 2015-12-10 09:36:18 +01:00
Markus Sattler
7a22dad9d1 try to improve
see: #23
2015-12-05 11:43:03 +01:00
Markus Sattler
d5b0364f5c allow override of CB handling
see #14
2015-10-31 11:37:07 +01:00
Markus Sattler
187a4ac823 bump version
optimize String usage (less malloc / realloc)
remove double debug line
2015-10-21 17:17:09 +02:00
jc19000
b60599dcd7 Update websocket client handshake
Sending handshake with only one tcp.write.

Note: it solve connection problem with the QT websocket server.
2015-10-20 22:05:08 +02:00
Markus Sattler
39f912b982 add possibility to add Header To Payload to save one TCP package
see #12
2015-10-11 10:11:32 +02:00
Markus Sattler
afe1a2b9d3 Handle header name case Insensitive
see RFC2616 and #8
2015-07-26 11:08:02 +02:00
Markus Sattler
28b7619419 allow any "case" for Upgrade
RFC6455:
An |Upgrade| header field containing the value "websocket", treated as an ASCII case-insensitive value.
2015-06-17 10:39:27 +02:00