]> sourceware.org Git - glibc.git/commit
powerpc: Use correct procedure call standard for getrandom vDSO call (bug 32440)
authorFlorian Weimer <fweimer@redhat.com>
Tue, 10 Dec 2024 15:17:06 +0000 (16:17 +0100)
committerFlorian Weimer <fweimer@redhat.com>
Wed, 11 Dec 2024 16:49:04 +0000 (17:49 +0100)
commit4f5704ea347e52ac3f272d1341da10aed6e9973e
tree507d1eee3b2833b08a6dd1bd50d4279e1b531dc3
parentb79f25753346a577c9ba0a3dca69bd9d9d72a020
powerpc: Use correct procedure call standard for getrandom vDSO call (bug 32440)

A plain indirect function call does not work on POWER because
success and failure are signaled through a flag register, and
not via the usual Linux negative return value convention.

This has potential security impact, in two ways: the return value
could be out of bounds (EAGAIN is 11 on powerpc6le), and no
random bytes have been written despite the non-error return value.

Fixes commit 461cab1de747f3842f27a5d24977d78d561d45f9 ("linux: Add
support for getrandom vDSO").

Reported-by: Ján Stanček <jstancek@redhat.com>
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
stdlib/Makefile
stdlib/tst-getrandom-errno.c [new file with mode: 0644]
sysdeps/unix/sysv/linux/getrandom.c
This page took 0.038663 seconds and 5 git commands to generate.