Message300672
If a GNU/Linux system has glibc-2.25 and <linux-3.17, getrandom and getentropy will be declared in system headers, without a syscall implementation in the kernel.
For the build system of python, getentropy gets passed in configure, but fails at runtime, such as:
> Fatal Python error: getentropy() failed
strace gives
> syscall_318(0x7f369b1535d0, 0x18, 0, 0x13e, 0x7f369b1535d0, 0x7f369b1535e8) = -1 (errno 38)
The glibc developers regard testing the usability of a syscall to be a task of python build system. Besides AC_TEST_FUNCS(... getentropy ...) which only test whether getentropy is defined in the system, runtime checks in configure is needed. |
|
Date |
User |
Action |
Args |
2017-08-22 07:40:09 | heroxbd | set | recipients:
+ heroxbd |
2017-08-22 07:40:09 | heroxbd | set | messageid: <1503387609.26.0.161780447873.issue31255@psf.upfronthosting.co.za> |
2017-08-22 07:40:09 | heroxbd | link | issue31255 messages |
2017-08-22 07:40:09 | heroxbd | create | |
|