Revision a520723f29aac6598ff0d69e34f5e9b88213e511 authored by Matt Caswell on 14 October 2016, 12:07:00 UTC, committed by Matt Caswell on 28 October 2016, 08:43:41 UTC
The previous commit inspired a review of all the length checks for the extension adding code. This adds more robust checks and adds checks where some were missing previously. The real solution for this is to use WPACKET which is currently in master - but that cannot be applied to release branches. Reviewed-by: Rich Salz <rsalz@openssl.org>
1 parent 83a1d4b
RAND_load_file.pod
=pod
=head1 NAME
RAND_load_file, RAND_write_file, RAND_file_name - PRNG seed file
=head1 SYNOPSIS
#include <openssl/rand.h>
const char *RAND_file_name(char *buf, size_t num);
int RAND_load_file(const char *filename, long max_bytes);
int RAND_write_file(const char *filename);
=head1 DESCRIPTION
RAND_file_name() generates a default path for the random seed
file. B<buf> points to a buffer of size B<num> in which to store the
filename. The seed file is $RANDFILE if that environment variable is
set, $HOME/.rnd otherwise. If $HOME is not set either, or B<num> is
too small for the path name, an error occurs.
RAND_load_file() reads a number of bytes from file B<filename> and
adds them to the PRNG. If B<max_bytes> is non-negative,
up to to B<max_bytes> are read; starting with OpenSSL 0.9.5,
if B<max_bytes> is -1, the complete file is read.
RAND_write_file() writes a number of random bytes (currently 1024) to
file B<filename> which can be used to initialize the PRNG by calling
RAND_load_file() in a later session.
=head1 RETURN VALUES
RAND_load_file() returns the number of bytes read.
RAND_write_file() returns the number of bytes written, and -1 if the
bytes written were generated without appropriate seed.
RAND_file_name() returns a pointer to B<buf> on success, and NULL on
error.
=head1 SEE ALSO
L<rand(3)|rand(3)>, L<RAND_add(3)|RAND_add(3)>, L<RAND_cleanup(3)|RAND_cleanup(3)>
=head1 HISTORY
RAND_load_file(), RAND_write_file() and RAND_file_name() are available in
all versions of SSLeay and OpenSSL.
=cut

Computing file changes ...