node/lib/internal
Santiago Gimeno 5ed5142158 child_process: workaround fd passing issue on OS X
There's an issue on some `OS X` versions when passing fd's between processes.
When the handle associated to a specific file descriptor is closed by the sender
process before it's received in the destination, the handle is indeed closed
while it should remain opened. In order to fix this behaviour, don't close the
handle until the `NODE_HANDLE_ACK` is received by the sender.
Added `test-child-process-pass-fd` that is basically `test-cluster-net-send` but
creating lots of workers, so the issue reproduces on `OS X` consistently.

Fixes: https://github.com/nodejs/node/issues/7512
Ref: https://github.com/nodejs/node/pull/8904
PR-URL: https://github.com/nodejs/node/pull/7572
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2016-10-26 14:09:13 -04:00
..
streams
child_process.js child_process: workaround fd passing issue on OS X 2016-10-26 14:09:13 -04:00
cluster.js cluster: remove handles when disconnecting worker 2015-12-23 08:38:33 -08:00
freelist.js lib: freelist: use .pop() for allocation 2016-03-21 12:57:52 -07:00
module.js module,repl: remove repl require() hack 2016-01-19 11:52:29 -08:00
net.js net: move isLegalPort to internal/net 2016-03-02 14:01:11 -08:00
readme.md
repl.js repl: create history file with mode 0600 2016-06-23 16:59:38 -07:00
socket_list.js child_process: refactor self=this in socket_list 2016-04-08 17:34:18 -04:00
util.js util: move .decorateErrorStack to internal/util 2016-01-19 11:52:29 -08:00
v8_prof_polyfill.js tools: run tick processor without forking 2016-03-02 14:01:11 -08:00
v8_prof_processor.js tools: enable linting for v8_prof_processor.js 2016-05-17 17:24:50 -07:00

Internal Modules

The modules in lib/internal are intended for internal use in Node.js core only, and are not accessible with require() from user modules. These are subject to change at any time. Reliance on these modules outside of core is not supported in any way.