'use strict'; const tls = require('tls'); module.exports = (options = {}) => new Promise((resolve, reject) => { const socket = tls.connect(options, () => { if (options.resolveSocket) { socket.off('error', reject); resolve({alpnProtocol: socket.alpnProtocol, socket}); } else { socket.destroy(); resolve({alpnProtocol: socket.alpnProtocol}); } }); socket.on('error', reject); });