@deftypefun {int} {gnutls_cipher_decrypt2} (gnutls_cipher_hd_t @var{handle}, const void * @var{ctext}, size_t @var{ctext_len}, void * @var{ptext}, size_t @var{ptext_len}) @var{handle}: is a @code{gnutls_cipher_hd_t} type @var{ctext}: the data to decrypt @var{ctext_len}: the length of data to decrypt @var{ptext}: the decrypted data @var{ptext_len}: the available length for decrypted data This function will decrypt the given data using the algorithm specified by the context. For block ciphers the @code{ctext_len} must be a multiple of the block size. For the supported ciphers the plaintext data length will equal the ciphertext size. Note that in AEAD ciphers, this will not check the tag. You will need to compare the tag sent with the value returned from @code{gnutls_cipher_tag()} . @strong{Returns:} Zero or a negative error code on error. @strong{Since:} 2.12.0 @end deftypefun