[Python-checkins] bpo-40214: Fix ctypes WinDLL test with insecure flags (GH-19652)

Steve Dower webhook-mailer at python.org
Wed Apr 22 12:04:54 EDT 2020


https://github.com/python/cpython/commit/9b498939009f49b8c772c89e8fc80efbfd8afcb5
commit: 9b498939009f49b8c772c89e8fc80efbfd8afcb5
branch: master
author: Steve Dower <steve.dower at python.org>
committer: GitHub <noreply at github.com>
date: 2020-04-22T17:04:46+01:00
summary:

bpo-40214: Fix ctypes WinDLL test with insecure flags (GH-19652)

files:
M Lib/ctypes/test/test_loading.py

diff --git a/Lib/ctypes/test/test_loading.py b/Lib/ctypes/test/test_loading.py
index a62044e370af6..5c48b0db4c393 100644
--- a/Lib/ctypes/test/test_loading.py
+++ b/Lib/ctypes/test/test_loading.py
@@ -158,11 +158,9 @@ def should_fail(command):
             # Relative path (but not just filename) should succeed
             should_pass("WinDLL('./_sqlite3.dll')")
 
-            # XXX: This test has started failing on Azure Pipelines CI.  See
-            #      bpo-40214 for more information.
-            if 0:
-                # Insecure load flags should succeed
-                should_pass("WinDLL('_sqlite3.dll', winmode=0)")
+            # Insecure load flags should succeed
+            # Clear the DLL directory to avoid safe search settings propagating
+            should_pass("windll.kernel32.SetDllDirectoryW(None); WinDLL('_sqlite3.dll', winmode=0)")
 
             # Full path load without DLL_LOAD_DIR shouldn't find dependency
             should_fail("WinDLL(nt._getfullpathname('_sqlite3.dll'), " +



More information about the Python-checkins mailing list