[New-bugs-announce] [issue45201] API function PySignal_SetWakeupFd is not exported and unusable
Cy
report at bugs.python.org
Wed Sep 15 02:03:15 EDT 2021
New submission from Cy <frompython at fedicy.allowed.org>:
I want to wait on curl_multi_wait which messes up python's signal handling since libcurl doesn't know to exit the polling loop on signal. I created a pipe that curl could read from when python registered a signal, and PySignal_SetWakeupFd would write to the pipe, thus letting curl leave its polling loop, letting my C module return an exception condition.
Except PySignal_SetWakeupFd cannot be used.
In Modules/signalmodule.c, it says:
int
PySignal_SetWakeupFd(int fd)
when it should say:
PyAPI_FUNC(int)
PySignal_SetWakeupFd(int fd)
This probably isn't a problem for most, since gcc has visiblity=public by default, but I guess Gentoo's process for building python sets -fvisibility=hidden, so I can't access it, and all Microsoft users should have no access to PySignal_SetWakeupFd, since Microsoft does have hidden visibility by default.
----------
components: C API
messages: 401810
nosy: cy
priority: normal
severity: normal
status: open
title: API function PySignal_SetWakeupFd is not exported and unusable
type: behavior
versions: Python 3.9
_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue45201>
_______________________________________
More information about the New-bugs-announce
mailing list