memcpy(ptr, c->buf, arg);
return 1;
- case EVP_CTRL_GET_IV:
- if (gctx->iv_gen != 1 && gctx->iv_gen_rand != 1)
- return 0;
- if (gctx->ivlen != arg)
- return 0;
- memcpy(ptr, gctx->iv, arg);
- return 1;
-
case EVP_CTRL_GCM_SET_IV_FIXED:
/* Special case: -1 length restores whole IV */
if (arg == -1) {
case EVP_CTRL_SET_PIPELINE_OUTPUT_BUFS: /* Used by DASYNC */
default:
goto end;
- case EVP_CTRL_GET_IV:
- set_params = 0;
- params[0] =
- OSSL_PARAM_construct_octet_string(OSSL_CIPHER_PARAM_IV_STATE, ptr,
- sz);
- break;
case EVP_CTRL_AEAD_SET_IVLEN:
if (arg < 0)
return 0;
if (tls_version == TLS1_2_VERSION &&
EVP_CIPHER_mode(c) == EVP_CIPH_GCM_MODE) {
- EVP_CIPHER_CTX_ctrl(dd, EVP_CTRL_GET_IV,
- EVP_GCM_TLS_FIXED_IV_LEN + EVP_GCM_TLS_EXPLICIT_IV_LEN,
- geniv);
+ if (!EVP_CIPHER_CTX_get_iv_state(dd, geniv,
+ EVP_GCM_TLS_FIXED_IV_LEN
+ + EVP_GCM_TLS_EXPLICIT_IV_LEN))
+ return 0;
iiv = geniv;
}
# define EVP_CTRL_SET_PIPELINE_INPUT_LENS 0x24
/* Get the IV length used by the cipher */
# define EVP_CTRL_GET_IVLEN 0x25
-/* Get the IV used by the cipher */
-# define EVP_CTRL_GET_IV 0x26
+/* 0x26 is unused */
/* Tell the cipher it's doing a speed test (SIV disallows multiple ops) */
# define EVP_CTRL_SET_SPEED 0x27
/* Get the unprotectedAttrs from cipher ctx */
&& TEST_true(EVP_CIPHER_CTX_ctrl(ctx, EVP_CTRL_AEAD_GET_TAG, 16,
tag) > 0)
&& TEST_true(iv_gen == NULL
- || EVP_CIPHER_CTX_ctrl(ctx, EVP_CTRL_GET_IV, 12, iv_gen) > 0);
+ || EVP_CIPHER_CTX_get_iv(ctx, iv_gen, 12));
EVP_CIPHER_CTX_free(ctx);
return ret;
}