New submission from Igor Pashev:

I've found on illumos-based OS that under some conditions python is unable to 
open any files because set_inheritable() fails. This happens even when building 
python when it cannot find (open) _sysconfigdata.py.

The problem is that set_inheritable() first checks for FIOCLEX/FIONCLEX ioctls 
and tries to use them if such macros are defined. These macros can be defined 
at illumos, but kernel does not support them (inappropriate ioctl). Since other 
pieces of python already use FD_CLOEXEC unconditionally, including 
get_inheritable() I patched set_inheritable() to use FD_CLOEXEC. See attached 
patch.

----------
components: Build, IO
files: dyson-set_inheritable.patch
keywords: patch
messages: 225745
nosy: igor.pashev
priority: normal
severity: normal
status: open
title: Use FD_CLOEXEC in Python/fileutils.c
type: behavior
versions: Python 3.4
Added file: http://bugs.python.org/file36443/dyson-set_inheritable.patch

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue22258>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to