1<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>crypto_aead_decrypt</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="Linux Kernel Crypto API"><link rel="up" href="ch05s05.html" title="Authenticated Encryption With Associated Data (AEAD) Cipher API"><link rel="prev" href="API-crypto-aead-encrypt.html" title="crypto_aead_encrypt"><link rel="next" href="ch05s06.html" title="Asynchronous AEAD Request Handle"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center"><span class="phrase">crypto_aead_decrypt</span></th></tr><tr><td width="20%" align="left"><a accesskey="p" href="API-crypto-aead-encrypt.html">Prev</a>&#160;</td><th width="60%" align="center">Authenticated Encryption With Associated Data (AEAD) Cipher API</th><td width="20%" align="right">&#160;<a accesskey="n" href="ch05s06.html">Next</a></td></tr></table><hr></div><div class="refentry"><a name="API-crypto-aead-decrypt"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>crypto_aead_decrypt &#8212; 
2  decrypt ciphertext
3 </p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">crypto_aead_decrypt </b>(</code></td><td>struct aead_request * <var class="pdparam">req</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">&#160;</div></div></div><div class="refsect1"><a name="idp1097694284"></a><h2>Arguments</h2><div class="variablelist"><dl class="variablelist"><dt><span class="term"><em class="parameter"><code>req</code></em></span></dt><dd><p>
4     reference to the ablkcipher_request handle that holds all information
5     needed to perform the cipher operation
6    </p></dd></dl></div></div><div class="refsect1"><a name="idp1097695948"></a><h2>Description</h2><p>
7   Decrypt ciphertext data using the aead_request handle. That data structure
8   and how it is filled with data is discussed with the aead_request_*
9   functions.
10   </p><p>
11
12   IMPORTANT NOTE The caller must concatenate the ciphertext followed by the
13   authentication data / tag. That authentication data / tag
14   must have the size defined by the crypto_aead_setauthsize
15   invocation.
16</p></div><div class="refsect1"><a name="idp1097697052"></a><h2>Return</h2><p>
17   0 if the cipher operation was successful; -EBADMSG: The AEAD
18   cipher operation performs the authentication of the data during the
19   decryption operation. Therefore, the function returns this error if
20   the authentication of the ciphertext was unsuccessful (i.e. the
21   integrity of the ciphertext or the associated data was violated);
22   &lt; 0 if an error occurred.
23</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="API-crypto-aead-encrypt.html">Prev</a>&#160;</td><td width="20%" align="center"><a accesskey="u" href="ch05s05.html">Up</a></td><td width="40%" align="right">&#160;<a accesskey="n" href="ch05s06.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"><span class="phrase">crypto_aead_encrypt</span>&#160;</td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top">&#160;Asynchronous AEAD Request Handle</td></tr></table></div></body></html>
24