Document the 'rand' application.
diff --git a/CHANGES b/CHANGES
index b1b4ee1..2ce2d74 100644
--- a/CHANGES
+++ b/CHANGES
@@ -4,6 +4,9 @@
 
  Changes between 0.9.5 and 0.9.6  [XX XXX 2000]
 
+  *) New 'rand' application for creating pseudo-random output.
+     [Bodo Moeller]
+
   *) Added configuration support for Linux/IA64
      [Rolf Haberrecker <rolf@suse.de>]
 
diff --git a/apps/app_rand.c b/apps/app_rand.c
index 26289e4..64531df 100644
--- a/apps/app_rand.c
+++ b/apps/app_rand.c
@@ -176,7 +176,7 @@
 		name=p+1;
 		if (*n == '\0') break;
 
-        egd=RAND_egd(n);
+		egd=RAND_egd(n);
 		if (egd > 0) tot+=egd;
 		tot+=RAND_load_file(n,1024L*1024L);
 		if (last) break;
diff --git a/doc/apps/rand.pod b/doc/apps/rand.pod
new file mode 100644
index 0000000..4babf4e
--- /dev/null
+++ b/doc/apps/rand.pod
@@ -0,0 +1,46 @@
+=pod
+
+=head1 NAME
+
+rand - generate pseudo-random bytes
+
+=head1 SYNOPSIS
+
+B<openssl rand>
+[B<-out> I<file>]
+[B<-rand> I<file(s)>
+[B<-base64>]
+I<num>
+
+=head1 DESCRIPTION
+
+The B<rand> command outputs I<num> pseudo-random bytes after seeding
+the random number generater once.  As in other B<openssl> command
+line tools, PRNG seeding uses the file I<$HOME/>B<.rnd> or B<.rnd>
+in addition to the files given in the B<-rand> option.  A new
+I<$HOME>/B<.rnd> or B<.rnd> file will be written back if enough
+seeding was obtained from these sources.
+
+=head1 OPTIONS
+
+=over 4
+
+=item B<-out> I<file>
+
+Write to I<file> instead of standard output.
+
+=item B<-rand> I<file(s)>
+
+Use specified file or files or EGD socket (see L<RAND_egd(3)|RAND_egd(3)>)
+for seeding the random number generator.
+Multiple files can be specified separated by a OS-dependent character.
+The separator is B<;> for MS-Windows, B<,> for OpenVSM, and B<:> for
+all others.
+
+=item B<-base64>
+
+Perform base64 encoding on the output.
+
+=back
+
+=cut