summaryrefslogtreecommitdiff
path: root/usr/src/man/man3c/getentropy.3c
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/man/man3c/getentropy.3c')
-rw-r--r--usr/src/man/man3c/getentropy.3c65
1 files changed, 65 insertions, 0 deletions
diff --git a/usr/src/man/man3c/getentropy.3c b/usr/src/man/man3c/getentropy.3c
new file mode 100644
index 0000000000..c149521c73
--- /dev/null
+++ b/usr/src/man/man3c/getentropy.3c
@@ -0,0 +1,65 @@
+.\" $OpenBSD: getentropy.2,v 1.7 2014/12/10 19:19:00 schwarze Exp $
+.\"
+.\" Copyright (c) 2014 Theo de Raadt
+.\" Copyright (c) 2015 Joyent, Inc.
+.\"
+.\" Permission to use, copy, modify, and distribute this software for any
+.\" purpose with or without fee is hereby granted, provided that the above
+.\" copyright notice and this permission notice appear in all copies.
+.\"
+.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+.\"
+.Dd "Dec 31, 2014"
+.Dt GETENTROPY 3C
+.Os
+.Sh NAME
+.Nm getentropy
+.Nd get entropy
+.Sh SYNOPSIS
+.Fd #include <unistd.h>
+.Ft int
+.Fn getentropy "void *buf" "size_t buflen"
+.Sh DESCRIPTION
+.Nm
+fills a buffer with high-quality entropy, which can be used
+as input for process-context pseudorandom generators like
+.Xr arc4random 3C .
+.Pp
+The maximum buffer size permitted is 256 bytes.
+If
+.Va buflen
+exceeds this, an error of
+.Er EIO
+will be indicated.
+.Pp
+.Nm
+is not intended for regular code; please use the
+.Xr arc4random 3C
+family of functions instead.
+.Sh RETURN VALUES
+.Rv -std
+.Sh ERRORS
+.Fn getentropy
+will succeed unless:
+.Bl -tag -width Er
+.It Er EFAULT
+The
+.Fa buf
+parameter points to an
+invalid address.
+.It Er EIO
+Too many bytes requested, or some other fatal error occurred.
+.El
+.Sh INTERFACE STABILITY
+.Sy Comitted
+.Sh MT-LEVEL
+.Sy Async-Signal-Safe
+.Sh SEE ALSO
+.Xr arc4random 3C
+.Xr attributes 5