From: Samuel Thibault Date: Sat, 1 Jul 2023 12:23:40 +0000 (+0200) Subject: hurd: Make getrandom return ENOSYS when /dev/random is not set up X-Git-Tag: glibc-2.38~90 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=494714d4073502145689eafc197f5ab6ffe4c3e5;p=thirdparty%2Fglibc.git hurd: Make getrandom return ENOSYS when /dev/random is not set up So that callers (e.g. __arc4random_buf) don't try calling it again. --- diff --git a/sysdeps/mach/hurd/getrandom.c b/sysdeps/mach/hurd/getrandom.c index 0d28f5c2602..a7706afe82d 100644 --- a/sysdeps/mach/hurd/getrandom.c +++ b/sysdeps/mach/hurd/getrandom.c @@ -123,8 +123,13 @@ again: open_flags, 0); __libc_rwlock_unlock (lock); if (!MACH_PORT_VALID (server)) - /* No luck. */ - return -1; + { + if (errno == ENOENT) + /* No translator set up, we won't have support for it. */ + errno = ENOSYS; + /* No luck. */ + return -1; + } goto again; }