nm4 2009/11/16 19:15:36 GMT
Modified files:
exim-doc/doc-docbook spec.xfpt
exim-doc/doc-txt ChangeLog
exim-src/OS os.h-FreeBSD os.h-NetBSD os.h-OpenBSD
exim-src/src exim.h
Log:
Documentation for randint. Better randomness defaults. Fixes: #722
Revision Changes Path
1.69 +11 -0 exim/exim-doc/doc-docbook/spec.xfpt
1.596 +2 -0 exim/exim-doc/doc-txt/ChangeLog
1.4 +2 -0 exim/exim-src/OS/os.h-FreeBSD
1.6 +1 -0 exim/exim-src/OS/os.h-NetBSD
1.2 +1 -0 exim/exim-src/OS/os.h-OpenBSD
1.26 +5 -0 exim/exim-src/src/exim.h
Index: spec.xfpt
===================================================================
RCS file: /home/cvs/exim/exim-doc/doc-docbook/spec.xfpt,v
retrieving revision 1.68
retrieving revision 1.69
diff -u -r1.68 -r1.69
--- spec.xfpt 16 Nov 2009 19:10:45 -0000 1.68
+++ spec.xfpt 16 Nov 2009 19:15:36 -0000 1.69
@@ -1,4 +1,4 @@
-. $Cambridge: exim/exim-doc/doc-docbook/spec.xfpt,v 1.68 2009/11/16 19:10:45 nm4 Exp $
+. $Cambridge: exim/exim-doc/doc-docbook/spec.xfpt,v 1.69 2009/11/16 19:15:36 nm4 Exp $
.
. /////////////////////////////////////////////////////////////////////////////
. This is the primary source of the Exim Manual. It is an xfpt document that is
@@ -9589,6 +9589,17 @@
yields an unchanged string.
+.vitem &*${randint:*&<&'n'&>&*}*&
+.cindex "random number"
+This operator returns a somewhat random number which is less than the
+supplied number and is at least 0. The quality of this randomness depends
+on how Exim was built; the values are not suitable for keying material.
+If Exim is linked against OpenSSL then RAND_pseudo_bytes() is used.
+Otherwise, the implementation may be arc4random(), random() seeded by
+srandomdev() or srandom(), or a custom implementation even weaker than
+random().
+
+
.vitem &*${rfc2047:*&<&'string'&>&*}*&
.cindex "expansion" "RFC 2047"
.cindex "RFC 2047" "expansion operator"
Index: ChangeLog
===================================================================
RCS file: /home/cvs/exim/exim-doc/doc-txt/ChangeLog,v
retrieving revision 1.595
retrieving revision 1.596
diff -u -r1.595 -r1.596
--- ChangeLog 16 Nov 2009 19:10:45 -0000 1.595
+++ ChangeLog 16 Nov 2009 19:15:36 -0000 1.596
@@ -1,4 +1,4 @@
-$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.595 2009/11/16 19:10:45 nm4 Exp $
+$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.596 2009/11/16 19:15:36 nm4 Exp $
Change log file for Exim from version 4.21
-------------------------------------------
@@ -10,6 +10,8 @@
NM/01 Bugzilla 913: Documentation fix for gnutls_* options.
+NM/02 Bugzilla 722: Documentation for randint. Better randomness defaults.
+
Exim version 4.70
-----------------
Index: os.h-FreeBSD
===================================================================
RCS file: /home/cvs/exim/exim-src/OS/os.h-FreeBSD,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- os.h-FreeBSD 16 Mar 2006 12:25:24 -0000 1.3
+++ os.h-FreeBSD 16 Nov 2009 19:15:36 -0000 1.4
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/OS/os.h-FreeBSD,v 1.3 2006/03/16 12:25:24 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/OS/os.h-FreeBSD,v 1.4 2009/11/16 19:15:36 nm4 Exp $ */
/* Exim: OS-specific C header file for FreeBSD */
@@ -7,6 +7,8 @@
#define HAVE_MMAP
#define HAVE_SYS_MOUNT_H
#define SIOCGIFCONF_GIVES_ADDR
+#define HAVE_SRANDOMDEV
+#define HAVE_ARC4RANDOM
typedef struct flock flock_t;
Index: os.h-NetBSD
===================================================================
RCS file: /home/cvs/exim/exim-src/OS/os.h-NetBSD,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- os.h-NetBSD 20 Oct 2009 12:39:47 -0000 1.5
+++ os.h-NetBSD 16 Nov 2009 19:15:36 -0000 1.6
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/OS/os.h-NetBSD,v 1.5 2009/10/20 12:39:47 nm4 Exp $ */
+/* $Cambridge: exim/exim-src/OS/os.h-NetBSD,v 1.6 2009/11/16 19:15:36 nm4 Exp $ */
/* Exim: OS-specific C header file for NetBSD */
@@ -7,6 +7,7 @@
#define HAVE_MMAP
#define HAVE_SYS_MOUNT_H
#define SIOCGIFCONF_GIVES_ADDR
+#define HAVE_ARC4RANDOM
typedef struct flock flock_t;
Index: os.h-OpenBSD
===================================================================
RCS file: /home/cvs/exim/exim-src/OS/os.h-OpenBSD,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- os.h-OpenBSD 6 Oct 2004 15:07:39 -0000 1.1
+++ os.h-OpenBSD 16 Nov 2009 19:15:36 -0000 1.2
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/OS/os.h-OpenBSD,v 1.1 2004/10/06 15:07:39 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/OS/os.h-OpenBSD,v 1.2 2009/11/16 19:15:36 nm4 Exp $ */
/* Exim: OS-specific C header file for OpenBSD */
@@ -6,6 +6,7 @@
#define HAVE_MMAP
#define HAVE_SYS_MOUNT_H
#define SIOCGIFCONF_GIVES_ADDR
+#define HAVE_ARC4RANDOM
typedef struct flock flock_t;
Index: exim.h
===================================================================
RCS file: /home/cvs/exim/exim-src/src/exim.h,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -r1.25 -r1.26
--- exim.h 10 Jun 2009 07:34:04 -0000 1.25
+++ exim.h 16 Nov 2009 19:15:36 -0000 1.26
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/exim.h,v 1.25 2009/06/10 07:34:04 tom Exp $ */
+/* $Cambridge: exim/exim-src/src/exim.h,v 1.26 2009/11/16 19:15:36 nm4 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -17,6 +17,11 @@
#define HAVE_STATFS
+/* Similarly, assume most systems have srandom() unless os.h undefines it.
+This call dates back at least as far as SUSv2. */
+
+#define HAVE_SRANDOM
+
/* First of all include the os-specific header, which might set things that
are needed by any of the other headers, including system headers. */