Merge remote-tracking branch 'ry/v0.10'
authorisaacs <i@izs.me>
Fri, 5 Apr 2013 16:02:48 +0000 (09:02 -0700)
committerisaacs <i@izs.me>
Fri, 5 Apr 2013 16:02:48 +0000 (09:02 -0700)
Conflicts:
AUTHORS
ChangeLog
deps/v8/src/json-parser.h
lib/crypto.js
src/node_version.h

1  2 
AUTHORS
ChangeLog
lib/crypto.js
lib/repl.js
lib/tls.js
node.gyp
src/node.cc
src/node_crypto.cc

diff --cc AUTHORS
+++ b/AUTHORS
@@@ -431,6 -431,6 +431,9 @@@ JeongHoon Byun <outsideris@gmail.com
  Iskren Ivov Chernev <iskren.chernev@gmail.com>
  Alexey Kupershtokh <alexey.kupershtokh@gmail.com>
  Benjamin Ruston <benjy.ruston@gmail.com>
 +Manav Rathi <manav.r@directi.com>
 +Marcin Kostrzewa <marcinkostrzewa@yahoo.com>
 +Suwon Chae <doortts@gmail.com>
+ Mitar Milutinovic <mitar.git@tnode.com>
+ Michael Hart <michael.hart.au@gmail.com>
+ Andrew Hart <hartandrewr@gmail.com>
diff --cc ChangeLog
+++ b/ChangeLog
@@@ -1,39 -1,29 +1,64 @@@
 -2013.04.03, Version 0.10.3 (Stable)
 +2013.03.28, Version 0.11.0 (Unstable)
 +
 +* V8: update to 3.17.13
 +
 +* os: use %SystemRoot% or %windir% in os.tmpdir() (Suwon Chae)
 +
 +* util: fix util.inspect() line width calculation (Marcin Kostrzewa)
 +
 +* buffer: remove _charsWritten (Trevor Norris)
 +
 +* fs: uv_[fl]stat now reports subsecond resolution (Timothy J Fontaine)
 +
 +* fs: Throw if error raised and missing callback (bnoordhuis)
 +
 +* tls: expose SSL_CTX_set_timeout via tls.createServer (Manav Rathi)
 +
 +* tls: remove harmful unnecessary bounds checking (Marcel Laverdet)
 +
 +* buffer: write ascii strings using WriteOneByte (Trevor Norris)
 +
 +* dtrace: fix generation of v8 constants on freebsd (Fedor Indutny)
 +
 +* dtrace: x64 ustack helper (Fedor Indutny)
 +
 +* readline: handle wide characters properly (Nao Iizuka)
 +
 +* repl: Use a domain to catch async errors safely (isaacs)
 +
 +* repl: emit 'reset' event when context is reset (Sami Samhuri)
 +
 +* util: custom `inspect()` method may return an Object (Nathan Rajlich)
 +
 +* console: `console.dir()` bypasses inspect() methods (Nathan Rajlich)
 +
 +
++2013.04.03, Version 0.10.3 (Stable), d4982f6f5e4a9a703127489a553b8d782997ea43
+ * npm: Upgrade to 1.2.17
+ * child_process: acknowledge sent handles (Fedor Indutny)
+ * etw: update prototypes to match dtrace provider (Timothy J Fontaine)
+ * dtrace: pass more arguments to probes (Dave Pacheco)
+ * build: allow building with dtrace on osx (Dave Pacheco)
+ * http: Remove legacy ECONNRESET workaround code (isaacs)
+ * http: Ensure socket cleanup on client response end (isaacs)
+ * tls: Destroy socket when encrypted side closes (isaacs)
+ * repl: isSyntaxError() catches "strict mode" errors (Nathan Rajlich)
+ * crypto: Pass options to ctor calls (isaacs)
+ * src: tie process.versions.uv to uv_version_string() (Ben Noordhuis)
 -2013.03.28, Version 0.10.2 (Stable)
 +2013.03.28, Version 0.10.2 (Stable), 1e0de9c426e07a260bbec2d2196c2d2db8eb8886
  
  * npm: Upgrade to 1.2.15
  
diff --cc lib/crypto.js
@@@ -233,8 -233,8 +233,8 @@@ function getDecoder(decoder, encoding) 
  exports.createCipher = exports.Cipher = Cipher;
  function Cipher(cipher, password, options) {
    if (!(this instanceof Cipher))
-     return new Cipher(cipher, password);
+     return new Cipher(cipher, password, options);
 -  this._binding = new binding.Cipher;
 +  this._binding = new binding.CipherBase(true);
  
    this._binding.init(cipher, toBuf(password));
    this._decoder = null;
@@@ -293,8 -293,8 +293,8 @@@ Cipher.prototype.setAutoPadding = funct
  exports.createCipheriv = exports.Cipheriv = Cipheriv;
  function Cipheriv(cipher, key, iv, options) {
    if (!(this instanceof Cipheriv))
-     return new Cipheriv(cipher, key, iv);
+     return new Cipheriv(cipher, key, iv, options);
 -  this._binding = new binding.Cipher();
 +  this._binding = new binding.CipherBase(true);
    this._binding.initiv(cipher, toBuf(key), toBuf(iv));
    this._decoder = null;
  
@@@ -314,9 -314,9 +314,9 @@@ Cipheriv.prototype.setAutoPadding = Cip
  exports.createDecipher = exports.Decipher = Decipher;
  function Decipher(cipher, password, options) {
    if (!(this instanceof Decipher))
-     return new Decipher(cipher, password);
+     return new Decipher(cipher, password, options);
  
 -  this._binding = new binding.Decipher;
 +  this._binding = new binding.CipherBase(false);
    this._binding.init(cipher, toBuf(password));
    this._decoder = null;
  
@@@ -337,9 -337,9 +337,9 @@@ Decipher.prototype.setAutoPadding = Cip
  exports.createDecipheriv = exports.Decipheriv = Decipheriv;
  function Decipheriv(cipher, key, iv, options) {
    if (!(this instanceof Decipheriv))
-     return new Decipheriv(cipher, key, iv);
+     return new Decipheriv(cipher, key, iv, options);
  
 -  this._binding = new binding.Decipher;
 +  this._binding = new binding.CipherBase(false);
    this._binding.initiv(cipher, toBuf(key), toBuf(iv));
    this._decoder = null;
  
diff --cc lib/repl.js
Simple merge
diff --cc lib/tls.js
Simple merge
diff --cc node.gyp
Simple merge
diff --cc src/node.cc
Simple merge
@@@ -292,12 -290,12 +293,12 @@@ int SecureContext::NewSessionCallback(S
  
  
  // Takes a string or buffer and loads it into a BIO.
 -// Caller responsible for BIO_free-ing the returned object.
 +// Caller responsible for BIO_free_all-ing the returned object.
  static BIO* LoadBIO (Handle<Value> v) {
-   BIO *bio = BIO_new(BIO_s_mem());
+   BIO *bio = BIO_new(NodeBIO::GetMethod());
    if (!bio) return NULL;
  
 -  HandleScope scope;
 +  HandleScope scope(node_isolate);
  
    int r = -1;
  
@@@ -547,11 -545,11 +548,11 @@@ Handle<Value> SecureContext::AddRootCer
      root_cert_store = X509_STORE_new();
  
      for (int i = 0; root_certs[i]; i++) {
-       BIO *bp = BIO_new(BIO_s_mem());
+       BIO *bp = BIO_new(NodeBIO::GetMethod());
  
        if (!BIO_write(bp, root_certs[i], strlen(root_certs[i]))) {
 -        BIO_free(bp);
 -        return False();
 +        BIO_free_all(bp);
 +        return False(node_isolate);
        }
  
        X509 *x509 = PEM_read_bio_X509(bp, NULL, NULL, NULL);