/*
- * Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 2017-2019 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the Apache License 2.0 (the "License"). You may not use
* this file except in compliance with the License. You can obtain a copy
#include <openssl/obj_mac.h>
#include <openssl/evp.h>
#include <openssl/aes.h>
-#include "../crypto/rand/rand_lcl.h"
+#include "../crypto/rand/rand_local.h"
#include "testutil.h"
#include "drbg_cavs_data.h"
failures++;
err:
- if (buff != NULL)
- OPENSSL_free(buff);
- if (drbg != NULL) {
- RAND_DRBG_uninstantiate(drbg);
- RAND_DRBG_free(drbg);
- }
+ OPENSSL_free(buff);
+ RAND_DRBG_uninstantiate(drbg);
+ RAND_DRBG_free(drbg);
return failures == 0;
}
failures++;
err:
- if (buff != NULL)
- OPENSSL_free(buff);
- if (drbg != NULL) {
- RAND_DRBG_uninstantiate(drbg);
- RAND_DRBG_free(drbg);
- }
+ OPENSSL_free(buff);
+ RAND_DRBG_uninstantiate(drbg);
+ RAND_DRBG_free(drbg);
return failures == 0;
}
failures++;
err:
- if (buff != NULL)
- OPENSSL_free(buff);
- if (drbg != NULL) {
- RAND_DRBG_uninstantiate(drbg);
- RAND_DRBG_free(drbg);
- }
+ OPENSSL_free(buff);
+ RAND_DRBG_uninstantiate(drbg);
+ RAND_DRBG_free(drbg);
return failures == 0;
}
const struct drbg_kat *td = test[i];
int rv = 0;
+#ifdef FIPS_MODE
+ /* FIPS mode doesn't support instantiating without a derivation function */
+ if ((td->flags & USE_DF) == 0)
+ return TEST_skip("instantiating without derivation function "
+ "is not supported in FIPS mode");
+#endif
switch (td->type) {
case NO_RESEED:
if (!single_kat_no_reseed(td))
if (!single_kat_pr_true(td))
goto err;
break;
- default: /* cant happen */
+ default: /* cant happen */
goto err;
}
rv = 1;