Skip to content
This repository

evented I/O for v8 javascript

branch: master

tls: set _connecting before starting the flow

When creating a TLSSocket instance based on the existing connecting
socket, `_connecting` property is copied after the initialization of
`net.Socket`. However, since `net.Socket` constructor will call
`.read(0)` if the `readable` is true - error may happen at this code
chunk in net.js:

    Socket.prototype._read = function(n) {

      if (this._connecting || !this._handle) {
        debug('_read wait for connection');
        this.once('connect', this._read.bind(this, n));

Leading to a test failures on windows:

 - test/simple/test-tls-connect-given-socket.js

Signed-off-by: Fedor Indutny <>
latest commit 77d1f4a91f
Fedor Indutny indutny authored April 14, 2014
Octocat-spinner-32 benchmark buffer: improve {read,write}{U}Int* methods April 01, 2014
Octocat-spinner-32 deps openssl: fix keypress requirement in apps on win32 April 08, 2014
Octocat-spinner-32 doc dgram: introduce `reuseAddr` option April 10, 2014
Octocat-spinner-32 lib tls: set _connecting before starting the flow April 17, 2014
Octocat-spinner-32 src fs: return blksize on stats object April 14, 2014
Octocat-spinner-32 test events: check if _events is an own property April 15, 2014
Octocat-spinner-32 tools Merge remote-tracking branch 'origin/v0.10' March 02, 2014
Octocat-spinner-32 .gitattributes Explicitly disable cr/lf conversion for test fixtures August 10, 2011
Octocat-spinner-32 .gitignore addons: build and test examples January 22, 2014
Octocat-spinner-32 .mailmap Update .mailmap and AUTHORS March 19, 2013
Octocat-spinner-32 AUTHORS 2014.03.11, Version 0.11.12 (Unstable) March 11, 2014
Octocat-spinner-32 BSDmakefile Tell BSD users to run `gmake` instead. July 11, 2011
Octocat-spinner-32 doc: clarify subsystems in May 14, 2013
Octocat-spinner-32 ChangeLog 2014.03.11, Version 0.11.12 (Unstable) March 11, 2014
Octocat-spinner-32 LICENSE Merge remote-tracking branch 'upstream/v0.10' August 06, 2013
Octocat-spinner-32 Makefile test: migrate pummel/keep-alive to wrk February 25, 2014
Octocat-spinner-32 build: add libicu i18n support December 05, 2013
Octocat-spinner-32 android-configure build: add android support June 17, 2013
Octocat-spinner-32 common.gypi Merge remote-tracking branch 'origin/v0.10' March 26, 2014
Octocat-spinner-32 configure configure: make --v8-options switch more robust April 01, 2014
Octocat-spinner-32 node.gyp configure: make --v8-options switch more robust April 01, 2014
Octocat-spinner-32 vcbuild.bat build: windows signing should include timestamps March 27, 2014

Evented I/O for V8 javascript.

To build:

Prerequisites (Unix only):

* GCC 4.2 or newer
* Python 2.6 or 2.7
* GNU Make 3.81 or newer
* libexecinfo (FreeBSD and OpenBSD only)


make install

With libicu i18n support:

svn checkout --force --revision 214189 \ \
./configure --with-icu-path=deps/v8/third_party/icu46/icu.gyp
make install

If your python binary is in a non-standard location or has a non-standard name, run the following instead:

export PYTHON=/path/to/python
$PYTHON ./configure
make install

Prerequisites (Windows only):

* Python 2.6 or 2.7
* Visual Studio 2010 or 2012


vcbuild nosign

You can download pre-built binaries for various operating systems from The Windows and OS X installers will prompt you for the location to install to. The tarballs are self-contained; you can extract them to a local directory with:

tar xzf /path/to/node-<version>-<platform>-<arch>.tar.gz

Or system-wide with:

cd /usr/local && tar --strip-components 1 -xzf \

To run the tests:


make test


vcbuild test

To build the documentation:

make doc

To read the documentation:

man doc/node.1

Resources for Newcomers

Something went wrong with that request. Please try again.