INNER CODE UNIT · Python
scoped_regular_bytes
i3T4AN/KADATH · kadath/engine.py:62
def scoped_regular_bytes(root: Path, item: Path) -> bytes:
"""Read a regular file without following organism-created symlinks."""
root = root.absolute(); item = item.absolute(); relative = item.relative_to(root)
cursor = root
for part in relative.parts:
cursor = cursor / part
mode = cursor.lstat().st_mode
if stat.S_ISLNK(mode): raise ValueError(f"symbolic link is not admissible evidence: {relative}")
if not stat.S_ISREG(item.lstat().st_mode): raise ValueError(f"non-regular evidence file: {relative}")
flags = os.O_RDONLY | getattr(os, "O_NOFOLLOW", 0)
descriptor = os.open(item, flags)
try:
if not stat.S_ISREG(os.fstat(descriptor).st_mode): raise ValueError(f"non-regular evidence file: {relative}")
with os.fdopen(descriptor, "rb", closefd=False) as stream: return stream.read()
finally:
os.close(descriptor)