module.exports = function makeKillable(server) { var sockets = []; server.on('connection', function (socket) { //add socket to list sockets.push(socket); socket.once('close', function () { //remove socket from list sockets.splice(sockets.indexOf(socket), 1); }); }); server.kill = function (cb) { server.close(cb); sockets.forEach(function (socket) { socket.destroy(); }); // reset so the server can be restarted sockets = []; }; return server; };