Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions Lib/test/support/strace_helper.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import re
import sys
import textwrap
import os
import unittest
from dataclasses import dataclass
from functools import cache
Expand Down Expand Up @@ -163,6 +164,13 @@ def requires_strace():
if sys.platform != "linux":
return unittest.skip("Linux only, requires strace.")

if 'LD_PRELOAD' in os.environ:
# Distribution packaging (ex. Debian `fakeroot` and Gentoo `sandbox`)
# use LD_PRELOAD to intercept system calls, which changes the overall
# set of system calls which breaks tests expecting a specific set of
# system calls).
return unittest.skip("Not supported when LD_PRELOAD is intercepting system calls.")

if support.check_sanitizer(address=True, memory=True):
return unittest.skip("LeakSanitizer does not work under ptrace (strace, gdb, etc)")

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Disable strace based system call tests when LD_PRELOAD is set.