diff options
Diffstat (limited to 'test/parallel/test-tls-keylog-tlsv13.js')
-rw-r--r-- | test/parallel/test-tls-keylog-tlsv13.js | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/test/parallel/test-tls-keylog-tlsv13.js b/test/parallel/test-tls-keylog-tlsv13.js new file mode 100644 index 0000000000..e56d777ff0 --- /dev/null +++ b/test/parallel/test-tls-keylog-tlsv13.js @@ -0,0 +1,32 @@ +'use strict'; + +const common = require('../common'); +if (!common.hasCrypto) + common.skip('missing crypto'); + +const assert = require('assert'); +const tls = require('tls'); +const fixtures = require('../common/fixtures'); + +const server = tls.createServer({ + key: fixtures.readSync('/keys/agent2-key.pem'), + cert: fixtures.readSync('/keys/agent2-cert.pem'), + // Amount of keylog events depends on negotiated protocol + // version, so force a specific one: + minVersion: 'TLSv1.3', + maxVersion: 'TLSv1.3', +}).listen(() => { + const client = tls.connect({ + port: server.address().port, + rejectUnauthorized: false, + }); + + const verifyBuffer = (line) => assert(Buffer.isBuffer(line)); + server.on('keylog', common.mustCall(verifyBuffer, 5)); + client.on('keylog', common.mustCall(verifyBuffer, 5)); + + client.once('secureConnect', () => { + server.close(); + client.end(); + }); +}); |