node/lib
Fedor Indutny 5ce4eed54d http: fix parser double-free in _http_client.js
HTTP Parser instance was freed twice, leading to the reusal of it
in several different requests simultaneously.

The flow:

`socketCloseListener` is firing, which calls `socket.read()` to flush
any queued data, `socket.buffer` has data which emits and fires
`socketOnData` in sync, this triggers a parser error which frees the
parser, `socketCloseListener` resumes execution only to have the wrong
parser associated with the socket.

The fix is to only cache the parser after the flushing from the socket,
and to assert in `socketOnData` that `socket === parser.socket`

fix #6451
2013-11-27 15:37:56 -08:00
..
_debugger.js Merge remote-tracking branch 'upstream/v0.10' 2013-10-25 11:26:05 -07:00
_http_agent.js http: force socket encoding to be null 2013-11-07 08:24:50 -08:00
_http_client.js http: fix parser double-free in _http_client.js 2013-11-27 15:37:56 -08:00
_http_common.js http: make DELETE requests set `req.method` 2013-11-04 09:39:29 -08:00
_http_incoming.js http: provide backpressure for pipeline flood 2013-10-16 11:01:33 -07:00
_http_outgoing.js http: removed headers stay removed 2013-08-19 16:05:44 -07:00
_http_server.js http: add statusMessage 2013-10-16 18:34:52 -07:00
_linklist.js Update copyright headers 2011-03-14 17:37:05 -07:00
_stream_duplex.js stdio: Set readable/writable flags properly 2013-01-17 10:42:44 -08:00
_stream_passthrough.js stream: _write takes an encoding argument 2013-03-05 14:27:15 -08:00
_stream_readable.js stream: return this from pause()/resume() 2013-09-04 11:17:28 -07:00
_stream_transform.js stream: objectMode transforms allow falsey values 2013-09-05 13:19:23 -07:00
_stream_writable.js stream: change default hwm for objectMode to 16 2013-08-27 18:02:30 -07:00
_tls_legacy.js Merge remote-tracking branch 'upstream/v0.10' 2013-11-18 13:41:17 -08:00
_tls_wrap.js tls: more accurate wrapping of connecting socket 2013-11-05 18:14:28 +04:00
assert.js assert: indicate if exception message is generated 2013-10-11 10:15:03 -07:00
buffer.js buffer: convert values to uint, not int 2013-11-15 11:48:09 -08:00
child_process.js child_process: deliver ENOENT on nextTick 2013-11-20 09:35:08 -08:00
cluster.js cluster: fix premature 'disconnect' event 2013-10-14 11:46:09 +02:00
console.js src: Replace macros with util functions 2013-08-01 15:08:01 -07:00
constants.js Update copyright headers 2011-03-14 17:37:05 -07:00
crypto.js tls: add ECDH ciphers support 2013-10-30 08:34:47 +01:00
dgram.js dgram: send() can accept strings 2013-10-28 16:18:18 -07:00
dns.js dns: set hostname property on error object 2013-10-16 21:56:16 +02:00
domain.js domain: use AsyncListener API 2013-10-31 16:34:35 -07:00
events.js Merge remote-tracking branch 'upstream/v0.10' 2013-11-26 08:41:09 -08:00
freelist.js Update copyright headers 2011-03-14 17:37:05 -07:00
fs.js src: make buffer size errors more explicit 2013-11-15 11:48:08 -08:00
http.js http: expose supported methods 2013-10-28 13:35:34 +01:00
https.js lib: remove unused variables and functions 2013-08-15 17:19:17 -07:00
module.js vm: update API to use options argument 2013-08-28 22:27:24 -07:00
net.js domain: use AsyncListener API 2013-10-31 16:34:35 -07:00
os.js lint 2013-03-28 13:19:08 -07:00
path.js src: Replace macros with util functions 2013-08-01 15:08:01 -07:00
punycode.js lib: remove unused variables and functions 2013-08-15 17:19:17 -07:00
querystring.js src: Replace macros with util functions 2013-08-01 15:08:01 -07:00
readline.js Merge remote-tracking branch 'upstream/v0.10' 2013-09-24 16:49:01 -07:00
repl.js Merge remote-tracking branch 'upstream/v0.10' 2013-11-18 13:41:17 -08:00
smalloc.js smalloc: check if object has external memory 2013-11-13 15:29:50 -08:00
stream.js src: Replace macros with util functions 2013-08-01 15:08:01 -07:00
string_decoder.js Don't allow invalid encodings in StringDecoder class 2012-12-13 17:00:22 -08:00
sys.js Fix #3577 Un-break require('sys') 2012-06-28 10:14:03 -07:00
timers.js domain: use AsyncListener API 2013-10-31 16:34:35 -07:00
tls.js tls: handle `ssl.start()` errors 2013-11-13 17:09:25 +04:00
tty.js lib: remove unused variables and functions 2013-08-15 17:19:17 -07:00
url.js src: Replace macros with util functions 2013-08-01 15:08:01 -07:00
util.js util: Format negative zero as '-0' 2013-11-25 11:28:30 -08:00
vm.js vm: update API to use options argument 2013-08-28 22:27:24 -07:00
zlib.js src: Replace macros with util functions 2013-08-01 15:08:01 -07:00