Commits on Sep 14, 2012
  1. uv: upgrade to 3d9de13

    piscisaureus committed Sep 14, 2012
  2. uv: upgrade to a28f145

    piscisaureus committed Sep 14, 2012
Commits on Sep 13, 2012
  1. buffer: update constructor prototype

    Change Buffer::New(char*, size_t) to Buffer::New(const char*, size_t).
    langpavel committed with bnoordhuis Sep 13, 2012
  2. crypto: use uv_thread_self()

    bnoordhuis committed Sep 13, 2012
  3. openssl: disable EC_NISTP_64_GCC_128 on ia32

    uint128_t won't work on 32-bit platform
    Closes #4008.
    shigeki committed with TooTallNate Sep 13, 2012
Commits on Sep 12, 2012
  1. bench: add url parser benchmark

    fb55 committed with bnoordhuis May 20, 2012
  2. Merge remote-tracking branch 'ry/v0.8' into master

    isaacs committed Sep 12, 2012
  3. openssl: disable harmless compiler warnings

    Compile with -Wno-missing-field-initializers and -Wno-old-style-declaration.
    The warnings are harmless but they clutter the build output a great deal.
    bnoordhuis committed Sep 12, 2012
  4. doc: fs: clarfify documentation is implemented on all supported platforms but, depending on the
    object being watched, doesn't always work reliably (or at all).
    Fixes #4005.
    bnoordhuis committed Sep 12, 2012
  5. openssl: remove obsolete patch files

    These patches were provided by Android and Chromium. In this form they
    are not useful. The ones that we need are landed as separate commits.
    As of openssl 1.0.1c, three of them made it upstream:
      * npn.patch (Next Protocol Negotiation support)
      * tls_exporter.patch (RFC 5705 Keying Material Exporters for TLS)
      * openssl_no_dtls1.patch (minor bugfix)
    piscisaureus committed Sep 11, 2012
  6. openssl: replace symlinks by #include shims

    Git for Windows can't create symlinks. This works too.
    piscisaureus committed Sep 11, 2012
  7. openssl: use dummy OPENSSL_cpuid_setup function

    Use a empty implementation for function OPENSSL_cpuid_setup to resolve link
    error. We should figure out how to geenrate platform specific implementation
    of OPENSSL_cpuid_setup by leveraging crypto/*
    This patch is taken from Chromium.
    piscisaureus committed Sep 11, 2012
  8. openssl: fix uninitialized memory access

    ASN1_STRING_to_UTF8() passes an ASN1_STRING to ASN1_STRING_set() but
    forgot to initialize the `length` field.
    Fixes the following valgrind error:
      $ valgrind -q --track-origins=yes --num-callers=19 \
          out/Debug/node test/simple/test-tls-client-abort.js
      ==2690== Conditional jump or move depends on uninitialised value(s)
      ==2690==    at 0x784B69: ASN1_STRING_set (asn1_lib.c:382)
      ==2690==    by 0x809564: ASN1_mbstring_ncopy (a_mbstr.c:204)
      ==2690==    by 0x8090F0: ASN1_mbstring_copy (a_mbstr.c:86)
      ==2690==    by 0x782F1F: ASN1_STRING_to_UTF8 (a_strex.c:570)
      ==2690==    by 0x78F090: asn1_string_canon (x_name.c:409)
      ==2690==    by 0x78EF17: x509_name_canon (x_name.c:354)
      ==2690==    by 0x78EA7D: x509_name_ex_d2i (x_name.c:210)
      ==2690==    by 0x788058: ASN1_item_ex_d2i (tasn_dec.c:239)
      ==2690==    by 0x7890D4: asn1_template_noexp_d2i (tasn_dec.c:746)
      ==2690==    by 0x788CB6: asn1_template_ex_d2i (tasn_dec.c:607)
      ==2690==    by 0x78877A: ASN1_item_ex_d2i (tasn_dec.c:448)
      ==2690==    by 0x7890D4: asn1_template_noexp_d2i (tasn_dec.c:746)
      ==2690==    by 0x788CB6: asn1_template_ex_d2i (tasn_dec.c:607)
      ==2690==    by 0x78877A: ASN1_item_ex_d2i (tasn_dec.c:448)
      ==2690==    by 0x787C93: ASN1_item_d2i (tasn_dec.c:136)
      ==2690==    by 0x78F5E4: d2i_X509 (x_x509.c:141)
      ==2690==    by 0x7C9B91: PEM_ASN1_read_bio (pem_oth.c:81)
      ==2690==    by 0x7CA506: PEM_read_bio_X509 (pem_x509.c:67)
      ==2690==    by 0x703C9A: node::crypto::SecureContext::AddRootCerts(v8::Arguments const&) (
      ==2690==  Uninitialised value was created by a stack allocation
      ==2690==    at 0x782E89: ASN1_STRING_to_UTF8 (a_strex.c:560)
    bnoordhuis committed with piscisaureus Aug 15, 2012
  9. openssl: backward compatibility after x509 hash function change

    There are many symbolic links under /etc/ssl/certs created by using hash of
    the pem certificates in order for OpenSSL to find those certificate.
    Openssl has a tool to help you create hash symbolic links. (See tools/c_rehash)
    However the new openssl changed the hash algorithm, Unless you compile/install
    the latest openssl library and re-create all related symbolic links, the new
    openssl can not find some certificates because the links of those certificates
    were created by using old hash algorithm, which causes some tests failed.
    This patch gives a way to find a certificate according to its hash by using both
    new algorithm and old algorithm. is used to track this issue.
    This patch is taken from the Chromium project.
    piscisaureus committed Sep 11, 2012
  10. openssl: apply upstream patch

    This is a back-port of r22768: comply with ABI.
    bnoordhuis committed with piscisaureus Sep 12, 2012
  11. openssl: support handshake cut-through

    Enables SSL3+ clients to send application data immediately following the
    Finished message even when negotiating full-handshakes.  With this patch,
    clients can negotiate SSL connections in 1-RTT even when performing
    This patch is taken from the Android Open Source Project.
    piscisaureus committed Sep 11, 2012
  12. openssl: reduce memory consumption

    SSL records may be as large as 16K, but are typically < 2K.  In
    addition, a historic bug in Windows allowed records to be as large
    32K.  OpenSSL statically allocates read and write buffers (34K and
    18K respectively) used for processing records.
    With this patch, OpenSSL statically allocates 4K + 4K buffers, with
    the option of dynamically growing buffers to 34K + 4K, which is a
    saving of 44K per connection for the typical case.
    This patch is taken from the Android Open Source Project.
    piscisaureus committed Sep 11, 2012
Commits on Sep 11, 2012
  1. Now working on 0.8.10

    isaacs committed Sep 11, 2012
  2. blog: Post for 0.8.9

    isaacs committed Sep 11, 2012
  3. 2012.09.11, Version 0.8.9 (Stable)

    * v8: upgrade to
    * GYP: upgrade to r1477
    * npm: Upgrade to 1.1.61
    * npm: Don't create world-writable files (isaacs)
    * windows: fix single-accept mode for shared server sockets (Bert Belder)
    * windows: fix uninitialized memory access in uv_update_time() (Bert Belder)
    * windows: don't throw when a signal handler is attached (Bert Belder)
    * unix: fix memory leak in udp (Ben Noordhuis)
    * unix: map errno ESPIPE (Ben Noordhuis)
    * unix, windows: fix memory corruption in fs-poll.c (Ben Noordhuis)
    * sunos: fix os.cpus() on x86_64 (Ben Noordhuis)
    * child process: fix processes with IPC channel don't emit 'close' (Bert Belder)
    * build: add a "--dest-os" option to force a gyp "flavor" (Nathan Rajlich)
    * build: set `process.platform` to "sunos" on SunOS (Nathan Rajlich)
    * build: fix `make -j` fails after `make clean` (Bearice Ren)
    * build: fix openssl configuration for "arm" builds (Nathan Rajlich)
    * tls: support unix domain socket/named pipe in tls.connect (Shigeki Ohtsu)
    * https: make https.get() accept a URL (koichik)
    * http: respect HTTP/1.0 TE header (Ben Noordhuis)
    * crypto, tls: Domainify setSNICallback, pbkdf2, randomBytes (Ben Noordhuis)
    * stream.pipe: Don't call destroy() unless it's a function (isaacs)
    isaacs committed Sep 11, 2012
  4. buffer: change prototype of Data() and Length()

    Make Buffer:Data() and Buffer::Length() accept a Value instead of an Object.
    bnoordhuis committed Sep 11, 2012
  5. crypto: remove legacy openssl compatibility code

    Remove code that works around a padding bug in older versions of openssl, the
    bundled version of openssl contains the bug fix.
    bnoordhuis committed Sep 11, 2012