Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 21 Mar 2018 08:03:16 -0700
From:      Conrad Meyer <cem@freebsd.org>
To:        Konstantin Belousov <kostikbel@gmail.com>
Cc:        src-committers <src-committers@freebsd.org>, svn-src-all@freebsd.org,  svn-src-head@freebsd.org
Subject:   Re: svn commit: r331279 - in head: include lib/libc/gen lib/libc/sys lib/libc/tests/gen sys/compat/freebsd32 sys/conf sys/kern sys/sys tests/sys/kern usr.bin/truss
Message-ID:  <CAG6CVpW3tPVyh6D3FXpAc9DPqG9u_KnHBiZOFmg1zZsHmDb8jA@mail.gmail.com>
In-Reply-To: <20180321103325.GJ76926@kib.kiev.ua>
References:  <201803210115.w2L1Fjt9084698@repo.freebsd.org> <20180321103325.GJ76926@kib.kiev.ua>

index | next in thread | previous in thread | raw e-mail

On Wed, Mar 21, 2018 at 3:33 AM, Konstantin Belousov
<kostikbel@gmail.com> wrote:
> On Wed, Mar 21, 2018 at 01:15:45AM +0000, Conrad Meyer wrote:
>> +int
>> +getentropy(void *buf, size_t buflen)
>> +{
>> +     ssize_t rd;
>> +
>> +     if (buflen > 256) {
>> +             errno = EIO;
>> +             return (-1);
>> +     }
>> +
>> +     while (buflen > 0) {
>> +             rd = getrandom(buf, buflen, 0);
>> +             if (rd == -1) {
>> +                     if (errno == EINTR)
>> +                             continue;
>> +                     else if (errno == ENOSYS)
>> +                             abort();
> Libraries must not abort the application.
> Esp. libc.

What do you propose instead?  while (1); ?  I don't see that as
obviously better.

>> ...
>> @@ -627,6 +628,8 @@ FBSDprivate_1.0 {
>>       __sys_getppid;
>>       _getpriority;
>>       __sys_getpriority;
>> +     _getrandom;
>> +     __sys_getrandom;
>>       _getresgid;
>>       __sys_getresgid;
>>       _getresuid;
>
> Is there any use planned for _getrandom and for __sys_ ?  If not,
> we do not add private symbols for newer syscalls in recent times.

Nope, just following the pattern.  They can be removed if they are not needed.

Best,
Conrad


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAG6CVpW3tPVyh6D3FXpAc9DPqG9u_KnHBiZOFmg1zZsHmDb8jA>