From 75b98a184561cd75b399887362146f2b54aec74c Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Fri, 16 Mar 2001 12:02:22 +0000 Subject: (uint64_t): Define to uintmax_t if not defined, and if UINT64_MAX is not defined. Required at least for Vax Ultrix4.3, which doesn't define uint64_t. Reported by John David Anglin. --- lib/tempname.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'lib/tempname.c') diff --git a/lib/tempname.c b/lib/tempname.c index d008c982f..5ead95ea3 100644 --- a/lib/tempname.c +++ b/lib/tempname.c @@ -107,6 +107,15 @@ # define __secure_getenv getenv #endif +/* Use the widest available unsigned type if uint64_t is not + available. The algorithm below extracts a number less than 62**6 + (approximately 2**35.725) from uint64_t, so ancient hosts where + uintmax_t is only 32 bits lose about 3.725 bits of randomness, + which is better than not having mkstemp at all. */ +#if !defined UINT64_MAX && !defined uint64_t +# define uint64_t uintmax_t +#endif + /* Return nonzero if DIR is an existent directory. */ static int direxists (const char *dir) -- cgit v1.2.3-54-g00ecf