mirror of
https://github.com/python/cpython.git
synced 2025-07-12 13:55:34 +00:00
Issue #4489: Rename the feature marker for the symlink resistant rmtree and store it as a function attribute
This commit is contained in:
parent
8e5c0a774f
commit
5b0eca116a
4 changed files with 28 additions and 18 deletions
|
@ -405,8 +405,9 @@ def _rmtree_safe_fd(topfd, path, onerror):
|
|||
except os.error:
|
||||
onerror(os.rmdir, path, sys.exc_info())
|
||||
|
||||
rmtree_is_safe = _use_fd_functions = (os.unlink in os.supports_dir_fd and
|
||||
os.open in os.supports_dir_fd)
|
||||
_use_fd_functions = (os.unlink in os.supports_dir_fd and
|
||||
os.open in os.supports_dir_fd)
|
||||
|
||||
def rmtree(path, ignore_errors=False, onerror=None):
|
||||
"""Recursively delete a directory tree.
|
||||
|
||||
|
@ -449,6 +450,9 @@ def rmtree(path, ignore_errors=False, onerror=None):
|
|||
else:
|
||||
return _rmtree_unsafe(path, onerror)
|
||||
|
||||
# Allow introspection of whether or not the hardening against symlink
|
||||
# attacks is supported on the current platform
|
||||
rmtree.avoids_symlink_attacks = _use_fd_functions
|
||||
|
||||
def _basename(path):
|
||||
# A basename() variant which first strips the trailing slash, if present.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue