Comparing changes
Open a pull request
base repository: nodejs/node-v0.x-archive
base: 51f128d64b25
head repository: nodejs/node-v0.x-archive
compare: 1a65154d7296
- 18 commits
- 47 files changed
- 9 contributors
Commits on Mar 21, 2013
-
timers: handle signed int32 overflow in enroll()
Before this patch calling `socket.setTimeout(0xffffffff)` will result in signed int32 overflow in C++ which resulted in assertion error: Assertion failed: (timeout >= -1), function uv__io_poll, file ../deps/uv/src/unix/kqueue.c, line 121. see #5101
Commits on Mar 22, 2013
-
stream: Fix stall in Transform under very specific conditions
The stall is exposed in the test, though the test itself asserts before it stalls. The test is constructed to replicate the stalling state of a complex Passthrough usecase since I was not able to reliable trigger the stall. Some of the preconditions for triggering the stall are: * rs.length >= rs.highWaterMark * !rs.needReadable * _transform() handler that can return empty transforms * multiple sync write() calls Combined this can trigger a case where rs.reading is not cleared when further progress requires this. The fix is to always clear rs.reading.
Commits on Mar 23, 2013
-
-
crypto: check randomBytes() size argument
Throw a TypeError if size > 0x3fffffff. Avoids the following V8 fatal error: FATAL ERROR: v8::Object::SetIndexedPropertiesToExternalArrayData() length exceeds max acceptable value Fixes #5126.
-
v8: Unify kMaxArguments with number of bits used to encode it.
Increase the number of bits by 1 by making Flags unsigned. BUG=chromium:211741 Review URL: https://chromiumcodereview.appspot.com/12886008 This is a back-port of commits 13964 and 13988 addressing CVE-2013-2632.
-
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) { ...` 448e0f4 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.
Commits on Mar 24, 2013
-
* Latest stable is v0.10 now. * Add example of what the first line of the commit log should look like.
-
Among other things, this should make it easier for people to build node.js on openbsd.
-
stream: Fix early end in Writables on zero-length writes
Doing this causes problems: z.write(Buffer(0)); z.end(); Fix by not ending Writable streams while they're still in the process of writing something.
-
deps: fix openssl build on windows
Commit 8632af3 ("tools: update gyp to r1601") broke the Windows build. Older versions of GYP link to kernel32.lib, user32.lib, etc. but that was changed in r1584. See https://codereview.chromium.org/12256017 Fix the build by explicitly linking to the required libraries.
Commits on Mar 25, 2013
-
-
child_process: fix sending utf-8 to child process
In process#send() and child_process.ChildProcess#send(), use 'utf8' as the encoding instead of 'ascii' because 'ascii' mutilates non-ASCII input. Correctly handle partial character sequences by introducing a StringDecoder. Sending over UTF-8 no longer works in v0.10 because the high bit of each byte is now cleared when converting a Buffer to ASCII. See commit 96a314b for details. Fixes #4999 and #5011.
-
-
crypto: make getCiphers() return non-SSL ciphers
Commit f53441a added crypto.getCiphers() as a function that returns the names of SSL ciphers. Commit 14a6c4e then added crypto.getHashes(), which returns the names of digest algorithms, but that creates a subtle inconsistency: the return values of crypto.getHashes() are valid arguments to crypto.createHash() but that is not true for crypto.getCiphers() - the returned values are only valid for SSL/TLS functions. Rectify that by adding tls.getCiphers() and making crypto.getCiphers() return proper cipher names.
-
child_process: don't emit same handle twice
It's possible to read multiple messages off the parent/child channel. When that happens, make sure that recvHandle is cleared after emitting the first message so it doesn't get emitted twice.
-
test: test name is the last elem, not second
When a test requires node to have parameters passed (--expose-gc) the test name will be the last element in the command array, not the second.
-
Merge remote-tracking branch 'origin/v0.10'
Conflicts: deps/v8/src/objects-inl.h deps/v8/src/objects.h src/node_crypto.cc
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff 51f128d64b25...1a65154d7296