diff options
author | Fedor Indutny <fedor@indutny.com> | 2015-12-11 15:47:39 -0500 |
---|---|---|
committer | Fedor Indutny <fedor@indutny.com> | 2015-12-11 19:53:30 -0500 |
commit | c5b4f6bc996e25f9e24db8ed31df86010d2dfcec (patch) | |
tree | ebd28b149c66237d1cea7ad66594e5fafae6eee9 /test/parallel/test-tls-connect-secure-context.js | |
parent | 425a3545d26bdc0b17115bc84101191c59b0553f (diff) | |
download | android-node-v8-c5b4f6bc996e25f9e24db8ed31df86010d2dfcec.tar.gz android-node-v8-c5b4f6bc996e25f9e24db8ed31df86010d2dfcec.tar.bz2 android-node-v8-c5b4f6bc996e25f9e24db8ed31df86010d2dfcec.zip |
tls: introduce `secureContext` for `tls.connect`
Add `secureContext` option to `tls.connect`. It is useful for caching
client certificates, key, and CA certificates.
PR-URL: https://github.com/nodejs/node/pull/4246
Reviewed-By: James M Snell <jasnell@gmail.com>
Diffstat (limited to 'test/parallel/test-tls-connect-secure-context.js')
-rw-r--r-- | test/parallel/test-tls-connect-secure-context.js | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/test/parallel/test-tls-connect-secure-context.js b/test/parallel/test-tls-connect-secure-context.js new file mode 100644 index 0000000000..3b080432e4 --- /dev/null +++ b/test/parallel/test-tls-connect-secure-context.js @@ -0,0 +1,38 @@ +'use strict'; +const common = require('../common'); +const assert = require('assert'); + +if (!common.hasCrypto) { + console.log('1..0 # Skipped: missing crypto'); + return; +} +const tls = require('tls'); + +const fs = require('fs'); +const path = require('path'); + +const keysDir = path.join(common.fixturesDir, 'keys'); + +const ca = fs.readFileSync(path.join(keysDir, 'ca1-cert.pem')); +const cert = fs.readFileSync(path.join(keysDir, 'agent1-cert.pem')); +const key = fs.readFileSync(path.join(keysDir, 'agent1-key.pem')); + +const server = tls.createServer({ + cert: cert, + key: key +}, function(c) { + c.end(); +}).listen(common.PORT, function() { + const secureContext = tls.createSecureContext({ + ca: ca + }); + + const socket = tls.connect({ + secureContext: secureContext, + servername: 'agent1', + port: common.PORT + }, common.mustCall(function() { + server.close(); + socket.end(); + })); +}); |