summaryrefslogtreecommitdiffstats
path: root/crypto
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2002-11-18 23:06:36 +0000
committerRichard Levitte <levitte@openssl.org>2002-11-18 23:06:36 +0000
commita1d85309ee183c97a5ee4f8277f17d87d7786e25 (patch)
treee7d5f1f16b443d4f7a0bce8edbfd38ab792b762c /crypto
parent450cee5c3a42337cb61387365a480228cee52967 (diff)
Determine HZ exactly as in apps/speed.c.
Diffstat (limited to 'crypto')
-rw-r--r--crypto/tmdiff.c22
1 files changed, 15 insertions, 7 deletions
diff --git a/crypto/tmdiff.c b/crypto/tmdiff.c
index e1a0e17ac0..307523ebba 100644
--- a/crypto/tmdiff.c
+++ b/crypto/tmdiff.c
@@ -59,6 +59,9 @@
#include <stdlib.h>
#include "cryptlib.h"
#include <openssl/tmdiff.h>
+#if !defined(OPENSSL_SYS_MSDOS)
+#include OPENSSL_UNISTD
+#endif
#ifdef TIMEB
#undef OPENSSL_SYS_WIN32
@@ -101,14 +104,19 @@
/* The following if from times(3) man page. It may need to be changed */
#ifndef HZ
-# ifndef CLK_TCK
-# ifndef _BSD_CLK_TCK_ /* FreeBSD hack */
-# define HZ 100.0
-# else /* _BSD_CLK_TCK_ */
-# define HZ ((double)_BSD_CLK_TCK_)
+# if defined(_SC_CLK_TCK) \
+ && (!defined(OPENSSL_SYS_VMS) || __CTRL_VER >= 70000000)
+# define HZ ((double)sysconf(_SC_CLK_TCK))
+# else
+# ifndef CLK_TCK
+# ifndef _BSD_CLK_TCK_ /* FreeBSD hack */
+# define HZ 100.0
+# else /* _BSD_CLK_TCK_ */
+# define HZ ((double)_BSD_CLK_TCK_)
+# endif
+# else /* CLK_TCK */
+# define HZ ((double)CLK_TCK)
# endif
-# else /* CLK_TCK */
-# define HZ ((double)CLK_TCK)
# endif
#endif