mirror of
https://github.com/python/cpython.git
synced 2025-07-24 11:44:31 +00:00
gh-95174: Handle missing dup() and constants in WASI (GH-95229)
- check for ``dup()`` libc function - handle missing ``F_DUPFD`` in ``dup2()`` replacement function - add workaround for WASI libc bug in MSG_TRUNC - ESHUTDOWN is missing, use EPIPE instead - POLLPRI is missing, define as 0 (no-op)
This commit is contained in:
parent
e8f3e8f0ab
commit
0d35a59ce3
12 changed files with 47 additions and 5 deletions
|
@ -9316,7 +9316,9 @@ os_dup_impl(PyObject *module, int fd)
|
|||
return _Py_dup(fd);
|
||||
}
|
||||
|
||||
|
||||
// dup2() is either provided by libc or dup2.c with AC_REPLACE_FUNCS().
|
||||
// dup2.c provides working dup2() if and only if F_DUPFD is available.
|
||||
#if (defined(HAVE_DUP3) || defined(F_DUPFD) || defined(MS_WINDOWS))
|
||||
/*[clinic input]
|
||||
os.dup2 -> int
|
||||
fd: int
|
||||
|
@ -9416,6 +9418,7 @@ os_dup2_impl(PyObject *module, int fd, int fd2, int inheritable)
|
|||
|
||||
return res;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef HAVE_LOCKF
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue