Skip to content

Commit c6ae8a2

Browse files
committed
build: disable V8 untrusted code mitigations
Refs: https://github.com/v8/v8/wiki/Untrusted-code-mitigations PR-URL: #19222 Reviewed-By: Fedor Indutny <[email protected]> Reviewed-By: Yang Guo <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Benedikt Meurer <[email protected]> Reviewed-By: Gus Caplan <[email protected]> Reviewed-By: Gibson Fahnestock <[email protected]>
1 parent cac4da0 commit c6ae8a2

File tree

2 files changed

+22
-0
lines changed

2 files changed

+22
-0
lines changed

common.gypi

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,10 @@
3535
# Don't bake anything extra into the snapshot.
3636
'v8_use_external_startup_data%': 0,
3737

38+
# Disable V8 untrusted code mitigations.
39+
# See https://github.com/v8/v8/wiki/Untrusted-code-mitigations
40+
'v8_untrusted_code_mitigations': 'false',
41+
3842
# Some STL containers (e.g. std::vector) do not preserve ABI compatibility
3943
# between debug and non-debug mode.
4044
'disable_glibcxx_debug': 1,
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
'use strict';
2+
3+
require('../common');
4+
const assert = require('assert');
5+
const { execFileSync } = require('child_process');
6+
7+
// This test checks that untrusted code mitigations in V8 are disabled
8+
// by default.
9+
10+
const v8Options = execFileSync(process.execPath, ['--v8-options']).toString();
11+
12+
const untrustedFlag = v8Options.indexOf('--untrusted-code-mitigations');
13+
assert.notStrictEqual(untrustedFlag, -1);
14+
15+
const nextFlag = v8Options.indexOf('--', untrustedFlag + 2);
16+
const slice = v8Options.substring(untrustedFlag, nextFlag);
17+
18+
assert(slice.match(/type: bool default: false/));

0 commit comments

Comments
 (0)