mirror of https://gitee.com/openkylin/nodejs.git
31 lines
751 B
JavaScript
31 lines
751 B
JavaScript
|
// Flags: --expose-internals
|
||
|
'use strict';
|
||
|
const common = require('../common');
|
||
|
|
||
|
if (!common.hasCrypto)
|
||
|
common.skip('missing crypto');
|
||
|
|
||
|
const assert = require('assert');
|
||
|
// Monkey-patch SecureContext
|
||
|
const { internalBinding } = require('internal/test/binding');
|
||
|
const binding = internalBinding('crypto');
|
||
|
const NativeSecureContext = binding.SecureContext;
|
||
|
|
||
|
binding.SecureContext = function() {
|
||
|
const rv = new NativeSecureContext();
|
||
|
rv.setClientCertEngine = undefined;
|
||
|
return rv;
|
||
|
};
|
||
|
|
||
|
const tls = require('tls');
|
||
|
|
||
|
{
|
||
|
assert.throws(
|
||
|
() => { tls.createSecureContext({ clientCertEngine: 'Cannonmouth' }); },
|
||
|
{
|
||
|
code: 'ERR_CRYPTO_CUSTOM_ENGINE_NOT_SUPPORTED',
|
||
|
message: 'Custom engines not supported by this OpenSSL'
|
||
|
}
|
||
|
);
|
||
|
}
|