Set error code is additional data callback fails.

This commit is contained in:
Dr. Stephen Henson 2011-04-04 17:03:35 +00:00
parent ac1ee8e877
commit f4bd65dae3
2 changed files with 4 additions and 2 deletions

View File

@ -202,6 +202,7 @@ void ERR_load_FIPS_strings(void);
#define FIPS_F_FIPS_CHECK_RSA 106
#define FIPS_F_FIPS_CIPHERINIT 128
#define FIPS_F_FIPS_DIGESTINIT 127
#define FIPS_F_FIPS_DRBG_BYTES 142
#define FIPS_F_FIPS_DRBG_GENERATE 132
#define FIPS_F_FIPS_DRBG_GENERATE_INTERNAL 138
#define FIPS_F_FIPS_DRBG_HEALTH_CHECK 137
@ -242,6 +243,7 @@ void ERR_load_FIPS_strings(void);
#define FIPS_R_ENTROPY_NOT_REQUESTED_FOR_RESEED 134
#define FIPS_R_ERROR_INITIALISING_DRBG 120
#define FIPS_R_ERROR_INSTANTIATING_DRBG 121
#define FIPS_R_ERROR_RETRIEVING_ADDITIONAL_INPUT 144
#define FIPS_R_ERROR_RETRIEVING_ENTROPY 122
#define FIPS_R_ERROR_RETRIEVING_NONCE 123
#define FIPS_R_EXE_DIGEST_DOES_NOT_MATCH 105

View File

@ -65,7 +65,7 @@
/* Mapping of SP800-90 DRBGs to OpenSSL RAND_METHOD */
/* Since we only have one global PRNG used at any time in OpenSSL use a global
* variable to store contexts.
* variable to store context.
*/
static DRBG_CTX ossl_dctx;
@ -94,7 +94,7 @@ static int fips_drbg_bytes(unsigned char *out, int count)
adinlen = dctx->get_adin(dctx, &adin);
if (adinlen && !adin)
{
/* ERROR */
FIPSerr(FIPS_F_FIPS_DRBG_BYTES, FIPS_R_ERROR_RETRIEVING_ADDITIONAL_INPUT);
goto err;
}
}