qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v2 04/14] crypto: Use O_CLOEXEC in qcrypto_rando


From: Eric Blake
Subject: Re: [Qemu-devel] [PATCH v2 04/14] crypto: Use O_CLOEXEC in qcrypto_random_init
Date: Thu, 14 Mar 2019 10:43:11 -0500
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.5.1

On 3/14/19 10:34 AM, Daniel P. Berrangé wrote:
> On Wed, Mar 13, 2019 at 09:55:16PM -0700, Richard Henderson wrote:
>> Avoids leaking the /dev/urandom fd into any child processes.
>>
>> Cc: Daniel P. Berrangé <address@hidden>
>> Signed-off-by: Richard Henderson <address@hidden>
>> ---
>>  crypto/random-platform.c | 4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/crypto/random-platform.c b/crypto/random-platform.c
>> index 0866f216dc..8bfce99a65 100644
>> --- a/crypto/random-platform.c
>> +++ b/crypto/random-platform.c
>> @@ -42,9 +42,9 @@ int qcrypto_random_init(Error **errp)
>>  #else
>>      /* TBD perhaps also add support for BSD getentropy / Linux
>>       * getrandom syscalls directly */
>> -    fd = open("/dev/urandom", O_RDONLY);
>> +    fd = open("/dev/urandom", O_RDONLY | O_CLOEXEC);
>>      if (fd == -1 && errno == ENOENT) {
>> -        fd = open("/dev/random", O_RDONLY);
>> +        fd = open("/dev/random", O_RDONLY | O_CLOEXEC);
>>      }
>>  
>>      if (fd < 0) {
> 
> Reviewed-by: Daniel P. Berrangé <address@hidden>

Are we at the point where we can declare open(O_CLOEXEC)
mandatory-supported on all systems we compile on, or do we need to use
qemu_open() to get the semantics we need (with proper fallback to
non-atomic fcntl() on older platforms)?

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3226
Virtualization:  qemu.org | libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]