Skip to content
This repository has been archived by the owner. It is now read-only.
Permalink
Browse files

net: fix Socket({ fd: 42 }) api

Make the implementation match the documentation. This should work:

  var s = new net.Socket({ fd: 42, allowHalfOpen: true };

And now it does.
  • Loading branch information
bnoordhuis authored and isaacs committed Jul 17, 2012
1 parent e4c9c9f commit 1513848f8801d7d1141c10c4960b6bfe47a53ed2
Showing with 16 additions and 10 deletions.
  1. +16 −10 lib/net.js
@@ -131,19 +131,25 @@ function Socket(options) {

Stream.call(this);

if (typeof options == 'number') {
// Legacy interface.
var fd = options;
switch (typeof options) {
case 'number':
options = { fd: options }; // Legacy interface.
break;
case 'undefined':
options = {};
break;
}

if (typeof options.fd === 'undefined') {
this._handle = options && options.handle; // private
} else {
this._handle = createPipe();
this._handle.open(fd);
this._handle.open(options.fd);
this.readable = this.writable = true;
initSocketHandle(this);
} else {
// private
this._handle = options && options.handle;
initSocketHandle(this);
this.allowHalfOpen = options && options.allowHalfOpen;
}

initSocketHandle(this);
this.allowHalfOpen = options && options.allowHalfOpen;
}
util.inherits(Socket, Stream);

0 comments on commit 1513848

Please sign in to comment.
You can’t perform that action at this time.