Commit Graph

257 Commits

Author SHA1 Message Date
Guillermo Rauch
caacf6d442 polling-xhr: added OPTIONS support, fixes CORS 2014-03-06 11:33:05 -08:00
Julian Salazar
ef77af8c2f close() properly when triggered in connection handler 2014-02-20 01:06:41 -08:00
Guillermo Rauch
ab4ea948cc Merge pull request #218 from rase-/add/binary-support
Binary support
2014-02-18 17:28:57 -08:00
Tony Kovanen
20d06700c3 Removed the need to set any default values for binary support in transports 2014-02-18 23:56:01 +02:00
Tony Kovanen
a9a6f25e76 style 2014-02-18 23:33:22 +02:00
Tony Kovanen
8cd37f0839 Style 2014-02-15 09:15:12 +02:00
Guillermo Rauch
9ab3b106d9 socket: restore 0.8 compatibility 2014-02-12 12:40:22 -08:00
binlain
336e05b461 Fix dos by possibly creating many intervals 2014-02-12 22:12:39 +01:00
binlain
4c84571280 Merge pull request #1 from LearnBoost/master
123
2014-02-12 15:28:54 +01:00
Nick LaGrow
468ca23339 Merge branch 'master' of https://github.com/LearnBoost/engine.io into upgrade 2014-02-08 12:11:35 -08:00
Nick LaGrow
17143bde09 Deny upgrade when proxy doesn't support websocket
Some proxies - such as nginx and squid - don't support websocket. The client attempting to upgrade its transport caused the engine.io connection to break (see GH-177). THe server now checks within handleRequest to see if the transport has changed without an upgrade request - if this is the case, the upgrade request is denied (defaults to polling) and the connection is maintained
2014-02-08 12:10:47 -08:00
Tony Kovanen
d71fde22fd Making encoding work with callbacks. Not completely there yet. 2014-02-04 00:04:05 +02:00
Guillermo Rauch
aa0527fe54 Merge pull request #216 from mokesmokes/reqfix
fix Socket.request for upgraded sockets
2014-02-03 07:25:54 -08:00
Mark Mokryn
25e03c8351 Socket.request a simple property 2014-02-03 17:20:32 +02:00
Mark Mokryn
3b8d7863b8 Socket.request made a nonwritable Socket property set in constructor 2014-02-03 13:32:59 +02:00
Tony Kovanen
44159592c7 Using url parameter for communicating the need for base64 instead of upgrade packet for WebSockets 2014-02-03 02:31:48 +02:00
Tony Kovanen
7723e8a2db Upgrade packet can now set transport binary support capabilities 2014-02-02 14:42:16 +02:00
Mark Mokryn
c8ddbf8e1c Emit upgrade event after new transport set 2014-02-02 01:59:09 +02:00
Tony Kovanen
d9d8548341 Parser now has to figure out whether binary or string data is sent 2014-02-01 14:34:33 +02:00
Tony Kovanen
efc4c06b89 Adapting code to conventions 2014-02-01 13:26:24 +02:00
Tony Kovanen
dbe140c117 Binary support 2014-02-01 01:20:51 +02:00
Guillermo Rauch
267001cb58 socket: style 2014-01-18 11:24:48 -08:00
Guillermo Rauch
93fa9a7cb2 polling-xhr: syntax 2014-01-08 16:54:40 -03:00
Guillermo Rauch
e10ca28cc7 transports: added support for xss filters and IE11 UA
thanks @3rd-eden for bringing up ie11
2013-12-09 16:36:21 -03:00
Guillermo Rauch
b527c7570b transports: added support for XSS filters on IE 2013-12-09 13:25:58 -03:00
binlain
9e01e245bf Use setImmediate instead of process.nextTick 2013-11-17 03:24:28 +01:00
Mark Mokryn
b4b4887f51 fix GH-198 2013-10-30 17:03:19 +02:00
Amir Abu Shareb
797b874928 inline merge 2013-08-14 18:58:01 +03:00
Amir Abu Shareb
4a52160119 typo 2013-07-03 15:51:46 +03:00
Amir Abu Shareb
a2fff6fcab don't use __proto__, closes #170 2013-07-03 15:48:17 +03:00
Guillermo Rauch
d352ccdcda Revert "socket: clear timer after sending one noop packet (fixes #174)"
This reverts commit 752dab4c16.
2013-06-15 16:22:40 -07:00
Guillermo Rauch
1f3d7f6eb6 Revert "WebSocket setTimeout wrap when on iOS"
This reverts commit bc5ba93296.
2013-06-06 17:28:04 -07:00
Guillermo Rauch
8687ea4520 Revert "websocket:Improve send method"
This reverts commit 60c61af68e.
2013-06-06 17:27:57 -07:00
Guillermo Rauch
752dab4c16 socket: clear timer after sending one noop packet (fixes #174) 2013-05-31 07:22:08 -07:00
Raynos
cb578ad70e clear timers in onClose 2013-05-20 23:37:15 -07:00
Raynos
316c84eef3 Clear all timers on socket close 2013-05-20 22:14:27 -07:00
Malcom Gilbert
51ede1ec38 adding test for faulty websocket request 2013-03-24 18:21:55 -04:00
Malcom Gilbert
0280352f88 sending error on transport creation failure due to bad request 2013-03-22 17:08:37 -04:00
Guillermo Rauch
cbe8a2ef05 polling: implemented new protocol 2013-03-16 12:34:05 -07:00
Guillermo Rauch
f5cf2243ec transports: implemented new parser 2013-03-16 09:10:32 -07:00
albertyfwu
300b096000 test writeBuffer isn't cleared onError, removed 'closing' check in .flush() 2013-03-12 20:16:46 -04:00
albertyfwu
89de5f5975 fixed bug89 and added tests: writeBuffer not flushed until nextTick' 2013-03-12 02:59:47 -04:00
Guillermo Rauch
81e599b344 Release 0.4.2 2013-02-08 11:12:15 -08:00
Guillermo Rauch
1059147fa3 Merge pull request #141 from pokermania/to_learnboost_20130130
close socket if upgrade is received and socket.readyState != open
2013-02-08 08:17:08 -08:00
stephen-bradshaw
f2bc5190b4 fix spelling errors 2013-02-08 09:27:52 +00:00
Roman Shtylman
fd36eeaf02 Only end upgrade socket connections if unhandled
This fixes an issue where multiple engine.io instances (on different
paths) would result in the closing of websocket connections for all of
the instances. This happened because each engine.io instance would
register an `upgrade` handler on the server. This handler would check
for a matching path and otherwise call `socket.end()` Since multiple
upgrade events would be triggered with different paths, the peer
handlers would close each other.

This patch resolves this behavior in the following way:
- When an instance upgrade handler encounters a path which it does not
  recognize it creates a timeout for `destroyUpgradeTimeout`.
- At the end of the timeout, the socket is checked for writable state
  and bytes written. If there has been not activity and the socket is
  writable, then it will be ended.

This allows for peer socket handlers to keep the socket alive by sending
some data over it. This also mimics the core node behavior of closing
sockets on upgrade when no handler is specified. We consider not
handling an upgrade request similar to no handler. However, we cannot
immediately end the socket for the reasons noted above.

fixes #143
2013-01-31 22:42:11 -05:00
Andor Goetzendorff
4ef40991be close socket if upgrade is received and socket.readyState != open 2013-01-30 16:57:44 +01:00
Sweet
b69264dad9 Removed the lib/index in all the files 2013-01-19 14:27:17 -08:00
Sweet
90c0cd0e3f parser.js: deleted
package.json: updated the version for the client
everything else: fixed paths/requirements to the new protocol/parser repo
2013-01-19 13:14:00 -08:00
Sweet
dd5a4cb939 Merge branch 'master' of github.com:LearnBoost/engine.io into ExstractParser
Conflicts:
	package.json
2013-01-19 12:37:37 -08:00