const char *prog;
const char *engine_id = NULL;
EVP_CIPHER *evp_cipher = NULL;
+ EVP_MAC *mac = NULL;
double d = 0.0;
OPTION_CHOICE o;
int async_init = 0, multiblock = 0, pr_header = 0;
/* No parameters; turn on everything. */
if (argc == 0 && !doit[D_EVP] && !doit[D_HMAC] && !doit[D_EVP_CMAC]) {
- EVP_MAC *mac;
-
memset(doit, 1, sizeof(doit));
doit[D_EVP] = doit[D_EVP_CMAC] = 0;
ERR_set_mark();
doit[i] = 0;
}
if ((mac = EVP_MAC_fetch(app_get0_libctx(), "GMAC",
- app_get0_propq())) != NULL)
+ app_get0_propq())) != NULL) {
EVP_MAC_free(mac);
- else
+ mac = NULL;
+ } else {
doit[D_GHASH] = 0;
+ }
if ((mac = EVP_MAC_fetch(app_get0_libctx(), "HMAC",
- app_get0_propq())) != NULL)
+ app_get0_propq())) != NULL) {
EVP_MAC_free(mac);
- else
+ mac = NULL;
+ } else {
doit[D_HMAC] = 0;
+ }
ERR_pop_to_mark();
memset(rsa_doit, 1, sizeof(rsa_doit));
#ifndef OPENSSL_NO_DH
if (doit[D_HMAC]) {
static const char hmac_key[] = "This is a key...";
int len = strlen(hmac_key);
- EVP_MAC *mac = EVP_MAC_fetch(app_get0_libctx(), "HMAC",
- app_get0_propq());
OSSL_PARAM params[3];
+ mac = EVP_MAC_fetch(app_get0_libctx(), "HMAC", app_get0_propq());
if (mac == NULL || evp_mac_mdname == NULL)
goto end;
for (i = 0; i < loopargs_len; i++)
EVP_MAC_CTX_free(loopargs[i].mctx);
EVP_MAC_free(mac);
+ mac = NULL;
}
if (doit[D_CBC_DES]) {
}
if (doit[D_GHASH]) {
static const char gmac_iv[] = "0123456789ab";
- EVP_MAC *mac = EVP_MAC_fetch(app_get0_libctx(), "GMAC",
- app_get0_propq());
OSSL_PARAM params[3];
+ mac = EVP_MAC_fetch(app_get0_libctx(), "GMAC", app_get0_propq());
if (mac == NULL)
goto end;
for (i = 0; i < loopargs_len; i++)
EVP_MAC_CTX_free(loopargs[i].mctx);
EVP_MAC_free(mac);
+ mac = NULL;
}
if (doit[D_RAND]) {
}
if (doit[D_EVP_CMAC]) {
- EVP_MAC *mac = EVP_MAC_fetch(app_get0_libctx(), "CMAC",
- app_get0_propq());
OSSL_PARAM params[3];
EVP_CIPHER *cipher = NULL;
+ mac = EVP_MAC_fetch(app_get0_libctx(), "CMAC", app_get0_propq());
if (mac == NULL || evp_mac_ciphername == NULL)
goto end;
if (!opt_cipher(evp_mac_ciphername, &cipher))
for (i = 0; i < loopargs_len; i++)
EVP_MAC_CTX_free(loopargs[i].mctx);
EVP_MAC_free(mac);
+ mac = NULL;
}
for (i = 0; i < loopargs_len; i++)
OPENSSL_free(loopargs);
release_engine(e);
EVP_CIPHER_free(evp_cipher);
+ EVP_MAC_free(mac);
return ret;
}