.. _prngenrdrand: PRNGenRDRAND ============ Generates a pseudorandom unsigned Big Number of the specified bit length using the RDRAND instruction. Syntax ------ IppStatus ippsPRNGenRDRAND(Ipp32u\* pRand, int nBits, void\* pCtx); Include Files ------------- ``ippcp.h`` Parameters ---------- .. list-table:: :header-rows: 0 * - pRand - Pointer to the output pseudorandom unsigned integer big number. * - nBits - The number of generated pseudorandom bits. * - pCtx - Pointer to the IppsPRNGState context. This pointer is unused and can be NULL. Description ----------- The function generates a pseudorandom unsigned integer big number of the specified nBits length. The generation is based on the RDRAND instruction available on latest IntelĀ® processors `[INTEL_ARCH] `__. .. admonition:: Product and Performance Information Performance varies by use, configuration and other factors. Learn more at `www.intel.com/PerformanceIndex `_. Notice revision #20201201 Return Values ------------- .. list-table:: :header-rows: 0 * - ippStsNoErr - Indicates no error. Any other value indicates an error or warning. * - ippStsNullPtrErr - Indicates an error condition if any of the specified pointers is NULL. * - ippStsContextMatchErr - Indicates an error condition if the context parameter does not match the operation. * - ippStsLengthErr - Indicates an error condition if nBits is less than 1. * - ippStsNotSupportedModeErr - Indicates an error condition if the RDRAND instruction is not available on the target processor.