1import sys 2from _typeshed import FileDescriptorLike 3from array import array 4from typing import Any, Union, overload 5from typing_extensions import Literal 6 7FASYNC: int 8FD_CLOEXEC: int 9DN_ACCESS: int 10DN_ATTRIB: int 11DN_CREATE: int 12DN_DELETE: int 13DN_MODIFY: int 14DN_MULTISHOT: int 15DN_RENAME: int 16F_DUPFD: int 17F_DUPFD_CLOEXEC: int 18F_FULLFSYNC: int 19F_EXLCK: int 20F_GETFD: int 21F_GETFL: int 22F_GETLEASE: int 23F_GETLK: int 24F_GETLK64: int 25F_GETOWN: int 26F_NOCACHE: int 27F_GETSIG: int 28F_NOTIFY: int 29F_RDLCK: int 30F_SETFD: int 31F_SETFL: int 32F_SETLEASE: int 33F_SETLK: int 34F_SETLK64: int 35F_SETLKW: int 36F_SETLKW64: int 37if sys.version_info >= (3, 9) and sys.platform == "linux": 38 F_OFD_GETLK: int 39 F_OFD_SETLK: int 40 F_OFD_SETLKW: int 41F_SETOWN: int 42F_SETSIG: int 43F_SHLCK: int 44F_UNLCK: int 45F_WRLCK: int 46I_ATMARK: int 47I_CANPUT: int 48I_CKBAND: int 49I_FDINSERT: int 50I_FIND: int 51I_FLUSH: int 52I_FLUSHBAND: int 53I_GETBAND: int 54I_GETCLTIME: int 55I_GETSIG: int 56I_GRDOPT: int 57I_GWROPT: int 58I_LINK: int 59I_LIST: int 60I_LOOK: int 61I_NREAD: int 62I_PEEK: int 63I_PLINK: int 64I_POP: int 65I_PUNLINK: int 66I_PUSH: int 67I_RECVFD: int 68I_SENDFD: int 69I_SETCLTIME: int 70I_SETSIG: int 71I_SRDOPT: int 72I_STR: int 73I_SWROPT: int 74I_UNLINK: int 75LOCK_EX: int 76LOCK_MAND: int 77LOCK_NB: int 78LOCK_READ: int 79LOCK_RW: int 80LOCK_SH: int 81LOCK_UN: int 82LOCK_WRITE: int 83 84@overload 85def fcntl(__fd: FileDescriptorLike, __cmd: int, __arg: int = ...) -> int: ... 86@overload 87def fcntl(__fd: FileDescriptorLike, __cmd: int, __arg: bytes) -> bytes: ... 88 89_ReadOnlyBuffer = bytes 90_WritableBuffer = Union[bytearray, memoryview, array[Any]] 91 92@overload 93def ioctl(__fd: FileDescriptorLike, __request: int, __arg: int = ..., __mutate_flag: bool = ...) -> int: ... 94@overload 95def ioctl(__fd: FileDescriptorLike, __request: int, __arg: _WritableBuffer, __mutate_flag: Literal[True] = ...) -> int: ... 96@overload 97def ioctl(__fd: FileDescriptorLike, __request: int, __arg: _WritableBuffer, __mutate_flag: Literal[False]) -> bytes: ... 98@overload 99def ioctl(__fd: FileDescriptorLike, __request: int, __arg: _ReadOnlyBuffer, __mutate_flag: bool = ...) -> bytes: ... 100def flock(__fd: FileDescriptorLike, __operation: int) -> None: ... 101def lockf(__fd: FileDescriptorLike, __cmd: int, __len: int = ..., __start: int = ..., __whence: int = ...) -> Any: ... 102