platform/upstream/nodejs.git
11 years agotest: TTY only has writeBuffer(), not write()
isaacs [Sat, 1 Dec 2012 02:21:01 +0000 (18:21 -0800)]
test: TTY only has writeBuffer(), not write()

This test is only passing because it's skipped normally.

11 years agobenchmark: Add net-pipe benchmark
isaacs [Mon, 12 Nov 2012 19:01:03 +0000 (11:01 -0800)]
benchmark: Add net-pipe benchmark

Just sends a buffer to a server, which echoes it back, and then measures
the Gbits/second.  Very similar to throughput.js, but using a single
process, so that it's possible to dtrace and get the jsstack frames for
profile comparison.

11 years agotest: disable eio-race tests
Chad Rhyner [Sat, 24 Nov 2012 04:49:42 +0000 (20:49 -0800)]
test: disable eio-race tests

Disabled the following unit tests:

* test-eio-race.js
* test-eio-race2.js
* test-eio-race4.js

These tests are known to fail on busy boxes due to being timing sensitive,
and are deemed not meaningful tests.

See https://github.com/joyent/node/issues/4272

Fixes #4272.

11 years agobuild: support ARM in makefile target 'binary'
Adam Malcontenti-Wilson [Tue, 27 Nov 2012 05:03:36 +0000 (16:03 +1100)]
build: support ARM in makefile target 'binary'

11 years agobuild: add $(PYTHON) when calling configure
Michael Axiak [Mon, 26 Nov 2012 18:40:24 +0000 (13:40 -0500)]
build: add $(PYTHON) when calling configure

11 years agojs2c: raise proper Exception, not a string
Ben Noordhuis [Sat, 24 Nov 2012 00:14:06 +0000 (01:14 +0100)]
js2c: raise proper Exception, not a string

Fixes the following error message:

  TypeError: exceptions must be old-style classes or derived
  from BaseException, not str

Fixes #4303.

11 years agocrypto: allow negative numbers in setOptions()
Ben Noordhuis [Fri, 23 Nov 2012 22:53:15 +0000 (23:53 +0100)]
crypto: allow negative numbers in setOptions()

OR'ing together two large values, like `SSL_OP_ALL | SSL_OP_NO_TICKET`,
produces a negative number. To wit:

  assert((0x80000000 | 0x4000) === -0x7fffc000); // true
  assert((0x80000000 | 0x4000) ===  0x80004000); // false!

It's easy to work around by doing a logical shift, like this:

  assert((0x80000000 | 0x4000) >>> 0 ===  0x80004000); // true

But that's not very intuitive. Let's be more lenient in what we accept.

11 years agoconstants: fix wrapping of large constants
Ben Noordhuis [Thu, 22 Nov 2012 15:10:35 +0000 (16:10 +0100)]
constants: fix wrapping of large constants

Use Number::New() instead of Integer::New(). The latter wraps large values,
e.g. 0x80000000 becomes -2147483648 instead of 2147483648.

11 years agobuild: disable use of thin archive
Shigeki Ohtsu [Wed, 21 Nov 2012 08:34:56 +0000 (17:34 +0900)]
build: disable use of thin archive

Thin archive needs binutils >= 2.19, disable it for supporting old ar
even if static libraries are linked within a local build.

11 years agowindows: add tracing with performance counters
Scott Blomquist [Tue, 20 Nov 2012 23:27:22 +0000 (00:27 +0100)]
windows: add tracing with performance counters

Patch by Henry Rawas and Scott Blomquist.

11 years agowindows: fix normalization of UNC paths
Bert Belder [Wed, 21 Nov 2012 00:00:45 +0000 (01:00 +0100)]
windows: fix normalization of UNC paths

11 years agov8: fix dragonflybsd build
Ben Noordhuis [Tue, 20 Nov 2012 17:12:07 +0000 (18:12 +0100)]
v8: fix dragonflybsd build

* fix gyp build
* don't require libexecinfo, it's not there
* libpthread doesn't implement sem_timedwait(), fall back to sem_wait()

Upstreamed in https://codereview.chromium.org/11421013/

11 years agobuild: make python executable configurable
Ben Noordhuis [Tue, 20 Nov 2012 16:28:28 +0000 (17:28 +0100)]
build: make python executable configurable

Upstreamed in https://codereview.chromium.org/11418101/

Fixes #4287.

11 years agodeps: upgrade cares to 213f2b7
Ben Noordhuis [Tue, 20 Nov 2012 20:42:21 +0000 (21:42 +0100)]
deps: upgrade cares to 213f2b7

11 years agodeps: upgrade libuv to fc5984f
Ben Noordhuis [Tue, 20 Nov 2012 19:11:08 +0000 (20:11 +0100)]
deps: upgrade libuv to fc5984f

11 years agodoc: fix typo in setPrivateKey function signature
Tim Kuijsten [Tue, 20 Nov 2012 16:15:17 +0000 (17:15 +0100)]
doc: fix typo in setPrivateKey function signature

11 years agotools: update gyp to r1535
Ben Noordhuis [Tue, 20 Nov 2012 14:51:25 +0000 (15:51 +0100)]
tools: update gyp to r1535

This commit contains one additional patch that makes gyp work on DragonFlyBSD,
see https://codereview.chromium.org/11348152/ for details.

11 years agocrypto: fix ssl error handling
Sergey Kholodilov [Fri, 9 Nov 2012 20:32:28 +0000 (00:32 +0400)]
crypto: fix ssl error handling

Make HandleSSLError() correctly process a zero status code: sometimes it
indicates an error and sometimes it doesn't.

11 years agonode: remove eio-emul.h
Ben Noordhuis [Fri, 16 Nov 2012 22:44:42 +0000 (23:44 +0100)]
node: remove eio-emul.h

The purpose of this file was to remap the old libeio API to the new one.
We dropped libeio in ee77a6a and this file has been broken ever since.

Ergo, remove it.

11 years agobuild: allow linking against system libuv
Stephen Gallagher [Tue, 23 Oct 2012 23:54:22 +0000 (19:54 -0400)]
build: allow linking against system libuv

11 years agodeps: upgrade libuv to 665a316
Ben Noordhuis [Fri, 16 Nov 2012 16:57:15 +0000 (17:57 +0100)]
deps: upgrade libuv to 665a316

11 years agobench: Use hrtime in throughput benchmark
isaacs [Sun, 11 Nov 2012 18:02:33 +0000 (10:02 -0800)]
bench: Use hrtime in throughput benchmark

11 years agorepl: don't interpret floating point numbers
Ben Noordhuis [Sat, 10 Nov 2012 17:21:13 +0000 (18:21 +0100)]
repl: don't interpret floating point numbers

Don't interpret floating point numbers, e.g. ".1234", as REPL commands.

Fixes #4268.

11 years agobuffer: remove duplicate assertion tests
Trevor Norris [Fri, 9 Nov 2012 22:02:45 +0000 (14:02 -0800)]
buffer: remove duplicate assertion tests

Many assertion tests are duplicated in buffer.js. These few could be easily
removed and still have all tests pass.

11 years agoos: add os.endianness() function
Nathan Rajlich [Thu, 8 Nov 2012 20:31:45 +0000 (12:31 -0800)]
os: add os.endianness() function

11 years agoreadline: use a "string_decoder" to parse "keypress" events
Nathan Rajlich [Tue, 6 Nov 2012 22:58:47 +0000 (14:58 -0800)]
readline: use a "string_decoder" to parse "keypress" events

While updating the readline test cases to test both "terimal: false" and
"terminal: true" mode, it turned out that the test case testing utf8 chars
being sent over multiple write() calls was failing. The solution is to use
a string_decoder instance when parsing the "keypress" events.

11 years agoreadline: don't emit "line" events with a trailing '\n' char
Nathan Rajlich [Tue, 6 Nov 2012 22:54:58 +0000 (14:54 -0800)]
readline: don't emit "line" events with a trailing '\n' char

Before this commit, readline was inconsistent in whether or not it would emit
"line" events with or without the trailing "\n" included. When "terminal"
mode was true, then there would be no "\n", when it was false, then the "\n"
would be present. However, the trailing "\n" doesn't add much, and most of the
time people just end up stripping it manually.

Part of #4243.

11 years agonet: More accurate IP address validation and IPv6 dotted notation.
Joshua Erickson [Tue, 9 Oct 2012 00:51:59 +0000 (19:51 -0500)]
net: More accurate IP address validation and IPv6 dotted notation.

* Added isIP method to make use of inet_pton to cares_wrap.cc
* Modified net.isIP() to make use of new C++ isIP method.
* Added new tests to test-net-isip.js.

11 years agobuild: remove jslint test/ on Windows
Shigeki Ohtsu [Wed, 10 Oct 2012 07:28:42 +0000 (16:28 +0900)]
build: remove jslint test/ on Windows

See 605927fbd9c2fbcd7d88a8f8159a9ca78417a6d0

11 years agobuild: enable DEAD_CODE_STRIPPING on OS X
Timothy J Fontaine [Thu, 25 Oct 2012 14:53:51 +0000 (10:53 -0400)]
build: enable DEAD_CODE_STRIPPING on OS X

11 years agobuild: let xcode pick proper compiler
Timothy J Fontaine [Fri, 14 Sep 2012 18:29:33 +0000 (14:29 -0400)]
build: let xcode pick proper compiler

11 years agobuild: add configure option to generate xcode build files
Timothy J Fontaine [Fri, 14 Sep 2012 18:16:43 +0000 (14:16 -0400)]
build: add configure option to generate xcode build files

11 years agobuild: add postmortem as a dependency if enabled
Timothy J Fontaine [Fri, 14 Sep 2012 18:14:35 +0000 (14:14 -0400)]
build: add postmortem as a dependency if enabled

11 years agobuild: allow linking against system c-ares
Stephen Gallagher [Tue, 23 Oct 2012 14:27:19 +0000 (10:27 -0400)]
build: allow linking against system c-ares

11 years agobuild: allow linking against system http_parser
Stephen Gallagher [Tue, 23 Oct 2012 13:01:26 +0000 (09:01 -0400)]
build: allow linking against system http_parser

11 years agotyped arrays: add slice() support to ArrayBuffer
Anthony Pesch [Sat, 13 Oct 2012 02:56:51 +0000 (19:56 -0700)]
typed arrays: add slice() support to ArrayBuffer

11 years agodebugger: exit and kill child on SIGTERM or SIGHUP
Fedor Indutny [Wed, 17 Oct 2012 17:06:37 +0000 (00:06 +0700)]
debugger: exit and kill child on SIGTERM or SIGHUP

11 years agobuild: remove _LARGEFILE_SOURCE, _FILE_OFFSET_BITS
Ben Noordhuis [Sun, 4 Nov 2012 00:26:27 +0000 (01:26 +0100)]
build: remove _LARGEFILE_SOURCE, _FILE_OFFSET_BITS

Don't define the _LARGEFILE_SOURCE and _FILE_OFFSET_BITS flags, they're
inherited from libuv now.

11 years agodeps: upgrade libuv to 0ddf9d6
Ben Noordhuis [Sun, 4 Nov 2012 00:25:06 +0000 (01:25 +0100)]
deps: upgrade libuv to 0ddf9d6

11 years agobuild: make debug build on os x compile at -O0
Ben Noordhuis [Fri, 2 Nov 2012 14:56:47 +0000 (15:56 +0100)]
build: make debug build on os x compile at -O0

Set GCC_OPTIMIZATION_LEVEL explicitly, otherwise GYP defaults to -Os.

11 years agobuild: fix default dtrace flag on Linux
Shigeki Ohtsu [Thu, 1 Nov 2012 05:14:46 +0000 (14:14 +0900)]
build: fix default dtrace flag on Linux

DTrace on Linux should not be enabled by default because not all systems will
have the proper headers installed. Only enable when --with-dtrace is passed to
the configure script.

11 years agodoc: tls: rejectUnauthorized defaults to true after 35607f3a
Girish Ramakrishnan [Thu, 1 Nov 2012 08:29:33 +0000 (01:29 -0700)]
doc: tls: rejectUnauthorized defaults to true after 35607f3a

11 years agowindows: generate ETW events to track v8 compiled code positions
Scott Blomquist [Wed, 5 Sep 2012 19:44:15 +0000 (12:44 -0700)]
windows: generate ETW events to track v8 compiled code positions

Patch by Henry Rawas and Scott Blomquist.

11 years agobuild: add --systemtap-includes configure switch
Ben Noordhuis [Thu, 1 Nov 2012 00:36:41 +0000 (01:36 +0100)]
build: add --systemtap-includes configure switch

11 years agotracing: add systemtap support
Jan Wynholds [Tue, 9 Oct 2012 22:09:07 +0000 (15:09 -0700)]
tracing: add systemtap support

11 years agodeps: upgrade libuv to 97c527a
Ben Noordhuis [Tue, 30 Oct 2012 22:06:03 +0000 (23:06 +0100)]
deps: upgrade libuv to 97c527a

11 years agotest: Use setImmediate for recursive deferral
isaacs [Thu, 1 Nov 2012 00:07:58 +0000 (17:07 -0700)]
test: Use setImmediate for recursive deferral

This should have been with 21c741f, but didn't catch it then.
Taking our own advice.

11 years agozlib: s/clear/close/ and match other close() semantics
isaacs [Tue, 30 Oct 2012 17:16:28 +0000 (10:16 -0700)]
zlib: s/clear/close/ and match other close() semantics

11 years agobuild: let gyp choose msvs version
Frederico Silva [Tue, 30 Oct 2012 22:04:29 +0000 (22:04 +0000)]
build: let gyp choose msvs version

11 years agourl: make url.format escape delimiters in path and query
J. Lee Coltrane [Mon, 15 Oct 2012 17:07:24 +0000 (13:07 -0400)]
url: make url.format escape delimiters in path and query

`url.format` should escape ? and # chars in pathname, and # chars in
search, because they change the semantics of the operation otherwise.
Don't escape % chars, or anything else. (see: #4082)

11 years agotls: delete useless removeListener call
Brandon Philips [Tue, 30 Oct 2012 14:42:44 +0000 (07:42 -0700)]
tls: delete useless removeListener call

onclose was never attached to 'end' so this call to remove this listener
is useless.  Delete it.

11 years agozlib: pass object size hint to V8
Ben Noordhuis [Tue, 30 Oct 2012 13:40:50 +0000 (14:40 +0100)]
zlib: pass object size hint to V8

Inform V8 that the zlib context object is tied to a large off-heap buffer.

This makes the GC run more often (in theory) and improves the accuracy of
--trace_external_memory.

11 years agozlib: reduce memory consumption, release early
Ben Noordhuis [Tue, 30 Oct 2012 00:19:01 +0000 (01:19 +0100)]
zlib: reduce memory consumption, release early

In zlibBuffer(), don't wait for the garbage collector to reclaim the zlib memory
but release it manually. Reduces memory consumption by a factor of 10 or more
with some workloads.

Test case:

  function f() {
    require('zlib').deflate('xxx', g);
  }
  function g() {
    setTimeout(f, 5);
  }
  f();

Observe RSS memory usage with and without this commit. After 10,000 iterations,
RSS stabilizes at ~35 MB with this commit. Without, RSS is over 300 MB and keeps
growing.

Cause: whenever the JS object heap hits the high-water mark, the V8 GC sweeps
it clean, then tries to grow it in order to avoid more sweeps in the near
future. Rule of thumb: the bigger the JS heap, the lazier the GC can be.

A side effect of a bigger heap is that objects now live longer. This is harmless
in general but it affects zlib context objects because those are tied to large
buffers that live outside the JS heap, on the order of 16K per context object.

Ergo, don't wait for the GC to reclaim the memory - it may take a long time.

Fixes #4172.

11 years agoPrint warning when maxTickDepth is reached
isaacs [Mon, 29 Oct 2012 17:31:50 +0000 (10:31 -0700)]
Print warning when maxTickDepth is reached

11 years agowindows: correct outputs list in "node_etw" gyp target
Scott Blomquist [Thu, 25 Oct 2012 23:51:46 +0000 (16:51 -0700)]
windows: correct outputs list in "node_etw" gyp target

The gyp target node_etw didn't list its output dependencies. This
was causing virgin builds to fail with a "failed to open file for
write" error.

With this corrected outputs list, gyp reliably pre-creates
required output directories.

11 years agoMerge remote-tracking branch 'origin/v0.8'
Ben Noordhuis [Thu, 25 Oct 2012 14:08:58 +0000 (16:08 +0200)]
Merge remote-tracking branch 'origin/v0.8'

Conflicts:
configure
deps/v8/build/common.gypi

11 years agov8: remove optimization switches
Ben Noordhuis [Wed, 24 Oct 2012 22:52:15 +0000 (00:52 +0200)]
v8: remove optimization switches

Remove compiler switches from $(TOPLEVEL)/deps/v8/build/common.gypi, we set
them globally in $(TOPLEVEL)/common.gypi.

Commit 29d12c73 accidentally reintroduced the switches again. In particular,
the 'cflags!': ['-O2','-Os'] section forced building V8 without any
optimizations, resulting in a steep (~66%) performance drop on some benchmarks.

Fixes #4191.

11 years agobuild: add --unsafe-optimizations configure switch
Ben Noordhuis [Wed, 24 Oct 2012 22:44:37 +0000 (00:44 +0200)]
build: add --unsafe-optimizations configure switch

Turns on -O3 and other optimizations that may produce buggy code with some
toolchains. Use at your own risk.

11 years agourl: parse hostnames that start with - or _
Ben Noordhuis [Tue, 23 Oct 2012 12:06:04 +0000 (14:06 +0200)]
url: parse hostnames that start with - or _

Allow hostnames like '-lovemonsterz.tumblr.com' and '_jabber._tcp.google.com'.

Fixes #4177.

11 years agov8: don't show performance warnings when compiling with msvc
Bert Belder [Tue, 31 Jul 2012 22:52:37 +0000 (00:52 +0200)]
v8: don't show performance warnings when compiling with msvc

Patch sent upstream: http://codereview.chromium.org/10829109/

11 years agoNow working on v0.9.4
isaacs [Wed, 24 Oct 2012 17:10:57 +0000 (10:10 -0700)]
Now working on v0.9.4

11 years agoMerge branch 'v0.9.3-release'
isaacs [Wed, 24 Oct 2012 17:10:30 +0000 (10:10 -0700)]
Merge branch 'v0.9.3-release'

11 years agoblog: Post for v0.9.3 release
isaacs [Wed, 24 Oct 2012 17:08:58 +0000 (10:08 -0700)]
blog: Post for v0.9.3 release

11 years ago2012.10.24, Version 0.9.3 (Unstable) v0.9.3
isaacs [Tue, 23 Oct 2012 19:08:59 +0000 (12:08 -0700)]
2012.10.24, Version 0.9.3 (Unstable)

* V8: Upgrade to 3.13.7.4

* crypto: Default to buffers instead of binary strings (isaacs, Fedor Indutny)

* crypto: add getHashes() and getCiphers() (Ben Noordhuis)

* unix: add custom thread pool, remove libeio (Ben Noordhuis)

* util: make `inspect()` accept an "options" argument (Nathan Rajlich)

* https: fix renegotation attack protection (Ben Noordhuis)

* cluster: make 'listening' handler see actual port (Aaditya Bhatia)

* windows: use USERPROFILE to get the user's home dir (Bert Belder)

* path: add platform specific path delimiter (Paul Serby)

* http: add response.headersSent property (Pavel Lang)

* child_process: make .fork()'d child auto-exit (Ben Noordhuis)

* events: add 'removeListener' event (Ben Noordhuis)

* string_decoder: Add 'end' method, do base64 properly (isaacs)

* buffer: include encoding value in exception when invalid (Ricky Ng-Adam)

* http: make http.ServerResponse no longer emit 'end' (isaacs)

* streams: fix pipe is destructed by 'end' from destination (koichik)

11 years agoV8 build: 'echo -n' considered harmful
isaacs [Wed, 24 Oct 2012 16:21:39 +0000 (09:21 -0700)]
V8 build: 'echo -n' considered harmful

11 years agotest: fix pummel/test-crypto-dh, pummel/test-dh-regr
Ben Noordhuis [Wed, 24 Oct 2012 13:35:58 +0000 (15:35 +0200)]
test: fix pummel/test-crypto-dh, pummel/test-dh-regr

Forgotten in the switch to buffers as the default output in 3570f20.

Fixes #4188.

11 years agorepl: call resume() after setRawMode()
Bert Belder [Wed, 24 Oct 2012 00:42:57 +0000 (02:42 +0200)]
repl: call resume() after setRawMode()

Solves #4178, but does not fix the underlying issue

11 years agorepl: call resume() after setRawMode()
Bert Belder [Wed, 24 Oct 2012 00:42:57 +0000 (02:42 +0200)]
repl: call resume() after setRawMode()

Solves #4178, but does not fix the underlying issue

11 years agodoc: child_process: document uid and gid spawn() options
Olivier Lalonde [Tue, 23 Oct 2012 16:45:10 +0000 (00:45 +0800)]
doc: child_process: document uid and gid spawn() options

11 years agoMerge remote-tracking branch 'ry/v0.8'
isaacs [Tue, 23 Oct 2012 18:59:19 +0000 (11:59 -0700)]
Merge remote-tracking branch 'ry/v0.8'

Conflicts:
deps/v8/src/arm/code-stubs-arm.cc
deps/v8/src/version.cc

11 years agoV8: Reapply patches
isaacs [Tue, 23 Oct 2012 18:50:46 +0000 (11:50 -0700)]
V8: Reapply patches

11 years agoV8: Upgrade to 3.13.7.4
isaacs [Tue, 23 Oct 2012 18:48:55 +0000 (11:48 -0700)]
V8: Upgrade to 3.13.7.4

11 years agoV8: Reapply patches
isaacs [Tue, 23 Oct 2012 18:38:09 +0000 (11:38 -0700)]
V8: Reapply patches

11 years agoV8: Upgrade to 3.11.10.25
isaacs [Tue, 23 Oct 2012 18:35:27 +0000 (11:35 -0700)]
V8: Upgrade to 3.11.10.25

11 years agonpm: Upgrade to 1.1.64
isaacs [Tue, 23 Oct 2012 18:34:46 +0000 (11:34 -0700)]
npm: Upgrade to 1.1.64

11 years agoMerge branch 'crypto-buffers'
isaacs [Tue, 23 Oct 2012 18:26:06 +0000 (11:26 -0700)]
Merge branch 'crypto-buffers'

11 years agocrypto: Style. Prefer 'char*' over 'char *'
isaacs [Tue, 23 Oct 2012 16:08:40 +0000 (09:08 -0700)]
crypto: Style.  Prefer 'char*' over 'char *'

11 years agocrypto: Remove many unnecessary toObjects
isaacs [Tue, 23 Oct 2012 17:28:51 +0000 (10:28 -0700)]
crypto: Remove many unnecessary toObjects

11 years agocrypto: pbkdf2 throws when no callback provided
isaacs [Tue, 23 Oct 2012 17:29:06 +0000 (10:29 -0700)]
crypto: pbkdf2 throws when no callback provided

11 years agodoc: OpenSSL is bundled now.
isaacs [Tue, 23 Oct 2012 17:27:11 +0000 (10:27 -0700)]
doc: OpenSSL is bundled now.

11 years agocrypto: Clean up buffer handling and DH methods
isaacs [Tue, 23 Oct 2012 17:35:15 +0000 (10:35 -0700)]
crypto: Clean up buffer handling and DH methods

11 years agocrypto: Add crypto.DEFAULT_ENCODING (defaults to 'buffer')
isaacs [Mon, 22 Oct 2012 17:37:20 +0000 (10:37 -0700)]
crypto: Add crypto.DEFAULT_ENCODING (defaults to 'buffer')

This is a flag to make it easier for users to upgrade through the
breaking crypto change, and easier for us to switch it back if it's a
problem.

Explicitly set default encoding to 'buffer' in other tests, in case it
ever changes back.

11 years agotls: Provide buffer to Connection.setSession
isaacs [Sat, 13 Oct 2012 01:41:30 +0000 (18:41 -0700)]
tls: Provide buffer to Connection.setSession

11 years agocrypto: Binding only accepts buffers
isaacs [Sat, 13 Oct 2012 00:36:18 +0000 (17:36 -0700)]
crypto: Binding only accepts buffers

11 years agocrypto: Move encoding logic to JS, default=buffer
isaacs [Wed, 10 Oct 2012 22:44:47 +0000 (15:44 -0700)]
crypto: Move encoding logic to JS, default=buffer

crypto: Hash and Hmac default to buffers

crypto: Move Cipher encoding logic to JS

crypto: Move Cipheriv encoding logic to JS

crypto: Move Decipher encoding logic to JS

crypto: Move Decipheriv into JS, default to buffers

crypto: Move Sign class to JS

crypto: Better encoding handling in Hash.update

crypto: Move Verify class to JS

crypto: Move DiffieHellman to JS, default to buffers

crypto: Move DiffieHellmanGroup to JS, default to buffers

Also, create a test for this feature

11 years agobuild: re-enable gdbjit, honor --gdb again
Ben Noordhuis [Tue, 23 Oct 2012 15:38:41 +0000 (17:38 +0200)]
build: re-enable gdbjit, honor --gdb again

Note that you need to start node with --gdbjit for it to become effective.

11 years agov8: make GDBJIT interface compile again
mstarzinger@chromium.org [Tue, 9 Oct 2012 08:24:58 +0000 (08:24 +0000)]
v8: make GDBJIT interface compile again

R=ulan@chromium.org
BUG=v8:1804

Review URL: https://codereview.chromium.org/11022007

This is a back-port of upstream commits 12679, 12686 and 12738.

11 years agoMerge remote-tracking branch 'ry/v0.8'
isaacs [Tue, 23 Oct 2012 15:22:47 +0000 (08:22 -0700)]
Merge remote-tracking branch 'ry/v0.8'

11 years agotest: add typed arrays regression test
Ben Noordhuis [Tue, 23 Oct 2012 15:07:23 +0000 (17:07 +0200)]
test: add typed arrays regression test

Ensure that uint8 values >= 128 are correctly promoted to int8 <= -1.

11 years agotyped arrays: use `signed char` for signed int8s
Aaron Jacobs [Tue, 23 Oct 2012 05:43:51 +0000 (16:43 +1100)]
typed arrays: use `signed char` for signed int8s

The C standard allows plain `char` to be unsigned. The build environment
at Google trips this issue.

11 years agov8: use correct timezone information on Solaris
yangguo@chromium.org [Tue, 23 Oct 2012 13:04:05 +0000 (13:04 +0000)]
v8: use correct timezone information on Solaris

`timezone` variable contains the difference, in seconds, between UTC and
local standard time (see `man 3 localtime` on Solaris).

Call to `tzset` is required to apply contents of `TZ` variable to
`timezone` variable.

BUG=v8:2064

Review URL: https://chromiumcodereview.appspot.com/10967066
Patch from Maciej MaƂecki <me@mmalecki.com>.

This is a back-port of upstream commit r12802.

11 years agocrypto: fix DH use-after-free and memory leak
Ben Noordhuis [Sun, 21 Oct 2012 22:18:14 +0000 (00:18 +0200)]
crypto: fix DH use-after-free and memory leak

Fix a use-after-free bug and a memory leak in the error path of
DiffieHellman::ComputeSecret().

* the BIGNUM key was used after being freed with BN_free().
* the output buffer was not freed

11 years agocrypto: fix DH 1 byte buffer underflow
Ben Noordhuis [Sun, 21 Oct 2012 22:03:47 +0000 (00:03 +0200)]
crypto: fix DH 1 byte buffer underflow

Passing a bad key to DiffieHellman::ComputeSecret() made it zero the byte
before the heap allocated buffer due to an erroneous size calculation.

11 years agotest: add diffie-hellman regression test
Ben Noordhuis [Sun, 21 Oct 2012 21:55:52 +0000 (23:55 +0200)]
test: add diffie-hellman regression test

Exercises the error path in DiffieHellman::ComputeSecret() in src/node_crypto.cc

11 years agoMerge remote-tracking branch 'origin/v0.8'
Ben Noordhuis [Sun, 21 Oct 2012 21:06:48 +0000 (23:06 +0200)]
Merge remote-tracking branch 'origin/v0.8'

Conflicts:
deps/openssl/openssl.gyp

11 years agostreams: remove useless line
Soarez [Thu, 18 Oct 2012 15:53:53 +0000 (16:53 +0100)]
streams: remove useless line

The removed line was removing a calllback that was never setup
in first place. 016afe2 forgot to remove this.

11 years agonode: update description of --print
Ben Noordhuis [Sat, 20 Oct 2012 13:03:48 +0000 (15:03 +0200)]
node: update description of --print

11 years agouv: upgrade to 1e32cb0
Bert Belder [Wed, 17 Oct 2012 16:33:40 +0000 (18:33 +0200)]
uv: upgrade to 1e32cb0

11 years agodoc: Typo. s/arguemnt/argument/
isaacs [Tue, 16 Oct 2012 17:59:23 +0000 (10:59 -0700)]
doc: Typo. s/arguemnt/argument/

11 years agotest: disable global variable check for "test-repl-options.js"
Nathan Rajlich [Mon, 15 Oct 2012 21:51:43 +0000 (14:51 -0700)]
test: disable global variable check for "test-repl-options.js"

Previously, the "global" mode of REPLs was broken when created after another
non-global REPL (they would end up sharing the same context). Now that "global"
mode is fixed for that case (b1e78cef097c682ed63528ad7efe294b18a9fb1d), this
test case gets its global scope modified with "module" and other REPL-specific
properties, so disable the global check.