EVP_AEAD_CTX_open

EVP_AEAD_CTX_open authenticates the input and additional data, decrypting the input and writing it as output. One is returned on success, otherwise zero.

This function may be called (with the same EVP_AEAD_CTX) concurrently with itself or EVP_AEAD_CTX_seal.

At most the number of input bytes are written as output. In order to ensure success, max_out_len should be at least the same as the input length. On successful return out_len is set to the actual number of bytes written.

The length of nonce must be equal to the result of EVP_AEAD_nonce_length for this AEAD.

EVP_AEAD_CTX_open never results in a partial output. If max_out_len is insufficient, zero will be returned and out_len will be set to zero.

If the input and output are aliased then out must be <= in.

extern (C) nothrow @nogc
int
EVP_AEAD_CTX_open
(
const(.EVP_AEAD_CTX)* ctx
,
ubyte* out_
,
size_t* out_len
,,
const(ubyte)* nonce
,
size_t nonce_len
,
const(ubyte)* in_
,
size_t in_len
,
const(ubyte)* ad
,
size_t ad_len
)

Meta