mirror of
https://github.com/nodejs/node.git
synced 2024-11-25 08:19:38 +01:00
30e340ad9d
The test blindly assumes that the default cipher suite supports RC4 ciphers. This corrects the case where RC4 might not be available in the default ciphers by setting the client to use the same suite as the server. PR-URL: https://github.com/iojs/io.js/pull/853 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
38 lines
987 B
JavaScript
38 lines
987 B
JavaScript
var common = require('../common');
|
|
var assert = require('assert');
|
|
var tls = require('tls');
|
|
var fs = require('fs');
|
|
var cipher_list = ['RC4-SHA', 'AES256-SHA'];
|
|
var cipher_version_pattern = /TLS|SSL/;
|
|
var options = {
|
|
key: fs.readFileSync(common.fixturesDir + '/keys/agent2-key.pem'),
|
|
cert: fs.readFileSync(common.fixturesDir + '/keys/agent2-cert.pem'),
|
|
ciphers: cipher_list.join(':'),
|
|
honorCipherOrder: true
|
|
};
|
|
|
|
var nconns = 0;
|
|
|
|
process.on('exit', function() {
|
|
assert.equal(nconns, 1);
|
|
});
|
|
|
|
var server = tls.createServer(options, function(cleartextStream) {
|
|
nconns++;
|
|
});
|
|
|
|
server.listen(common.PORT, '127.0.0.1', function() {
|
|
var client = tls.connect({
|
|
host: '127.0.0.1',
|
|
port: common.PORT,
|
|
ciphers: cipher_list.join(':'),
|
|
rejectUnauthorized: false
|
|
}, function() {
|
|
var cipher = client.getCipher();
|
|
assert.equal(cipher.name, cipher_list[0]);
|
|
assert(cipher_version_pattern.test(cipher.version));
|
|
client.end();
|
|
server.close();
|
|
});
|
|
});
|