@@ -56,7 +56,7 @@ const {
5656const {
5757 newAsyncId,
5858 defaultTriggerAsyncIdScope,
59- symbols : { async_id_symbol }
59+ symbols : { async_id_symbol, owner_symbol }
6060} = require ( 'internal/async_hooks' ) ;
6161const {
6262 createWriteWrap,
@@ -207,7 +207,7 @@ function initSocketHandle(self) {
207207
208208 // Handle creation may be deferred to bind() or connect() time.
209209 if ( self . _handle ) {
210- self . _handle . owner = self ;
210+ self . _handle [ owner_symbol ] = self ;
211211 self . _handle . onread = onread ;
212212 self [ async_id_symbol ] = getNewAsyncId ( self . _handle ) ;
213213 }
@@ -371,7 +371,7 @@ Socket.prototype._final = function(cb) {
371371
372372
373373function afterShutdown ( status , handle ) {
374- var self = handle . owner ;
374+ var self = handle [ owner_symbol ] ;
375375
376376 debug ( 'afterShutdown destroyed=%j' , self . destroyed ,
377377 self . _readableState ) ;
@@ -620,7 +620,7 @@ Socket.prototype._destroy = function(exception, cb) {
620620// buffer, or when there's an error reading.
621621function onread ( nread , buffer ) {
622622 var handle = this ;
623- var self = handle . owner ;
623+ var self = handle [ owner_symbol ] ;
624624 assert ( handle === self . _handle , 'handle != self._handle' ) ;
625625
626626 self . _unrefTimer ( ) ;
@@ -819,7 +819,7 @@ protoGetter('bytesWritten', function bytesWritten() {
819819
820820
821821function afterWrite ( status , handle , err ) {
822- var self = handle . owner ;
822+ var self = handle [ owner_symbol ] ;
823823 if ( self !== process . stderr && self !== process . stdout )
824824 debug ( 'afterWrite' , status ) ;
825825
@@ -1121,7 +1121,7 @@ Socket.prototype.unref = function() {
11211121
11221122
11231123function afterConnect ( status , handle , req , readable , writable ) {
1124- var self = handle . owner ;
1124+ var self = handle [ owner_symbol ] ;
11251125
11261126 // callback may come after call to destroy
11271127 if ( self . destroyed ) {
@@ -1323,7 +1323,7 @@ function setupListenHandle(address, port, addressType, backlog, fd) {
13231323
13241324 this [ async_id_symbol ] = getNewAsyncId ( this . _handle ) ;
13251325 this . _handle . onconnection = onconnection ;
1326- this . _handle . owner = this ;
1326+ this . _handle [ owner_symbol ] = this ;
13271327
13281328 // Use a backlog of 512 entries. We pass 511 to the listen() call because
13291329 // the kernel does: backlogsize = roundup_pow_of_two(backlogsize + 1);
@@ -1536,7 +1536,7 @@ Server.prototype.address = function() {
15361536
15371537function onconnection ( err , clientHandle ) {
15381538 var handle = this ;
1539- var self = handle . owner ;
1539+ var self = handle [ owner_symbol ] ;
15401540
15411541 debug ( 'onconnection' ) ;
15421542
@@ -1667,6 +1667,14 @@ function emitCloseNT(self) {
16671667}
16681668
16691669
1670+ // Legacy alias on the C++ wrapper object. This is not public API, so we may
1671+ // want to runtime-deprecate it at some point. There's no hurry, though.
1672+ Object . defineProperty ( TCP . prototype , 'owner' , {
1673+ get ( ) { return this [ owner_symbol ] ; } ,
1674+ set ( v ) { return this [ owner_symbol ] = v ; }
1675+ } ) ;
1676+
1677+
16701678Server . prototype . listenFD = internalUtil . deprecate ( function ( fd , type ) {
16711679 return this . listen ( { fd : fd } ) ;
16721680} , 'Server.listenFD is deprecated. Use Server.listen({fd: <number>}) instead.' ,
0 commit comments