summaryrefslogtreecommitdiff
path: root/test/parallel/test-tls-connect-secure-context.js
diff options
context:
space:
mode:
authorFedor Indutny <fedor@indutny.com>2015-12-11 15:47:39 -0500
committerFedor Indutny <fedor@indutny.com>2015-12-11 19:53:30 -0500
commitc5b4f6bc996e25f9e24db8ed31df86010d2dfcec (patch)
treeebd28b149c66237d1cea7ad66594e5fafae6eee9 /test/parallel/test-tls-connect-secure-context.js
parent425a3545d26bdc0b17115bc84101191c59b0553f (diff)
downloadandroid-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.js38
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();
+ }));
+});