CTR, HASH and HMAC DRBGs in provider
[openssl.git] / providers / defltprov.c
index 8e27b33fc26cfd4eae4b46fffb7c962f0b1259d6..7c1ffc7763e1ebfa9ffad36af30d2ae7e0ee85b1 100644 (file)
@@ -337,6 +337,14 @@ static const OSSL_ALGORITHM deflt_keyexch[] = {
     { NULL, NULL, NULL }
 };
 
+static const OSSL_ALGORITHM deflt_rands[] = {
+    { "CTR-DRBG", "provider=default", drbg_ctr_functions },
+    { "HASH-DRBG", "provider=default", drbg_hash_functions },
+    { "HMAC-DRBG", "provider=default", drbg_hmac_functions },
+    { "TEST-RAND", "provider=default", test_rng_functions },
+    { NULL, NULL, NULL }
+};
+
 static const OSSL_ALGORITHM deflt_signature[] = {
 #ifndef OPENSSL_NO_DSA
     { "DSA:dsaEncryption", "provider=default", dsa_signature_functions },
@@ -536,6 +544,8 @@ static const OSSL_ALGORITHM *deflt_query(void *provctx, int operation_id,
         return deflt_macs;
     case OSSL_OP_KDF:
         return deflt_kdfs;
+    case OSSL_OP_RAND:
+        return deflt_rands;
     case OSSL_OP_KEYMGMT:
         return deflt_keymgmt;
     case OSSL_OP_KEYEXCH: