acadia-newlib/newlib/libc/stdlib
Sebastian Huber f74cf1350e Add arc4random() etc. from OpenBSD 5.8
According to the OpenBSD man page, "A Replacement Call for Random".  It
offers high quality random numbers derived from input data obtained by
the OpenBSD specific getentropy() system call which is declared in
<unistd.h> and must be implemented for each Newlib port externally.  The
arc4random() functions are used for example in LibreSSL and OpenSSH.

Cygwin provides currently its own implementation of the arc4random
family.  Maybe it makes sense to use this getentropy() implementation:

http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/lib/libcrypto/crypto/getentropy_win.c?rev=1.4&content-type=text/x-cvsweb-markup

	* libc/include/stdlib.h (arc4random): Declare if __BSD_VISIBLE.
	(arc4random_buf): Likewise.
	(arc4random_uniform): Likewise.
	* libc/include/sys/unistd.h (getentropy): Likewise.
	* libc/include/machine/_arc4random.h: New file.
	* libc/stdlib/arc4random.c: Likewise.
	* libc/stdlib/arc4random.h: Likewise.
	* libc/stdlib/arc4random_uniform.c: Likewise.
	* libc/stdlib/chacha_private.h: Likewise.
	* libc/sys/rtems/include/machine/_arc4random.h: Likewise.
	* libc/stdlib/Makefile.am (EXTENDED_SOURCES): Add arc4random.c
	and arc4random_uniform.c.
	* libc/stdlib/Makefile.in: Regenerate.
2016-03-18 12:33:41 +01:00
..
Makefile.am Add arc4random() etc. from OpenBSD 5.8 2016-03-18 12:33:41 +01:00
Makefile.in Add arc4random() etc. from OpenBSD 5.8 2016-03-18 12:33:41 +01:00
_Exit.c
__adjust.c
__atexit.c Fix atexit logic to honor _ATEXIT_DYNAMIC_ALLOC setting. 2015-12-21 11:53:14 -05:00
__call_atexit.c 2013-05-07 Sebastian Huber <sebastian.huber@embedded-brains.de> 2013-05-08 23:13:51 +00:00
__exp10.c
__ten_mu.c
a64l.c
abort.c
abs.c
aligned_alloc.c C11 aligned_alloc() implementation 2015-10-19 14:10:33 +02:00
arc4random.c Add arc4random() etc. from OpenBSD 5.8 2016-03-18 12:33:41 +01:00
arc4random.h Add arc4random() etc. from OpenBSD 5.8 2016-03-18 12:33:41 +01:00
arc4random_uniform.c Add arc4random() etc. from OpenBSD 5.8 2016-03-18 12:33:41 +01:00
assert.c
atexit.c 2009-12-17 Jerker Back <jerker.back@gmail.com> 2009-12-17 19:43:43 +00:00
atexit.h
atof.c
atoff.c
atoi.c
atol.c
atoll.c
btowc.c * libc/stdlib/btowc.c (btowc): Cast to avoid compiler warning. 2012-08-10 15:21:57 +00:00
calloc.c
chacha_private.h Add arc4random() etc. from OpenBSD 5.8 2016-03-18 12:33:41 +01:00
cxa_atexit.c Add static instance of _on_exit_args for _REENT_SMALL platforms. 2015-12-21 11:49:28 -05:00
cxa_finalize.c
div.c
drand48.c
dtoa.c
dtoastub.c 2009-12-03 Craig Howland <howland@LGSInnovations.com> 2009-12-03 16:11:27 +00:00
ecvtbuf.c 2013-04-29 Sebastian Huber <sebastian.huber@embedded-brains.de> 2013-04-29 21:06:23 +00:00
efgcvt.c Feature test macros overhaul: stdlib.h 2016-03-17 21:09:06 -05:00
environ.c
envlock.c
eprintf.c
erand48.c
exit.c 2013-07-02 Joey Ye <joey.ye@arm.com> 2013-07-02 21:30:57 +00:00
gd_qnan.h 2014-03-21 Maciej W. Rozycki <macro@codesourcery.com> 2014-03-21 21:27:29 +00:00
gdtoa-gethex.c * libc/stdlib/gdtoa-gethex.c (__hexdig): Constify. 2013-06-10 15:27:43 +00:00
gdtoa-hexnan.c Make match function globally available to stdlib functions. 2015-11-20 18:03:05 +01:00
gdtoa.h Import correctly working strtold from David M. Gay. 2015-11-20 18:14:58 +01:00
getenv.c * libm/math/ef_sqrt.c: Delete unused variable sign. 2010-03-05 08:55:16 +00:00
getenv_r.c * libm/math/ef_sqrt.c: Delete unused variable sign. 2010-03-05 08:55:16 +00:00
getopt.c * newlib/libc/stdlib/getopt.c (getopt_internal): Add missing braces. 2013-11-13 20:04:18 +00:00
getsubopt.3
getsubopt.c
itoa.c Fix some mangled makedoc markup 2015-06-23 16:14:53 +01:00
jrand48.c
l64a.c
labs.c
lcong48.c
ldiv.c
ldtoa.c Import correctly working strtold from David M. Gay. 2015-11-20 18:14:58 +01:00
llabs.c Fix SYNOPSIS prototypes without marked up parameter names 2015-06-23 17:30:22 +01:00
lldiv.c
local.h
lrand48.c
malign.c
malloc.c
mallocr.c 2010-05-31 Kazu Hirata <kazu@codesourcery.com> 2010-05-31 19:15:41 +00:00
mbctype.h
mblen.c 2013-04-29 Sebastian Huber <sebastian.huber@embedded-brains.de> 2013-04-29 21:06:23 +00:00
mblen_r.c * libc/stdio/vfprintf.c: Include ../stdlib/local.h. Replace call to 2009-11-18 09:49:57 +00:00
mbrlen.c 2013-11-26 Julio Gutierrez <jgutleyva@gmail.com> 2013-11-26 17:21:01 +00:00
mbrtowc.c 2013-11-26 Julio Gutierrez <jgutleyva@gmail.com> 2013-11-26 17:21:01 +00:00
mbsinit.c
mbsnrtowcs.c 2013-11-26 Julio Gutierrez <jgutleyva@gmail.com> 2013-11-26 17:21:01 +00:00
mbsrtowcs.c 2013-11-26 Julio Gutierrez <jgutleyva@gmail.com> 2013-11-26 17:21:01 +00:00
mbstowcs.c 2013-11-18 Sahil Patnayakuni <sahilp@oarcorp.com> 2013-11-18 17:26:52 +00:00
mbstowcs_r.c 2013-11-18 Sahil Patnayakuni <sahilp@oarcorp.com> 2013-11-18 17:26:52 +00:00
mbtowc.c 2013-11-18 Sahil Patnayakuni <sahilp@oarcorp.com> 2013-11-18 17:26:52 +00:00
mbtowc_r.c 2013-11-18 Sahil Patnayakuni <sahilp@oarcorp.com> 2013-11-18 17:26:52 +00:00
mlock.c
mprec.c Use NetBSD fix for CVE-2009-0689 security vulnerability. 2009-11-23 17:02:20 +00:00
mprec.h Import correctly working strtold from David M. Gay. 2015-11-20 18:14:58 +01:00
mrand48.c
msize.c
mstats.c
mtrim.c
nano-mallocr.c Newlib build is broken if configured with nano-malloc and non-reentrant system calls 2016-02-08 10:33:07 +01:00
nrand48.c
on_exit.c Add static instance of _on_exit_args for _REENT_SMALL platforms. 2015-12-21 11:49:28 -05:00
on_exit_args.c Add static instance of _on_exit_args for _REENT_SMALL platforms. 2015-12-21 11:49:28 -05:00
on_exit_args.h Add static instance of _on_exit_args for _REENT_SMALL platforms. 2015-12-21 11:49:28 -05:00
putenv.c
putenv_r.c 2011-08-23 Ralf Corsépius <ralf.corsepius@rtems.org> 2011-08-23 12:03:55 +00:00
quick_exit.c Fix compile with GCC 5 -Werror 2016-02-12 10:16:06 -06:00
rand.c 2013-04-29 Sebastian Huber <sebastian.huber@embedded-brains.de> 2013-04-29 21:06:23 +00:00
rand48.c
rand48.h
rand_r.c
realloc.c
reallocf.c
rpmatch.c Fix rpmatch build problem 2015-11-19 16:31:08 +01:00
sb_charsets.c * libc/ctype/ctype_cp.h (_CTYPE_GEORGIAN_PS_128_254): Define. 2010-02-06 18:28:33 +00:00
seed48.c
setenv.c
setenv_r.c Move tzset calls to time functions. 2015-04-23 21:57:08 +02:00
srand48.c
std.h
stdlib.tex Fix typo in rpmatch doc reference 2015-11-19 15:28:06 -06:00
strtod.c Make match function globally available to stdlib functions. 2015-11-20 18:03:05 +01:00
strtodg.c Only build _strtodg_r on targets supporting a distinct long double type 2015-11-26 10:13:53 +01:00
strtol.c 2013-11-18 Sahil Patnayakuni <sahilp@oarcorp.com> 2013-11-18 17:26:52 +00:00
strtold.c Fix compile with GCC 5 -Werror 2016-02-12 10:16:06 -06:00
strtoll.c 2013-11-18 Sahil Patnayakuni <sahilp@oarcorp.com> 2013-11-18 17:26:52 +00:00
strtoll_r.c 2013-11-18 Sahil Patnayakuni <sahilp@oarcorp.com> 2013-11-18 17:26:52 +00:00
strtorx.c libc/stdlib/strtorx.c: Fix ifdef to check _LDBL_EQ_DBL. 2015-11-24 13:59:31 -08:00
strtoul.c 2013-11-18 Sahil Patnayakuni <sahilp@oarcorp.com> 2013-11-18 17:26:52 +00:00
strtoull.c 2013-11-18 Sahil Patnayakuni <sahilp@oarcorp.com> 2013-11-18 17:26:52 +00:00
strtoull_r.c 2013-11-18 Sahil Patnayakuni <sahilp@oarcorp.com> 2013-11-18 17:26:52 +00:00
system.c
utoa.c * libc/include/stdlib.h (__itoa): Declare prototype. 2014-12-16 10:55:17 +00:00
valloc.c
wcrtomb.c 2013-11-26 Julio Gutierrez <jgutleyva@gmail.com> 2013-11-26 17:21:01 +00:00
wcsnrtombs.c Fix some mangled makedoc markup 2015-06-23 16:14:53 +01:00
wcsrtombs.c 2013-11-26 Julio Gutierrez <jgutleyva@gmail.com> 2013-11-26 17:21:01 +00:00
wcstod.c 2013-11-26 Julio Gutierrez <jgutleyva@gmail.com> 2013-11-26 17:21:01 +00:00
wcstol.c 2013-11-26 Julio Gutierrez <jgutleyva@gmail.com> 2013-11-26 17:21:01 +00:00
wcstold.c Drop unused declaration from wcstold.c 2015-11-20 17:57:20 +01:00
wcstoll.c 2013-11-26 Julio Gutierrez <jgutleyva@gmail.com> 2013-11-26 17:21:01 +00:00
wcstoll_r.c
wcstombs.c 2013-11-18 Sahil Patnayakuni <sahilp@oarcorp.com> 2013-11-18 17:26:52 +00:00
wcstombs_r.c 2013-11-18 Sahil Patnayakuni <sahilp@oarcorp.com> 2013-11-18 17:26:52 +00:00
wcstoul.c 2013-11-26 Julio Gutierrez <jgutleyva@gmail.com> 2013-11-26 17:21:01 +00:00
wcstoull.c 2013-11-26 Julio Gutierrez <jgutleyva@gmail.com> 2013-11-26 17:21:01 +00:00
wcstoull_r.c
wctob.c 2013-04-29 Sebastian Huber <sebastian.huber@embedded-brains.de> 2013-04-29 21:06:23 +00:00
wctomb.c 2013-04-29 Sebastian Huber <sebastian.huber@embedded-brains.de> 2013-04-29 21:06:23 +00:00
wctomb_r.c Fix UTF-16 surrogate handling in wctomb and friends. 2015-04-23 21:57:09 +02:00