Skip to content
This repository was archived by the owner on Apr 22, 2023. It is now read-only.
This repository was archived by the owner on Apr 22, 2023. It is now read-only.

node aborts when logging process.binding('crypto').Connection.prototype #9028

@misterdjules

Description

@misterdjules

As the subject says, node aborts when logging process.binding('crypto').Connection.prototype. It works fine with node 0.11.12:

➜  node git:(v0.11.12-release) ✗ ./node
> process.binding('crypto').Connection.prototype
{ encIn: [Function],
  clearOut: [Function],
  clearIn: [Function],
  encOut: [Function],
  clearPending: [Function],
  encPending: [Function],
  start: [Function],
  close: [Function],
  getPeerCertificate: [Function],
  getSession: [Function],
  setSession: [Function],
  loadSession: [Function],
  isSessionReused: [Function],
  isInitFinished: [Function],
  verifyError: [Function],
  getCurrentCipher: [Function],
  endParser: [Function],
  renegotiate: [Function],
  shutdown: [Function],
  getTLSTicket: [Function],
  newSessionDone: [Function],
  setMaxSendFragment: [Function],
  getNegotiatedProtocol: [Function],
  setNPNProtocols: [Function],
  getServername: [Function],
  setSNICallback: [Function] }
> %

But it aborts with node 0.11.14:

➜  node git:(v0.11.14-release) ✗ ./node
> process.binding('crypto').Connection.prototype
Assertion failed: (object->InternalFieldCount() > 0), function Unwrap, file ../src/util-inl.h, line 117.
[1]    66648 abort      ./node
➜  node git:(v0.11.14-release) ✗

Note that it's logging that aborts, just accessing the property does not make node abort:

➜  node git:(v0.11.14-release) ✗ ./node -e "process.binding('crypto').Connection.prototype"
➜  node git:(v0.11.14-release) ✗

The change that introduced this regression is somewhere between the 0.11.12 release and the 0.11.14 release, I haven't had the time to investigate more.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions