• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1'use strict';
2
3const common = require('../common');
4const fixtures = require('../common/fixtures');
5
6// Confirm that for TLSv1.3, renegotiate() is disallowed.
7
8const {
9  assert, connect, keys
10} = require(fixtures.path('tls-connect'));
11
12const server = keys.agent10;
13
14connect({
15  client: {
16    ca: server.ca,
17    checkServerIdentity: common.mustCall(),
18  },
19  server: {
20    key: server.key,
21    cert: server.cert,
22  },
23}, function(err, pair, cleanup) {
24  assert.ifError(err);
25
26  const client = pair.client.conn;
27
28  assert.strictEqual(client.getProtocol(), 'TLSv1.3');
29
30  const ok = client.renegotiate({}, common.mustCall((err) => {
31    assert.throws(() => { throw err; }, {
32      message: 'error:1420410A:SSL routines:SSL_renegotiate:wrong ssl version',
33      code: 'ERR_SSL_WRONG_SSL_VERSION',
34      library: 'SSL routines',
35      reason: 'wrong ssl version',
36    });
37    cleanup();
38  }));
39
40  assert.strictEqual(ok, false);
41});
42