fix: block CXXCPP host env override (#112684)

CPP was added to blockedEverywhereKeys in #112560, but its Autoconf twin
CXXCPP was not. Autoconf defines the preprocessor selectors as a pair —
AC_PROG_CPP sets CPP, AC_PROG_CXXCPP sets CXXCPP — and this list already
carries the compiler pair CC/CXX for the same reason.

Measured on current main: CC, CXX and CPP all report dangerous, while
CXXCPP lands in no category at all (blockedPrefixes is only DYLD_, LD_
and BASH_FUNC_, so no prefix rule covers it either).
This commit is contained in:
Yiğit ERDOĞAN
2026-07-28 06:58:41 +03:00
committed by GitHub
parent f036ed43a2
commit dae1817a17
5 changed files with 7 additions and 2 deletions
@@ -62,6 +62,7 @@ enum HostEnvSecurityPolicy {
"CPP",
"CURL_HOME",
"CXX",
"CXXCPP",
"C_INCLUDE_PATH",
"DATABASE_URL",
"DENO_DIR",
@@ -244,6 +245,7 @@ enum HostEnvSecurityPolicy {
"CORECLR_PROFILER",
"CPP",
"CXX",
"CXXCPP",
"DOTNET_ADDITIONAL_DEPS",
"DOTNET_STARTUP_HOOKS",
"ELIXIR_ERL_OPTIONS",
+1
View File
@@ -37,6 +37,7 @@
"CC",
"CPP",
"CXX",
"CXXCPP",
"CARGO_BUILD_RUSTC",
"CARGO_BUILD_RUSTC_WRAPPER",
"CARGO_BUILD_RUSTC_WORKSPACE_WRAPPER",
@@ -23,6 +23,7 @@
"CORECLR_PROFILER",
"CPP",
"CXX",
"CXXCPP",
"DOTNET_ADDITIONAL_DEPS",
"DOTNET_STARTUP_HOOKS",
"ELIXIR_ERL_OPTIONS",
@@ -270,5 +271,5 @@
"YARN_RC_FILENAME",
"ZDOTDIR"
],
"expectedTotalReportedEntries": 265
"expectedTotalReportedEntries": 266
}
@@ -98,7 +98,7 @@ describe("host env reported baseline coverage", () => {
baseline.reportedDangerousEverywhereKeys.length +
baseline.reportedDangerousOverrideOnlyKeys.length,
).toBe(baseline.expectedTotalReportedEntries);
expect(baseline.expectedTotalReportedEntries).toBe(265);
expect(baseline.expectedTotalReportedEntries).toBe(266);
expect(sortUniqueUpper(baseline.reportedDangerousEverywhereKeys)).toEqual(
baseline.reportedDangerousEverywhereKeys,
);
+1
View File
@@ -182,6 +182,7 @@ describe("isDangerousHostEnvVarName", () => {
expect(isDangerousHostEnvVarName("CC")).toBe(true);
expect(isDangerousHostEnvVarName("cpp")).toBe(true);
expect(isDangerousHostEnvVarName("cxx")).toBe(true);
expect(isDangerousHostEnvVarName("cxxcpp")).toBe(true);
expect(isDangerousHostEnvVarName("CARGO_BUILD_RUSTC")).toBe(true);
expect(isDangerousHostEnvVarName("cargo_build_rustc")).toBe(true);
expect(isDangerousHostEnvVarName("CARGO_BUILD_RUSTC_WRAPPER")).toBe(true);