0
0
mirror of https://github.com/nodejs/node.git synced 2024-12-01 16:10:02 +01:00
Cross-platform JavaScript runtime environment https://nodejs.org/
Go to file
Marcel Laverdet 1526909083 tls: remove harmful unnecessary bounds checking
The EncIn, EncOut, ClearIn & ClearOut functions are victims of some code
copy + pasting. A common line copied to all of them is:

`if (off >= buffer_length) { ...`

448e0f43 corrected ClearIn's check from `>=` to `>`, but left the others
unchanged (with an incorrect bounds check). However, if you look down at
the next very next bounds check you'll see:

`if (off + len > buffer_length) { ...`

So the check is actually obviated by the next line, and should be
removed.

This fixes an issue where writing a zero-length buffer to an encrypted
pair's *encrypted* stream you would get a crash.
2013-03-24 00:04:34 +07:00
benchmark bench: compare binaries equal times 2013-03-20 20:25:48 +01:00
deps v8: Unify kMaxArguments with number of bits used to encode it. 2013-03-23 17:14:28 +01:00
doc doc: document that stdio is usually blocking 2013-03-23 15:38:17 +01:00
lib stream: Fix stall in Transform under very specific conditions 2013-03-21 17:49:12 -07:00
src tls: remove harmful unnecessary bounds checking 2013-03-24 00:04:34 +07:00
test crypto: check randomBytes() size argument 2013-03-23 15:50:10 +01:00
tools install: don't install man page twice 2013-03-16 23:22:10 +01:00
.gitattributes Explicitly disable cr/lf conversion for test fixtures 2011-08-10 19:59:37 +02:00
.gitignore tools: Add wrk for benchmarking http servers 2013-02-19 17:16:18 -08:00
.mailmap Update .mailmap and AUTHORS 2013-03-19 20:07:38 +01:00
.travis.yml test: add .travis.yml for testing on Travis CI 2011-12-05 16:50:55 -08:00
AUTHORS 2013.03.21, Version 0.10.1 (Stable) 2013-03-20 18:15:04 -07:00
BSDmakefile Tell BSD users to run gmake instead. 2011-07-11 14:17:23 +02:00
ChangeLog 2013.03.21, Version 0.10.1 (Stable) 2013-03-20 18:15:04 -07:00
common.gypi Revert "build, windows: disable SEH" 2013-03-05 19:40:02 +01:00
configure configure: define "arm_fpu" and "arm_neon" for ARM 2013-01-10 17:13:59 -08:00
CONTRIBUTING.md doc: add tools/ dir to CONTRIBUTING.md verboten list 2013-02-14 12:42:57 +01:00
LICENSE doc: Add wrk's license to LICENSE file 2013-03-08 13:47:36 -08:00
Makefile build: define nightly tag external to build system 2013-03-05 14:43:27 -08:00
node.gyp Revert "sunos: unbreak build after v8 downgrade" 2013-02-26 07:57:12 +00:00
README.md doc: document PYTHON env var in README 2013-01-22 13:53:49 +01:00
vcbuild.bat build: define nightly tag external to build system 2013-03-05 14:43:27 -08:00

Evented I/O for V8 javascript. Build Status

To build:

Prerequisites (Unix only):

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

Unix/Macintosh:

./configure
make
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
make install

Windows:

vcbuild.bat

To run the tests:

Unix/Macintosh:

make test

Windows:

vcbuild.bat test

To build the documentation:

make doc

To read the documentation:

man doc/node.1

Resources for Newcomers