summaryrefslogtreecommitdiffstats
path: root/PCbuild
diff options
context:
space:
mode:
authorSteve Dower <steve.dower@python.org>2020-07-06 16:32:00 (GMT)
committerGitHub <noreply@github.com>2020-07-06 16:32:00 (GMT)
commitdcbaa1b49cd9062fb9ba2b9d49555ac6cd8c60b5 (patch)
tree4b1d3d5130de1db92de3240f4decc656ee7247ef /PCbuild
parentdeb016224cc506503fb05e821a60158c83918ed4 (diff)
downloadcpython-dcbaa1b49cd9062fb9ba2b9d49555ac6cd8c60b5.zip
cpython-dcbaa1b49cd9062fb9ba2b9d49555ac6cd8c60b5.tar.gz
cpython-dcbaa1b49cd9062fb9ba2b9d49555ac6cd8c60b5.tar.bz2
bpo-29778: Ensure python3.dll is loaded from correct locations when Python is embedded (GH-21297)
Also enables using debug build of `python3_d.dll` Reference: CVE-2020-15523
Diffstat (limited to 'PCbuild')
-rw-r--r--PCbuild/pyproject.props3
-rw-r--r--PCbuild/python.props2
2 files changed, 4 insertions, 1 deletions
diff --git a/PCbuild/pyproject.props b/PCbuild/pyproject.props
index 94a01ff..c659d14 100644
--- a/PCbuild/pyproject.props
+++ b/PCbuild/pyproject.props
@@ -26,11 +26,12 @@
<_PlatformPreprocessorDefinition>_WIN32;</_PlatformPreprocessorDefinition>
<_PlatformPreprocessorDefinition Condition="$(Platform) == 'x64'">_WIN64;_M_X64;</_PlatformPreprocessorDefinition>
<_PydPreprocessorDefinition Condition="$(TargetExt) == '.pyd'">Py_BUILD_CORE_MODULE;</_PydPreprocessorDefinition>
+ <_Py3NamePreprocessorDefinition>PY3_DLLNAME=L"$(Py3DllName)";</_Py3NamePreprocessorDefinition>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>$(PySourcePath)Include;$(PySourcePath)Include\internal;$(PySourcePath)PC;$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;$(_PlatformPreprocessorDefinition)$(_DebugPreprocessorDefinition)$(_PydPreprocessorDefinition)%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>WIN32;$(_Py3NamePreprocessorDefinition);$(_PlatformPreprocessorDefinition)$(_DebugPreprocessorDefinition)$(_PydPreprocessorDefinition)%(PreprocessorDefinitions)</PreprocessorDefinitions>
<Optimization>MaxSpeed</Optimization>
<IntrinsicFunctions>true</IntrinsicFunctions>
diff --git a/PCbuild/python.props b/PCbuild/python.props
index 6388d1b..bf6f371 100644
--- a/PCbuild/python.props
+++ b/PCbuild/python.props
@@ -203,6 +203,8 @@
<!-- The name of the resulting pythonXY.dll (without the extension) -->
<PyDllName>python$(MajorVersionNumber)$(MinorVersionNumber)$(PyDebugExt)</PyDllName>
+ <!-- The name of the resulting pythonX.dll (without the extension) -->
+ <Py3DllName>python3$(PyDebugExt)</Py3DllName>
<!-- The version and platform tag to include in .pyd filenames -->
<PydTag Condition="$(ArchName) == 'win32'">.cp$(MajorVersionNumber)$(MinorVersionNumber)-win32</PydTag>