mirror of
https://github.com/RustPython/RustPython.git
synced 2026-10-29 03:04:38 +08:00
Regenerate nine canonical modules using scripts/update_lib at CPython 3.15.0 d220409a13b77de7a6c30abe16ea90db01528edc. Keep the discovery package split out until its missing test family is available. AI-assisted source selection, synchronization, review and bounded validation using OpenAI Codex. No native capability claims are added. Assisted-by: Codex:unknown
35 lines
858 B
Python
Vendored
35 lines
858 B
Python
Vendored
"""When called as a script, print a comma-separated list of the open
|
|
file descriptors on stdout.
|
|
|
|
Usage:
|
|
fd_status.py: check all file descriptors (up to 255)
|
|
fd_status.py fd1 fd2 ...: check only specified file descriptors
|
|
"""
|
|
|
|
import errno
|
|
import os
|
|
import stat
|
|
import sys
|
|
|
|
if __name__ == "__main__":
|
|
fds = []
|
|
if len(sys.argv) == 1:
|
|
try:
|
|
_MAXFD = os.sysconf("SC_OPEN_MAX")
|
|
except:
|
|
_MAXFD = 256
|
|
test_fds = range(0, min(_MAXFD, 256))
|
|
else:
|
|
test_fds = map(int, sys.argv[1:])
|
|
for fd in test_fds:
|
|
try:
|
|
st = os.fstat(fd)
|
|
except OSError as e:
|
|
if e.errno == errno.EBADF:
|
|
continue
|
|
raise
|
|
# Ignore Solaris door files
|
|
if not stat.S_ISDOOR(st.st_mode):
|
|
fds.append(fd)
|
|
print(','.join(map(str, fds)))
|