diff --git a/lib/net_legacy.js b/lib/net_legacy.js index 52f4e9405b5..b2b997718b1 100644 --- a/lib/net_legacy.js +++ b/lib/net_legacy.js @@ -955,6 +955,15 @@ function Server(/* [ options, ] listener */) { DTRACE_NET_SERVER_CONNECTION(s); self.emit('connection', s); + + // The 'connect' event probably should be removed for server-side + // sockets. It's redundant. + try { + s.emit('connect'); + } catch (e) { + s.destroy(e); + return; + } } }; } diff --git a/test/simple/test-net-reconnect.js b/test/simple/test-net-reconnect.js index a640cb9b134..8455f1689ed 100644 --- a/test/simple/test-net-reconnect.js +++ b/test/simple/test-net-reconnect.js @@ -30,7 +30,9 @@ var client_recv_count = 0; var disconnect_count = 0; var server = net.createServer(function(socket) { - socket.write('hello\r\n'); + socket.addListener('connect', function() { + socket.write('hello\r\n'); + }); socket.addListener('end', function() { socket.end();