NetBSD/lib
riastradh bdad8b2721 New system call getrandom() compatible with Linux and others.
Three ways to call:

getrandom(p, n, 0)              Blocks at boot until full entropy.
                                Returns up to n bytes at p; guarantees
                                up to 256 bytes even if interrupted
                                after blocking.  getrandom(0,0,0)
                                serves as an entropy barrier: return
                                only after system has full entropy.

getrandom(p, n, GRND_INSECURE)  Never blocks.  Guarantees up to 256
                                bytes even if interrupted.  Equivalent
                                to /dev/urandom.  Safe only after
                                successful getrandom(...,0),
                                getrandom(...,GRND_RANDOM), or read
                                from /dev/random.

getrandom(p, n, GRND_RANDOM)    May block at any time.  Returns up to n
                                bytes at p, but no guarantees about how
                                many -- may return as short as 1 byte.
                                Equivalent to /dev/random.  Legacy.
                                Provided only for source compatibility
                                with Linux.

Can also use flags|GRND_NONBLOCK to fail with EWOULDBLOCK/EAGAIN
without producing any output instead of blocking.

- The combination GRND_INSECURE|GRND_NONBLOCK is the same as
  GRND_INSECURE, since GRND_INSECURE never blocks anyway.

- The combinations GRND_INSECURE|GRND_RANDOM and
  GRND_INSECURE|GRND_RANDOM|GRND_NONBLOCK are nonsensical and fail
  with EINVAL.

As proposed on tech-userlevel, tech-crypto, tech-security, and
tech-kern, and subsequently adopted by core (minus the getentropy part
of the proposal, because other operating systems and participants in
the discussion couldn't come to an agreement about getentropy and
blocking semantics):

https://mail-index.netbsd.org/tech-userlevel/2020/05/02/msg012333.html
2020-08-14 00:53:15 +00:00
..
csu Explicitly use -fcommon for globals shared between libc and CSU. 2020-04-22 23:32:25 +00:00
i18n_module
libarch Bump - removal of i386_vm86 and i386_pmc. 2017-08-12 19:48:28 +00:00
libbluetooth Use strlcpy to NUL terminate the name string here. The kernel already 2019-10-03 17:10:16 +00:00
libbpfjit
libbsdmalloc
libbz2 convert HAVE_GCC == 7 to HAVE_GCC >= 7. 2019-09-29 23:44:58 +00:00
libc New system call getrandom() compatible with Linux and others. 2020-08-14 00:53:15 +00:00
libc_fp move shlib_version into the main directory 2016-10-11 16:55:22 +00:00
libc_vfp The fpu mode for VFP2 instructions is still just vfp. 2018-07-19 19:35:02 +00:00
libcompat stty & gtty were around since v1 2019-09-01 23:42:19 +00:00
libcrypt Remove extra semicolon. 2020-05-14 08:34:17 +00:00
libcurses newwin - fix crash with negative ncols. 2020-07-14 04:39:39 +00:00
libdm Update for proplib(3) API changes. 2020-06-07 05:54:00 +00:00
libedit Fix numeric variable handling in settc (lyzliyuzhi at 163 dot com) 2020-07-10 20:34:24 +00:00
libexecinfo If Unwind_Backtrace is broken, ctx.n will still contain ~0, and we will 2020-07-26 15:53:05 +00:00
libform terminfo: promote numeric parameters from short to int 2020-03-13 15:19:24 +00:00
libintl Switch the iconv(3) prototype to the POSIX conformant variation 2019-10-24 18:17:14 +00:00
libipsec Switch the iconv(3) prototype to the POSIX conformant variation 2019-10-24 18:17:14 +00:00
libisns introduce some common variables for use in GCC warning disables: 2019-10-13 07:28:04 +00:00
libkern Define _KERNTYPES for things that need it. 2016-01-23 21:22:45 +00:00
libkvm Cast off_t to size_t to appease lint: 2020-05-02 14:31:13 +00:00
liblwres
libm Provide frexpl on non-long-double systems as alias to frexp. 2020-01-30 20:31:50 +00:00
libmenu terminfo: promote numeric parameters from short to int 2020-03-13 15:19:24 +00:00
libnpf Major NPF improvements (merge from upstream): 2020-05-30 14:16:56 +00:00
libnvmm Reference nvmmctl(8). 2020-02-09 12:19:01 +00:00
libossaudio ossaudio: removed outdated comment 2020-04-20 12:01:44 +00:00
libp2k UVM locking changes, proposed on tech-kern: 2020-02-23 15:46:38 +00:00
libpam lib/libpam: Fix the possible -Werror=stringop-truncation 2020-06-12 01:20:32 +00:00
libpanel terminfo: promote numeric parameters from short to int 2020-03-13 15:19:24 +00:00
libpci Add function names to the NAME section 2017-10-22 15:28:48 +00:00
libperfuse miscelaneous -> miscellaneous in comment. 2020-03-05 15:56:20 +00:00
libposix
libppath
libprop Improvements to the problib(3) API: 2020-06-06 21:25:59 +00:00
libpthread s/reseting/resetting/ 2020-07-22 01:24:39 +00:00
libpuffs s/conjuction/conjunction/ 2019-12-27 10:13:59 +00:00
libquota Some NFS servers return RPC_PROGNOTREGISTERED instead of RPC_PROGVERSMISMATCH 2016-01-30 16:31:28 +00:00
libradius Oops forgot one openssl version name change 2018-02-07 22:51:31 +00:00
librefuse Restore binary compatibility by using the statvfs90 structure internally. 2019-09-23 12:00:57 +00:00
libresolv Remove unused macro. 2018-12-13 08:39:34 +00:00
librmt s/transfered/transferred/ 2019-12-27 09:41:48 +00:00
librpcsvc Fix building librpcsvc for MKYP=no 2019-04-24 10:26:43 +00:00
librt Mention that ENOSPC can be returned if we exhausted the max number of 2019-02-21 21:54:09 +00:00
librump introduce some common variables for use in GCC warning disables: 2019-10-13 07:28:04 +00:00
librumpclient introduce some common variables for use in GCC warning disables: 2019-10-13 07:28:04 +00:00
librumpdev
librumphijack Add pathconf and lpathconf (fixes lib/librumphijack/nfs test which uses ls 2020-05-27 18:55:36 +00:00
librumpnet
librumpres introduce some common variables for use in GCC warning disables: 2019-10-13 07:28:04 +00:00
librumpuser Fix incompatible function pointer casts 2020-06-13 16:51:59 +00:00
librumpvfs
libskey use strlcpy here; the destination string is passed to strtok_r, and if it 2019-10-03 17:08:26 +00:00
libss
libtelnet Match the function prototype of encrypthandler instead of casting to it. 2019-01-05 08:55:58 +00:00
libterminfo libterminfo: cast to uint16/32_t before conversion to preserve negativity 2020-06-21 15:05:23 +00:00
libukfs Remove exgtraneous comma 2018-03-12 11:56:34 +00:00
libusbhid lib/libusbhid: Fix possible left shift changes signedness bit. 2020-04-04 21:26:16 +00:00
libutil Fix grammar. 2020-07-30 21:23:36 +00:00
libwrap PR/54992: fix hosts_access(5) to works for IPv6 linklocal address without scope-id 2020-03-30 08:34:38 +00:00
liby
libz convert HAVE_GCC == 7 to HAVE_GCC >= 7. 2019-09-29 23:44:58 +00:00
lua Prevent Lua from crashing if clear_bindings() is called on a statement 2019-05-16 12:42:35 +00:00
npf libnpf fix: link the library itself to libnv; libnpf users should not be 2019-08-24 13:20:52 +00:00
bumpversion
checkoldver
checkver
checkvers
Makefile Rename blacklist -> blocklist 2020-06-15 01:57:29 +00:00
Makefile.inc