/*
- * Copyright 2001-2018 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 2001-2019 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the OpenSSL license (the "License"). You may not use
* this file except in compliance with the License. You can obtain a copy
} data = { 0 };
/*
- * Add process id, thread id, and a high resolution timestamp to
- * ensure that the nonce is unique whith high probability for
- * different process instances.
+ * Add process id, thread id, and a high resolution timestamp
+ * (where available, which is OpenVMS v8.4 and up) to ensure that
+ * the nonce is unique whith high probability for different process
+ * instances.
*/
data.pid = getpid();
data.tid = CRYPTO_THREAD_get_current_id();
+#if __CRTL_VER >= 80400000
sys$gettim_prec(&data.time);
+#else
+ sys$gettim((void*)&data.time);
+#endif
return rand_pool_add(pool, (unsigned char *)&data, sizeof(data), 0);
}
* concurrently (which is the case for the <master> drbg).
*/
data.tid = CRYPTO_THREAD_get_current_id();
+#if __CRTL_VER >= 80400000
sys$gettim_prec(&data.time);
+#else
+ sys$gettim((void*)&data.time);
+#endif
return rand_pool_add(pool, (unsigned char *)&data, sizeof(data), 0);
}