[Pkg-javascript-devel] Bug#828457: nodejs: FTBFS with openssl 1.1.0

Jérémy Lal kapouer at melix.org
Wed Dec 7 01:25:49 UTC 2016


2016-11-03 17:49 GMT+01:00 Kurt Roeckx <kurt at roeckx.be>:
> On Thu, Nov 03, 2016 at 10:42:50AM -0400, Sandro Tosi wrote:
>> On Sun, 11 Sep 2016 20:10:53 +0200 =?UTF-8?B?SsOpcsOpbXkgTGFs?=
>> <kapouer at melix.org> wrote:
>> > 2016-09-11 14:25 GMT+02:00 Kurt Roeckx <kurt at roeckx.be>:
>> >
>> > > tags 828457 + patch
>> > >
>> > > A patch for it is available at:
>> > > https://github.com/nodejs/node/pull/8491
>> > >
>> > >
>> > Wonderful, and thank you.
>> > I'll upload nodejs 6.x in experimental with your patch applied.
>>
>> Hello Jérémy, it looks like in 6.8.0 you decided to go in the opposite
>> direction ad "Build-Depends openssl 1.0.2 (Closes: #821403)" - is this
>> patch still something you plan to apply to the experimental version of
>> nodejs? any plan to move 6.x to unstable and/or get this bug fixed in
>> sid? thanks!
>
> Note that at least 1 problem has been pointed out in the pull
> request. And I understand that they did other changes to make it
> work, but I didn't really have time to look at it again.
>

Hello, i tried to backport the patches to node 6.9.2 - you can
actually run the tests
from the gbp repo's master-6.x branch.
Patches are in debian/patches/openssl/

I get the following failures:

not ok xxx test/parallel/test-https-agent-session-eviction
 that test just hanged so i removed it. Upon inspection the second
request does not fail.

not ok 580 parallel/test-https-agent-session-reuse
  ---
  duration_ms: 0.263
  severity: fail
  stack: |-
    _tls_wrap.js:883
      this._sharedCreds.context.setTicketKeys(keys);
                                ^

    TypeError: Ticket keys length incorrect
        at TypeError (native)
        at Server.setTicketKeys (_tls_wrap.js:883:29)
        at Server.<anonymous>
(/home/dev/Software/debian/nodejs/collab-maint/test/parallel/test-https-agent-session-reuse.js:31:12)
        at emitTwo (events.js:106:13)
        at Server.emit (events.js:191:7)
        at HTTPParser.parserOnIncoming [as onIncoming] (_http_server.js:546:12)
        at HTTPParser.parserOnHeadersComplete (_http_common.js:99:23)

not ok 979 parallel/test-tls-0-dns-altname
  ---
  duration_ms: 0.109
  severity: fail
  stack: |-
    _tls_common.js:69
          c.context.setCert(options.cert);
                    ^

    Error: error:140AB18E:SSL routines:SSL_CTX_use_certificate:ca md too weak
        at Error (native)
        at Object.createSecureContext (_tls_common.js:69:17)
        at new Server (_tls_wrap.js:768:25)
        at Object.exports.createServer (_tls_wrap.js:861:10)
        at Object.<anonymous>
(/home/dev/Software/debian/nodejs/collab-maint/test/parallel/test-tls-0-dns-altname.js:13:18)
        at Module._compile (module.js:570:32)
        at Object.Module._extensions..js (module.js:579:10)
        at Module.load (module.js:487:32)
        at tryModuleLoad (module.js:446:12)
        at Function.Module._load (module.js:438:3)

not ok 983 parallel/test-tls-alpn-server-client
  ---
  duration_ms: 0.211
  severity: fail
  stack: |-
    events.js:160
          throw er; // Unhandled 'error' event
          ^

    Error: socket hang up
        at TLSSocket.onHangUp (_tls_wrap.js:1111:19)
        at TLSSocket.g (events.js:291:16)
        at emitNone (events.js:91:20)
        at TLSSocket.emit (events.js:185:7)
        at endReadableNT (_stream_readable.js:974:12)
        at _combinedTickCallback (internal/process/next_tick.js:74:11)
        at process._tickCallback (internal/process/next_tick.js:98:9)
  ...
not ok 986 parallel/test-tls-cert-regression
  ---
  duration_ms: 0.169
  severity: fail
  stack: |-
    _tls_common.js:69
          c.context.setCert(options.cert);
                    ^

    Error: error:140AB18F:SSL routines:SSL_CTX_use_certificate:ee key too small
        at Error (native)
        at Object.createSecureContext (_tls_common.js:69:17)
        at new Server (_tls_wrap.js:768:25)
        at Object.exports.createServer (_tls_wrap.js:861:10)
        at test
(/home/dev/Software/debian/nodejs/collab-maint/test/parallel/test-tls-cert-regression.js:36:20)
        at Object.<anonymous>
(/home/dev/Software/debian/nodejs/collab-maint/test/parallel/test-tls-cert-regression.js:44:1)
        at Module._compile (module.js:570:32)
        at Object.Module._extensions..js (module.js:579:10)
        at Module.load (module.js:487:32)
        at tryModuleLoad (module.js:446:12)

not ok 1013 parallel/test-tls-ecdh-disable
  ---
  duration_ms: 0.211
  severity: fail
  stack: |-

    assert.js:85
      throw new assert.AssertionError({
      ^
    AssertionError: [object Object]
        at Server.exports.fail
(/home/dev/Software/debian/nodejs/collab-maint/test/common.js:426:10)
        at emitOne (events.js:96:13)
        at Server.emit (events.js:188:7)
        at TLSSocket.<anonymous> (_tls_wrap.js:827:14)
        at emitNone (events.js:86:13)
        at TLSSocket.emit (events.js:185:7)
        at TLSSocket._finishInit (_tls_wrap.js:603:8)
        at TLSSocket.onhandshakedone (_tls_wrap.js:52:8)
        at TLSWrap.ssl.onhandshakedone (_tls_wrap.js:416:49)
  ...
not ok 1014 parallel/test-tls-econnreset
  ---
  duration_ms: 0.169
  severity: fail
  stack: |-
    _tls_common.js:69
          c.context.setCert(options.cert);
                    ^

    Error: error:140AB18F:SSL routines:SSL_CTX_use_certificate:ee key too small
        at Error (native)
        at Object.createSecureContext (_tls_common.js:69:17)
        at new Server (_tls_wrap.js:768:25)
        at Object.exports.createServer (_tls_wrap.js:861:10)
        at Object.<anonymous>
(/home/dev/Software/debian/nodejs/collab-maint/test/parallel/test-tls-econnreset.js:52:18)
        at Module._compile (module.js:570:32)
        at Object.Module._extensions..js (module.js:579:10)
        at Module.load (module.js:487:32)
        at tryModuleLoad (module.js:446:12)
        at Function.Module._load (module.js:438:3)

not ok 1034 parallel/test-tls-multi-key
  ---
  duration_ms: 0.211
  severity: fail
  stack: |-

    assert.js:85
      throw new assert.AssertionError({
      ^
    AssertionError: [ { name: 'ECDHE-ECDSA-AES256-GCM-SHA384',
version: 'TLSv1.2' },
      { name: 'ECDHE-RSA-AES256-GCM-SHA384', version: 'TLSv1.2' } ]
deepStrictEqual [ { name: 'ECDHE-ECDSA-AES256-GCM-SHA384',
        version: 'TLSv1/SSLv3' },
      { name: 'ECDHE-RSA-AES256-GCM-SHA384', version: 'TLSv
        at process.<anonymous>
(/home/dev/Software/debian/nodejs/collab-maint/test/parallel/test-tls-multi-key.js:46:10)
        at emitOne (events.js:101:20)
        at process.emit (events.js:188:7)

not ok 1055 parallel/test-tls-server-failed-handshake-emits-clienterror
  ---
  duration_ms: 0.211
  severity: fail
  stack: |-

    assert.js:85
      throw new assert.AssertionError({
      ^
    AssertionError: Expecting SSL unknown protocol
        at Server.<anonymous>
(/home/dev/Software/debian/nodejs/collab-maint/test/parallel/test-tls-server-failed-handshake-emits-clienterror.js:24:12)
        at Server.<anonymous>
(/home/dev/Software/debian/nodejs/collab-maint/test/common.js:404:15)
        at emitTwo (events.js:106:13)
        at Server.emit (events.js:191:7)
        at TLSSocket.<anonymous> (_tls_wrap.js:848:14)
        at emitOne (events.js:96:13)
        at TLSSocket.emit (events.js:188:7)
        at TLSSocket._tlsError (_tls_wrap.js:566:8)
        at emitOne (events.js:96:13)
        at TLSSocket.emit (events.js:188:7)
  ...

not ok 1063 parallel/test-tls-socket-failed-handshake-emits-error
  ---
  duration_ms: 4.314
  severity: fail
  stack: |-

    assert.js:85
      throw new assert.AssertionError({
      ^
    AssertionError: Expecting SSL unknown protocol
        at TLSSocket.<anonymous>
(/home/dev/Software/debian/nodejs/collab-maint/test/parallel/test-tls-socket-failed-handshake-emits-error.js:24:14)
        at TLSSocket.<anonymous>
(/home/dev/Software/debian/nodejs/collab-maint/test/common.js:404:15)
        at emitOne (events.js:101:20)
        at TLSSocket.emit (events.js:188:7)
        at emitErrorNT (net.js:1278:8)
        at _combinedTickCallback (internal/process/next_tick.js:74:11)
        at process._tickCallback (internal/process/next_tick.js:98:9)
  ...
not ok 1064 parallel/test-tls-ticket
  ---
  duration_ms: 0.211
  severity: fail
  stack: |-
    _tls_wrap.js:796
        sharedCreds.context.setTicketKeys(self.ticketKeys);
                            ^

    TypeError: Ticket keys length incorrect
        at TypeError (native)
        at new Server (_tls_wrap.js:796:25)
        at Object.exports.createServer (_tls_wrap.js:861:10)
        at createServer
(/home/dev/Software/debian/nodejs/collab-maint/test/parallel/test-tls-ticket.js:26:20)
        at Object.<anonymous>
(/home/dev/Software/debian/nodejs/collab-maint/test/parallel/test-tls-ticket.js:52:24)
        at Module._compile (module.js:570:32)
        at Object.Module._extensions..js (module.js:579:10)
        at Module.load (module.js:487:32)
        at tryModuleLoad (module.js:446:12)
        at Function.Module._load (module.js:438:3)


Some of them seem easy to solve (key too small errors, or
parallel/test-tls-multi-key),
and others i don't understand what's happening at all.

Any further help is welcome.

Jérémy



More information about the Pkg-javascript-devel mailing list