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 <fedor.indutny@gmail.com> Reviewed-By: Yang Guo <yangguo@chromium.org> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Benedikt Meurer <benedikt.meurer@gmail.com> Reviewed-By: Gus Caplan <me@gus.host> Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
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)