/
githubmirror
/
xmlsec
Обзор
Документация
Войти
/
githubmirror
/
xmlsec
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
1.3.10
docs/api/xmlsec-xmlenc.html
1 128 строк
53 KB
lsh123
Update docs (#1082)
18 мар 2026, 04:43
Не верифицирован
18 мар 2026, 04:43
ff1e861
Код
Авторство
О чём код?
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>xmlenc: XML Security Library Reference Manual</title> <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"> <link rel="home" href="index.html" title="XML Security Library Reference Manual"> <link rel="up" href="xmlsec-ref.html" title="XML Security Core Library API Reference."> <link rel="prev" href="xmlsec-xmldsig.html" title="xmldsig"> <link rel="next" href="xmlsec-xmlsec.html" title="xmlsec"> <meta name="generator" content="GTK-Doc V1.34.0 (XML mode)"> <link rel="stylesheet" href="style.css" type="text/css"> </head> <body><table width="100%" valign="top"><tr valign="top"> <td valign="top" align="left" width="210"> <img src="../images/logo.gif" alt="XML Security Library" border="0"><p></p> <ul> <li><a href="../index.html">Home</a></li> <li><a href="../download.html">Download</a></li> <ul><li><a href="../https://github.com/lsh123/xmlsec">GitHub</a></li></ul> <li><a href="../news.html">News</a></li> <li><a href="../documentation.html">Documentation</a></li> <ul> <li><a href="../faq.html">FAQ</a></li> <li><a href="../api/xmlsec-notes.html">Tutorial</a></li> <li><a href="../api/xmlsec-reference.html">API reference</a></li> <li><a href="../api/xmlsec-examples.html">Examples</a></li> </ul> <li><a href="../xmldsig.html">XML Digital Signature</a></li> <li><a href="../xmlenc.html">XML Encryption</a></li> <li><a href="../c14n.html">XML Canonicalization</a></li> <li><a href="../bugs.html">Reporting Bugs</a></li> <li><a href="mailing-list.html">Mailing list</a></li> <li><a href="../related.html">Related</a></li> <li><a href="../authors.html">Authors</a></li> </ul> <table width="100%"> <tr> <td width="15"></td> <td><a href="http://xmlsoft.org/"><img src="../images/libxml2-logo.png" alt="LibXML2" border="0"></a></td> </tr> <tr> <td width="15"></td> <td><a href="http://xmlsoft.org/XSLT"><img src="../images/libxslt-logo.png" alt="LibXSLT" border="0"></a></td> </tr> <tr> <td width="15"></td> <td><a href="http://www.openssl.org/"><img src="../images/openssl-logo.png" alt="OpenSSL" border="0"></a></td> </tr> <!--Links - start--><!--Links - end--> </table> </td> <td valign="top"><table width="80%" valign="top" style="margin-left:10px;"><tr><td valign="top" align="left" id="xmlsecContent"> <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle"> <td width="100%" align="left" class="shortcuts"> <a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> <a href="#xmlsec-xmlenc.description" class="shortcut">Description</a></span> </td> <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td> <td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td> <td><a accesskey="p" href="xmlsec-xmldsig.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td> <td><a accesskey="n" href="xmlsec-xmlsec.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td> </tr></table> <div class="refentry"> <a name="xmlsec-xmlenc"></a><div class="titlepage"></div> <div class="refnamediv"><table width="100%"><tr> <td valign="top"> <h2><span class="refentrytitle"><a name="xmlsec-xmlenc.top_of_page"></a>xmlenc</span></h2> <p>xmlenc — XML Encryption support.</p> </td> <td class="gallery_image" valign="top" align="right"></td> </tr></table></div> <div class="refsect1"> <a name="xmlsec-xmlenc.stability-level"></a><h2>Stability Level</h2> <acronym title="The intention of a Stable interface is to enable arbitrary third parties to develop applications to these interfaces, release them, and have confidence that they will run on all minor releases of the product (after the one in which the interface was introduced, and within the same major release). Even at a major release, incompatible changes are expected to be rare, and to have strong justifications. "><span class="acronym">Stable</span></acronym>, unless otherwise indicated </div> <div class="refsect1"> <a name="xmlsec-xmlenc.functions"></a><h2>Functions</h2> <div class="informaltable"><table class="informaltable" width="100%" border="0"> <colgroup> <col> <col> </colgroup> <tbody> <tr> <td class="function_type"> <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx"><span class="returnvalue">xmlSecEncCtxPtr</span></a> </td> <td class="function_name"> <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxCreate" title="xmlSecEncCtxCreate ()">xmlSecEncCtxCreate</a> <span class="c_punctuation">()</span> </td> </tr> <tr> <td class="function_type"> <font><span class="returnvalue">void</span></font> </td> <td class="function_name"> <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxDestroy" title="xmlSecEncCtxDestroy ()">xmlSecEncCtxDestroy</a> <span class="c_punctuation">()</span> </td> </tr> <tr> <td class="function_type"> <font><span class="returnvalue">int</span></font> </td> <td class="function_name"> <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxInitialize" title="xmlSecEncCtxInitialize ()">xmlSecEncCtxInitialize</a> <span class="c_punctuation">()</span> </td> </tr> <tr> <td class="function_type"> <font><span class="returnvalue">void</span></font> </td> <td class="function_name"> <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxFinalize" title="xmlSecEncCtxFinalize ()">xmlSecEncCtxFinalize</a> <span class="c_punctuation">()</span> </td> </tr> <tr> <td class="function_type"> <font><span class="returnvalue">int</span></font> </td> <td class="function_name"> <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxCopyUserPref" title="xmlSecEncCtxCopyUserPref ()">xmlSecEncCtxCopyUserPref</a> <span class="c_punctuation">()</span> </td> </tr> <tr> <td class="function_type"> <font><span class="returnvalue">void</span></font> </td> <td class="function_name"> <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxReset" title="xmlSecEncCtxReset ()">xmlSecEncCtxReset</a> <span class="c_punctuation">()</span> </td> </tr> <tr> <td class="function_type"> <font><span class="returnvalue">int</span></font> </td> <td class="function_name"> <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxBinaryEncrypt" title="xmlSecEncCtxBinaryEncrypt ()">xmlSecEncCtxBinaryEncrypt</a> <span class="c_punctuation">()</span> </td> </tr> <tr> <td class="function_type"> <font><span class="returnvalue">int</span></font> </td> <td class="function_name"> <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxXmlEncrypt" title="xmlSecEncCtxXmlEncrypt ()">xmlSecEncCtxXmlEncrypt</a> <span class="c_punctuation">()</span> </td> </tr> <tr> <td class="function_type"> <font><span class="returnvalue">int</span></font> </td> <td class="function_name"> <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxUriEncrypt" title="xmlSecEncCtxUriEncrypt ()">xmlSecEncCtxUriEncrypt</a> <span class="c_punctuation">()</span> </td> </tr> <tr> <td class="function_type"> <font><span class="returnvalue">int</span></font> </td> <td class="function_name"> <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxDecrypt" title="xmlSecEncCtxDecrypt ()">xmlSecEncCtxDecrypt</a> <span class="c_punctuation">()</span> </td> </tr> <tr> <td class="function_type"> <a class="link" href="xmlsec-buffer.html#xmlSecBuffer" title="struct xmlSecBuffer"><span class="returnvalue">xmlSecBufferPtr</span></a> </td> <td class="function_name"> <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxDecryptToBuffer" title="xmlSecEncCtxDecryptToBuffer ()">xmlSecEncCtxDecryptToBuffer</a> <span class="c_punctuation">()</span> </td> </tr> <tr> <td class="function_type"> <font><span class="returnvalue">void</span></font> </td> <td class="function_name"> <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxDebugDump" title="xmlSecEncCtxDebugDump ()">xmlSecEncCtxDebugDump</a> <span class="c_punctuation">()</span> </td> </tr> <tr> <td class="function_type"> <font><span class="returnvalue">void</span></font> </td> <td class="function_name"> <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxDebugXmlDump" title="xmlSecEncCtxDebugXmlDump ()">xmlSecEncCtxDebugXmlDump</a> <span class="c_punctuation">()</span> </td> </tr> <tr> <td class="function_type"> <a class="link" href="xmlsec-keys.html#xmlSecKey" title="struct xmlSecKey"><span class="returnvalue">xmlSecKeyPtr</span></a> </td> <td class="function_name"> <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxDerivedKeyGenerate" title="xmlSecEncCtxDerivedKeyGenerate ()">xmlSecEncCtxDerivedKeyGenerate</a> <span class="c_punctuation">()</span> </td> </tr> <tr> <td class="function_type"> <a class="link" href="xmlsec-keys.html#xmlSecKey" title="struct xmlSecKey"><span class="returnvalue">xmlSecKeyPtr</span></a> </td> <td class="function_name"> <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxAgreementMethodGenerate" title="xmlSecEncCtxAgreementMethodGenerate ()">xmlSecEncCtxAgreementMethodGenerate</a> <span class="c_punctuation">()</span> </td> </tr> <tr> <td class="function_type"> <font><span class="returnvalue">int</span></font> </td> <td class="function_name"> <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxAgreementMethodXmlWrite" title="xmlSecEncCtxAgreementMethodXmlWrite ()">xmlSecEncCtxAgreementMethodXmlWrite</a> <span class="c_punctuation">()</span> </td> </tr> <tr> <td class="function_type">const <font><span class="returnvalue">char</span></font> * </td> <td class="function_name"> <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxGetFailureReasonString" title="xmlSecEncCtxGetFailureReasonString ()">xmlSecEncCtxGetFailureReasonString</a> <span class="c_punctuation">()</span> </td> </tr> </tbody> </table></div> </div> <div class="refsect1"> <a name="xmlsec-xmlenc.other"></a><h2>Types and Values</h2> <div class="informaltable"><table class="informaltable" width="100%" border="0"> <colgroup> <col> <col> </colgroup> <tbody> <tr> <td class="datatype_keyword">enum</td> <td class="function_name"><a class="link" href="xmlsec-xmlenc.html#xmlEncCtxMode" title="enum xmlEncCtxMode">xmlEncCtxMode</a></td> </tr> <tr> <td class="datatype_keyword">enum</td> <td class="function_name"><a class="link" href="xmlsec-xmlenc.html#xmlSecEncFailureReason" title="enum xmlSecEncFailureReason">xmlSecEncFailureReason</a></td> </tr> <tr> <td class="define_keyword">#define</td> <td class="function_name"><a class="link" href="xmlsec-xmlenc.html#XMLSEC-ENC-RETURN-REPLACED-NODE:CAPS" title="XMLSEC_ENC_RETURN_REPLACED_NODE">XMLSEC_ENC_RETURN_REPLACED_NODE</a></td> </tr> <tr> <td class="datatype_keyword">struct</td> <td class="function_name"><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx">xmlSecEncCtx</a></td> </tr> </tbody> </table></div> </div> <div class="refsect1"> <a name="xmlsec-xmlenc.description"></a><h2>Description</h2> <p><a class="ulink" href="http://www.w3.org/TR/xmlenc-core" target="_top">XML Encryption</a> implementation.</p> </div> <div class="refsect1"> <a name="xmlsec-xmlenc.functions_details"></a><h2>Functions</h2> <div class="refsect2"> <a name="xmlSecEncCtxCreate"></a><h3>xmlSecEncCtxCreate ()</h3> <pre class="programlisting"><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx"><span class="returnvalue">xmlSecEncCtxPtr</span></a> xmlSecEncCtxCreate (<em class="parameter"><code><a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngr" title="struct xmlSecKeysMngr"><span class="type">xmlSecKeysMngrPtr</span></a> keysMngr</code></em>);</pre> <p>Creates <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> element processing context. The caller is responsible for destroying returned object by calling <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxDestroy" title="xmlSecEncCtxDestroy ()"><span class="type">xmlSecEncCtxDestroy</span></a> function.</p> <div class="refsect3"> <a name="xmlSecEncCtxCreate.parameters"></a><h4>Parameters</h4> <div class="informaltable"><table class="informaltable" width="100%" border="0"> <colgroup> <col> <col> <col> </colgroup> <tbody><tr> <td class="parameter_name"><p>keysMngr</p></td> <td class="parameter_description"><p>the pointer to keys manager.</p></td> <td class="parameter_annotations"> </td> </tr></tbody> </table></div> </div> <div class="refsect3"> <a name="xmlSecEncCtxCreate.returns"></a><h4>Returns</h4> <p> pointer to newly allocated context object or NULL if an error occurs.</p> </div> </div> <hr> <div class="refsect2"> <a name="xmlSecEncCtxDestroy"></a><h3>xmlSecEncCtxDestroy ()</h3> <pre class="programlisting"><font><span class="returnvalue">void</span></font> xmlSecEncCtxDestroy (<em class="parameter"><code><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx"><span class="type">xmlSecEncCtxPtr</span></a> encCtx</code></em>);</pre> <p>Destroy context object created with <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxCreate" title="xmlSecEncCtxCreate ()"><span class="type">xmlSecEncCtxCreate</span></a> function.</p> <div class="refsect3"> <a name="xmlSecEncCtxDestroy.parameters"></a><h4>Parameters</h4> <div class="informaltable"><table class="informaltable" width="100%" border="0"> <colgroup> <col> <col> <col> </colgroup> <tbody><tr> <td class="parameter_name"><p>encCtx</p></td> <td class="parameter_description"><p>the pointer to <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> processing context.</p></td> <td class="parameter_annotations"> </td> </tr></tbody> </table></div> </div> </div> <hr> <div class="refsect2"> <a name="xmlSecEncCtxInitialize"></a><h3>xmlSecEncCtxInitialize ()</h3> <pre class="programlisting"><font><span class="returnvalue">int</span></font> xmlSecEncCtxInitialize (<em class="parameter"><code><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx"><span class="type">xmlSecEncCtxPtr</span></a> encCtx</code></em>, <em class="parameter"><code><a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngr" title="struct xmlSecKeysMngr"><span class="type">xmlSecKeysMngrPtr</span></a> keysMngr</code></em>);</pre> <p>Initializes <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> element processing context. The caller is responsible for cleaning up returned object by calling <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxFinalize" title="xmlSecEncCtxFinalize ()"><span class="type">xmlSecEncCtxFinalize</span></a> function.</p> <div class="refsect3"> <a name="xmlSecEncCtxInitialize.parameters"></a><h4>Parameters</h4> <div class="informaltable"><table class="informaltable" width="100%" border="0"> <colgroup> <col> <col> <col> </colgroup> <tbody> <tr> <td class="parameter_name"><p>encCtx</p></td> <td class="parameter_description"><p>the pointer to <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> processing context.</p></td> <td class="parameter_annotations"> </td> </tr> <tr> <td class="parameter_name"><p>keysMngr</p></td> <td class="parameter_description"><p>the pointer to keys manager.</p></td> <td class="parameter_annotations"> </td> </tr> </tbody> </table></div> </div> <div class="refsect3"> <a name="xmlSecEncCtxInitialize.returns"></a><h4>Returns</h4> <p> 0 on success or a negative value if an error occurs.</p> </div> </div> <hr> <div class="refsect2"> <a name="xmlSecEncCtxFinalize"></a><h3>xmlSecEncCtxFinalize ()</h3> <pre class="programlisting"><font><span class="returnvalue">void</span></font> xmlSecEncCtxFinalize (<em class="parameter"><code><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx"><span class="type">xmlSecEncCtxPtr</span></a> encCtx</code></em>);</pre> <p>Cleans up <em class="parameter"><code>encCtx</code></em> object.</p> <div class="refsect3"> <a name="xmlSecEncCtxFinalize.parameters"></a><h4>Parameters</h4> <div class="informaltable"><table class="informaltable" width="100%" border="0"> <colgroup> <col> <col> <col> </colgroup> <tbody><tr> <td class="parameter_name"><p>encCtx</p></td> <td class="parameter_description"><p>the pointer to <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> processing context.</p></td> <td class="parameter_annotations"> </td> </tr></tbody> </table></div> </div> </div> <hr> <div class="refsect2"> <a name="xmlSecEncCtxCopyUserPref"></a><h3>xmlSecEncCtxCopyUserPref ()</h3> <pre class="programlisting"><font><span class="returnvalue">int</span></font> xmlSecEncCtxCopyUserPref (<em class="parameter"><code><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx"><span class="type">xmlSecEncCtxPtr</span></a> dst</code></em>, <em class="parameter"><code><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx"><span class="type">xmlSecEncCtxPtr</span></a> src</code></em>);</pre> <p>Copies user preference from <em class="parameter"><code>src</code></em> context to <em class="parameter"><code>dst</code></em> .</p> <div class="refsect3"> <a name="xmlSecEncCtxCopyUserPref.parameters"></a><h4>Parameters</h4> <div class="informaltable"><table class="informaltable" width="100%" border="0"> <colgroup> <col> <col> <col> </colgroup> <tbody> <tr> <td class="parameter_name"><p>dst</p></td> <td class="parameter_description"><p>the pointer to destination context.</p></td> <td class="parameter_annotations"> </td> </tr> <tr> <td class="parameter_name"><p>src</p></td> <td class="parameter_description"><p>the pointer to source context.</p></td> <td class="parameter_annotations"> </td> </tr> </tbody> </table></div> </div> <div class="refsect3"> <a name="xmlSecEncCtxCopyUserPref.returns"></a><h4>Returns</h4> <p> 0 on success or a negative value if an error occurs.</p> </div> </div> <hr> <div class="refsect2"> <a name="xmlSecEncCtxReset"></a><h3>xmlSecEncCtxReset ()</h3> <pre class="programlisting"><font><span class="returnvalue">void</span></font> xmlSecEncCtxReset (<em class="parameter"><code><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx"><span class="type">xmlSecEncCtxPtr</span></a> encCtx</code></em>);</pre> <p>Resets <em class="parameter"><code>encCtx</code></em> object, user settings are not touched.</p> <div class="refsect3"> <a name="xmlSecEncCtxReset.parameters"></a><h4>Parameters</h4> <div class="informaltable"><table class="informaltable" width="100%" border="0"> <colgroup> <col> <col> <col> </colgroup> <tbody><tr> <td class="parameter_name"><p>encCtx</p></td> <td class="parameter_description"><p>the pointer to <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> processing context.</p></td> <td class="parameter_annotations"> </td> </tr></tbody> </table></div> </div> </div> <hr> <div class="refsect2"> <a name="xmlSecEncCtxBinaryEncrypt"></a><h3>xmlSecEncCtxBinaryEncrypt ()</h3> <pre class="programlisting"><font><span class="returnvalue">int</span></font> xmlSecEncCtxBinaryEncrypt (<em class="parameter"><code><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx"><span class="type">xmlSecEncCtxPtr</span></a> encCtx</code></em>, <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> tmpl</code></em>, <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *data</code></em>, <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> dataSize</code></em>);</pre> <p>Encrypts <em class="parameter"><code>data</code></em> according to template <em class="parameter"><code>tmpl</code></em> .</p> <div class="refsect3"> <a name="xmlSecEncCtxBinaryEncrypt.parameters"></a><h4>Parameters</h4> <div class="informaltable"><table class="informaltable" width="100%" border="0"> <colgroup> <col> <col> <col> </colgroup> <tbody> <tr> <td class="parameter_name"><p>encCtx</p></td> <td class="parameter_description"><p>the pointer to <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> processing context.</p></td> <td class="parameter_annotations"> </td> </tr> <tr> <td class="parameter_name"><p>tmpl</p></td> <td class="parameter_description"><p>the pointer to <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> template node.</p></td> <td class="parameter_annotations"> </td> </tr> <tr> <td class="parameter_name"><p>data</p></td> <td class="parameter_description"><p>the pointer for binary buffer.</p></td> <td class="parameter_annotations"> </td> </tr> <tr> <td class="parameter_name"><p>dataSize</p></td> <td class="parameter_description"><p>the <em class="parameter"><code>data</code></em> buffer size.</p></td> <td class="parameter_annotations"> </td> </tr> </tbody> </table></div> </div> <div class="refsect3"> <a name="xmlSecEncCtxBinaryEncrypt.returns"></a><h4>Returns</h4> <p> 0 on success or a negative value if an error occurs.</p> </div> </div> <hr> <div class="refsect2"> <a name="xmlSecEncCtxXmlEncrypt"></a><h3>xmlSecEncCtxXmlEncrypt ()</h3> <pre class="programlisting"><font><span class="returnvalue">int</span></font> xmlSecEncCtxXmlEncrypt (<em class="parameter"><code><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx"><span class="type">xmlSecEncCtxPtr</span></a> encCtx</code></em>, <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> tmpl</code></em>, <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>);</pre> <p>Encrypts <em class="parameter"><code>node</code></em> according to template <em class="parameter"><code>tmpl</code></em> . If requested, <em class="parameter"><code>node</code></em> is replaced with result <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> node.</p> <div class="refsect3"> <a name="xmlSecEncCtxXmlEncrypt.parameters"></a><h4>Parameters</h4> <div class="informaltable"><table class="informaltable" width="100%" border="0"> <colgroup> <col> <col> <col> </colgroup> <tbody> <tr> <td class="parameter_name"><p>encCtx</p></td> <td class="parameter_description"><p>the pointer to <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> processing context.</p></td> <td class="parameter_annotations"> </td> </tr> <tr> <td class="parameter_name"><p>tmpl</p></td> <td class="parameter_description"><p>the pointer to <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> template node.</p></td> <td class="parameter_annotations"> </td> </tr> <tr> <td class="parameter_name"><p>node</p></td> <td class="parameter_description"><p>the pointer to node for encryption.</p></td> <td class="parameter_annotations"> </td> </tr> </tbody> </table></div> </div> <div class="refsect3"> <a name="xmlSecEncCtxXmlEncrypt.returns"></a><h4>Returns</h4> <p> 0 on success or a negative value if an error occurs.</p> </div> </div> <hr> <div class="refsect2"> <a name="xmlSecEncCtxUriEncrypt"></a><h3>xmlSecEncCtxUriEncrypt ()</h3> <pre class="programlisting"><font><span class="returnvalue">int</span></font> xmlSecEncCtxUriEncrypt (<em class="parameter"><code><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx"><span class="type">xmlSecEncCtxPtr</span></a> encCtx</code></em>, <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> tmpl</code></em>, <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *uri</code></em>);</pre> <p>Encrypts data from <em class="parameter"><code>uri</code></em> according to template <em class="parameter"><code>tmpl</code></em> .</p> <div class="refsect3"> <a name="xmlSecEncCtxUriEncrypt.parameters"></a><h4>Parameters</h4> <div class="informaltable"><table class="informaltable" width="100%" border="0"> <colgroup> <col> <col> <col> </colgroup> <tbody> <tr> <td class="parameter_name"><p>encCtx</p></td> <td class="parameter_description"><p>the pointer to <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> processing context.</p></td> <td class="parameter_annotations"> </td> </tr> <tr> <td class="parameter_name"><p>tmpl</p></td> <td class="parameter_description"><p>the pointer to <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> template node.</p></td> <td class="parameter_annotations"> </td> </tr> <tr> <td class="parameter_name"><p>uri</p></td> <td class="parameter_description"><p>the URI.</p></td> <td class="parameter_annotations"> </td> </tr> </tbody> </table></div> </div> <div class="refsect3"> <a name="xmlSecEncCtxUriEncrypt.returns"></a><h4>Returns</h4> <p> 0 on success or a negative value if an error occurs.</p> </div> </div> <hr> <div class="refsect2"> <a name="xmlSecEncCtxDecrypt"></a><h3>xmlSecEncCtxDecrypt ()</h3> <pre class="programlisting"><font><span class="returnvalue">int</span></font> xmlSecEncCtxDecrypt (<em class="parameter"><code><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx"><span class="type">xmlSecEncCtxPtr</span></a> encCtx</code></em>, <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>);</pre> <p>Decrypts <em class="parameter"><code>node</code></em> and if necessary replaces <em class="parameter"><code>node</code></em> with decrypted data.</p> <div class="refsect3"> <a name="xmlSecEncCtxDecrypt.parameters"></a><h4>Parameters</h4> <div class="informaltable"><table class="informaltable" width="100%" border="0"> <colgroup> <col> <col> <col> </colgroup> <tbody> <tr> <td class="parameter_name"><p>encCtx</p></td> <td class="parameter_description"><p>the pointer to <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> processing context.</p></td> <td class="parameter_annotations"> </td> </tr> <tr> <td class="parameter_name"><p>node</p></td> <td class="parameter_description"><p>the pointer to <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> node.</p></td> <td class="parameter_annotations"> </td> </tr> </tbody> </table></div> </div> <div class="refsect3"> <a name="xmlSecEncCtxDecrypt.returns"></a><h4>Returns</h4> <p> 0 on success or a negative value if an error occurs.</p> </div> </div> <hr> <div class="refsect2"> <a name="xmlSecEncCtxDecryptToBuffer"></a><h3>xmlSecEncCtxDecryptToBuffer ()</h3> <pre class="programlisting"><a class="link" href="xmlsec-buffer.html#xmlSecBuffer" title="struct xmlSecBuffer"><span class="returnvalue">xmlSecBufferPtr</span></a> xmlSecEncCtxDecryptToBuffer (<em class="parameter"><code><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx"><span class="type">xmlSecEncCtxPtr</span></a> encCtx</code></em>, <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>);</pre> <p>Decrypts <em class="parameter"><code>node</code></em> data to the result.</p> <div class="refsect3"> <a name="xmlSecEncCtxDecryptToBuffer.parameters"></a><h4>Parameters</h4> <div class="informaltable"><table class="informaltable" width="100%" border="0"> <colgroup> <col> <col> <col> </colgroup> <tbody> <tr> <td class="parameter_name"><p>encCtx</p></td> <td class="parameter_description"><p>the pointer to encryption processing context.</p></td> <td class="parameter_annotations"> </td> </tr> <tr> <td class="parameter_name"><p>node</p></td> <td class="parameter_description"><p>the pointer to <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> node.</p></td> <td class="parameter_annotations"> </td> </tr> </tbody> </table></div> </div> <div class="refsect3"> <a name="xmlSecEncCtxDecryptToBuffer.returns"></a><h4>Returns</h4> <p> a buffer with key on success or NULL if an error occurs.</p> </div> </div> <hr> <div class="refsect2"> <a name="xmlSecEncCtxDebugDump"></a><h3>xmlSecEncCtxDebugDump ()</h3> <pre class="programlisting"><font><span class="returnvalue">void</span></font> xmlSecEncCtxDebugDump (<em class="parameter"><code><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx"><span class="type">xmlSecEncCtxPtr</span></a> encCtx</code></em>, <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre> <p>Prints the debug information about <em class="parameter"><code>encCtx</code></em> to <em class="parameter"><code>output</code></em> .</p> <div class="refsect3"> <a name="xmlSecEncCtxDebugDump.parameters"></a><h4>Parameters</h4> <div class="informaltable"><table class="informaltable" width="100%" border="0"> <colgroup> <col> <col> <col> </colgroup> <tbody> <tr> <td class="parameter_name"><p>encCtx</p></td> <td class="parameter_description"><p>the pointer to <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> processing context.</p></td> <td class="parameter_annotations"> </td> </tr> <tr> <td class="parameter_name"><p>output</p></td> <td class="parameter_description"><p>the pointer to output FILE.</p></td> <td class="parameter_annotations"> </td> </tr> </tbody> </table></div> </div> </div> <hr> <div class="refsect2"> <a name="xmlSecEncCtxDebugXmlDump"></a><h3>xmlSecEncCtxDebugXmlDump ()</h3> <pre class="programlisting"><font><span class="returnvalue">void</span></font> xmlSecEncCtxDebugXmlDump (<em class="parameter"><code><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx"><span class="type">xmlSecEncCtxPtr</span></a> encCtx</code></em>, <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre> <p>Prints the debug information about <em class="parameter"><code>encCtx</code></em> to <em class="parameter"><code>output</code></em> in XML format.</p> <div class="refsect3"> <a name="xmlSecEncCtxDebugXmlDump.parameters"></a><h4>Parameters</h4> <div class="informaltable"><table class="informaltable" width="100%" border="0"> <colgroup> <col> <col> <col> </colgroup> <tbody> <tr> <td class="parameter_name"><p>encCtx</p></td> <td class="parameter_description"><p>the pointer to <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> processing context.</p></td> <td class="parameter_annotations"> </td> </tr> <tr> <td class="parameter_name"><p>output</p></td> <td class="parameter_description"><p>the pointer to output FILE.</p></td> <td class="parameter_annotations"> </td> </tr> </tbody> </table></div> </div> </div> <hr> <div class="refsect2"> <a name="xmlSecEncCtxDerivedKeyGenerate"></a><h3>xmlSecEncCtxDerivedKeyGenerate ()</h3> <pre class="programlisting"><a class="link" href="xmlsec-keys.html#xmlSecKey" title="struct xmlSecKey"><span class="returnvalue">xmlSecKeyPtr</span></a> xmlSecEncCtxDerivedKeyGenerate (<em class="parameter"><code><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx"><span class="type">xmlSecEncCtxPtr</span></a> encCtx</code></em>, <em class="parameter"><code><font><span class="type">xmlSecKeyDataId</span></font> keyId</code></em>, <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>, <em class="parameter"><code><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtx" title="struct xmlSecKeyInfoCtx"><span class="type">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code></em>);</pre> <p>Generates (derives) key from <em class="parameter"><code>node</code></em> (https://www.w3.org/TR/xmlenc-core1/<font><span class="type">sec-DerivedKey</span></font>):</p> <pre class="programlisting"> <element name="DerivedKey" type="xenc11:DerivedKeyType"/> <complexType name="DerivedKeyType"> <sequence> <element ref="xenc11:KeyDerivationMethod" minOccurs="0"/> <element ref="xenc:ReferenceList" minOccurs="0"/> <element name="DerivedKeyName" type="string" minOccurs="0"/> <element name="MasterKeyName" type="string" minOccurs="0"/> </sequence> <attribute name="Recipient" type="string" use="optional"/> <attribute name="Id" type="ID" use="optional"/> <attribute name="Type" type="anyURI" use="optional"/> </complexType> <element name="KeyDerivationMethod" type="xenc:KeyDerivationMethodType"/> <complexType name="KeyDerivationMethodType"> <sequence> <any namespace="##any" minOccurs="0" maxOccurs="unbounded"/> </sequence> <attribute name="Algorithm" type="anyURI" use="required"/> </complexType> </pre> <div class="refsect3"> <a name="xmlSecEncCtxDerivedKeyGenerate.parameters"></a><h4>Parameters</h4> <div class="informaltable"><table class="informaltable" width="100%" border="0"> <colgroup> <col> <col> <col> </colgroup> <tbody> <tr> <td class="parameter_name"><p>encCtx</p></td> <td class="parameter_description"><p>the pointer to encryption processing context.</p></td> <td class="parameter_annotations"> </td> </tr> <tr> <td class="parameter_name"><p>keyId</p></td> <td class="parameter_description"><p>the expected key id, the actual derived key might have a different id.</p></td> <td class="parameter_annotations"> </td> </tr> <tr> <td class="parameter_name"><p>node</p></td> <td class="parameter_description"><p>the pointer to <enc11:DerivedKey/> node.</p></td> <td class="parameter_annotations"> </td> </tr> <tr> <td class="parameter_name"><p>keyInfoCtx</p></td> <td class="parameter_description"><p>the pointer to the "parent" key info context.</p></td> <td class="parameter_annotations"> </td> </tr> </tbody> </table></div> </div> <div class="refsect3"> <a name="xmlSecEncCtxDerivedKeyGenerate.returns"></a><h4>Returns</h4> <p> the derived key on success or NULL if an error occurs.</p> </div> </div> <hr> <div class="refsect2"> <a name="xmlSecEncCtxAgreementMethodGenerate"></a><h3>xmlSecEncCtxAgreementMethodGenerate ()</h3> <pre class="programlisting"><a class="link" href="xmlsec-keys.html#xmlSecKey" title="struct xmlSecKey"><span class="returnvalue">xmlSecKeyPtr</span></a> xmlSecEncCtxAgreementMethodGenerate (<em class="parameter"><code><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx"><span class="type">xmlSecEncCtxPtr</span></a> encCtx</code></em>, <em class="parameter"><code><font><span class="type">xmlSecKeyDataId</span></font> keyId</code></em>, <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>, <em class="parameter"><code><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtx" title="struct xmlSecKeyInfoCtx"><span class="type">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code></em>);</pre> <p>Generates (derives) key from <em class="parameter"><code>node</code></em> (https://www.w3.org/TR/xmlenc-core1/<font><span class="type">sec-AgreementMethod</span></font>):</p> <pre class="programlisting"> <element name="AgreementMethod" type="xenc:AgreementMethodType"/> <complexType name="AgreementMethodType" mixed="true"> <sequence> <element name="KA-Nonce" minOccurs="0" type="base64Binary"/> <!-- <element ref="ds:DigestMethod" minOccurs="0"/> --> <any namespace="##other" minOccurs="0" maxOccurs="unbounded"/> <element name="OriginatorKeyInfo" minOccurs="0" type="ds:KeyInfoType"/> <element name="RecipientKeyInfo" minOccurs="0" type="ds:KeyInfoType"/> </sequence> <attribute name="Algorithm" type="anyURI" use="required"/> </complexType> </pre> <div class="refsect3"> <a name="xmlSecEncCtxAgreementMethodGenerate.parameters"></a><h4>Parameters</h4> <div class="informaltable"><table class="informaltable" width="100%" border="0"> <colgroup> <col> <col> <col> </colgroup> <tbody> <tr> <td class="parameter_name"><p>encCtx</p></td> <td class="parameter_description"><p>the pointer to encryption processing context.</p></td> <td class="parameter_annotations"> </td> </tr> <tr> <td class="parameter_name"><p>keyId</p></td> <td class="parameter_description"><p>the expected key id, the actual derived key might have a different id.</p></td> <td class="parameter_annotations"> </td> </tr> <tr> <td class="parameter_name"><p>node</p></td> <td class="parameter_description"><p>the pointer to <a class="ulink" href="" target="_top"><enc:AgreementMethod/></a> node.</p></td> <td class="parameter_annotations"> </td> </tr> <tr> <td class="parameter_name"><p>keyInfoCtx</p></td> <td class="parameter_description"><p>the pointer to the "parent" key info context.</p></td> <td class="parameter_annotations"> </td> </tr> </tbody> </table></div> </div> <div class="refsect3"> <a name="xmlSecEncCtxAgreementMethodGenerate.returns"></a><h4>Returns</h4> <p> the generated key on success or NULL if an error occurs.</p> </div> </div> <hr> <div class="refsect2"> <a name="xmlSecEncCtxAgreementMethodXmlWrite"></a><h3>xmlSecEncCtxAgreementMethodXmlWrite ()</h3> <pre class="programlisting"><font><span class="returnvalue">int</span></font> xmlSecEncCtxAgreementMethodXmlWrite (<em class="parameter"><code><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx"><span class="type">xmlSecEncCtxPtr</span></a> encCtx</code></em>, <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>, <em class="parameter"><code><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtx" title="struct xmlSecKeyInfoCtx"><span class="type">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code></em>);</pre> </div> <hr> <div class="refsect2"> <a name="xmlSecEncCtxGetFailureReasonString"></a><h3>xmlSecEncCtxGetFailureReasonString ()</h3> <pre class="programlisting">const <font><span class="returnvalue">char</span></font> * xmlSecEncCtxGetFailureReasonString (<em class="parameter"><code><a class="link" href="xmlsec-xmlenc.html#xmlSecEncFailureReason" title="enum xmlSecEncFailureReason"><span class="type">xmlSecEncFailureReason</span></a> failureReason</code></em>);</pre> <p>Gets failure reason as a string.</p> <p>Returns failure reason as a string.</p> <div class="refsect3"> <a name="xmlSecEncCtxGetFailureReasonString.parameters"></a><h4>Parameters</h4> <div class="informaltable"><table class="informaltable" width="100%" border="0"> <colgroup> <col> <col> <col> </colgroup> <tbody><tr> <td class="parameter_name"><p>failureReason</p></td> <td class="parameter_description"><p>the failure reason.</p></td> <td class="parameter_annotations"> </td> </tr></tbody> </table></div> </div> </div> </div> <div class="refsect1"> <a name="xmlsec-xmlenc.other_details"></a><h2>Types and Values</h2> <div class="refsect2"> <a name="xmlEncCtxMode"></a><h3>enum xmlEncCtxMode</h3> <p>The <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx"><span class="type">xmlSecEncCtx</span></a> mode.</p> <div class="refsect3"> <a name="xmlEncCtxMode.members"></a><h4>Members</h4> <div class="informaltable"><table class="informaltable" width="100%" border="0"> <colgroup> <col> <col> <col> </colgroup> <tbody> <tr> <td class="enum_member_name"><p><a name="xmlEncCtxModeEncryptedData"></a>xmlEncCtxModeEncryptedData</p></td> <td class="enum_member_description"><p>the <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> element procesing.</p></td> <td class="enum_member_annotations"> </td> </tr> <tr> <td class="enum_member_name"><p><a name="xmlEncCtxModeEncryptedKey"></a>xmlEncCtxModeEncryptedKey</p></td> <td class="enum_member_description"><p>the <a class="ulink" href="" target="_top"><enc:EncryptedKey/></a> element processing.</p></td> <td class="enum_member_annotations"> </td> </tr> </tbody> </table></div> </div> </div> <hr> <div class="refsect2"> <a name="xmlSecEncFailureReason"></a><h3>enum xmlSecEncFailureReason</h3> <p>XML Encryption processing failure reason. The application should use the returned value from the encrypt/decrypt functions first.</p> <div class="refsect3"> <a name="xmlSecEncFailureReason.members"></a><h4>Members</h4> <div class="informaltable"><table class="informaltable" width="100%" border="0"> <colgroup> <col> <col> <col> </colgroup> <tbody> <tr> <td class="enum_member_name"><p><a name="xmlSecEncFailureReasonUnknown"></a>xmlSecEncFailureReasonUnknown</p></td> <td class="enum_member_description"><p>the failure reason is unknown.</p></td> <td class="enum_member_annotations"> </td> </tr> <tr> <td class="enum_member_name"><p><a name="xmlSecEncFailureReasonKeyNotFound"></a>xmlSecEncFailureReasonKeyNotFound</p></td> <td class="enum_member_description"><p>the key not found.</p></td> <td class="enum_member_annotations"> </td> </tr> </tbody> </table></div> </div> </div> <hr> <div class="refsect2"> <a name="XMLSEC-ENC-RETURN-REPLACED-NODE:CAPS"></a><h3>XMLSEC_ENC_RETURN_REPLACED_NODE</h3> <pre class="programlisting">#define XMLSEC_ENC_RETURN_REPLACED_NODE 0x00000001 </pre> <p>If this flag is set, then the replaced node will be returned in the replacedNodeList</p> </div> <hr> <div class="refsect2"> <a name="xmlSecEncCtx"></a><h3>struct xmlSecEncCtx</h3> <pre class="programlisting">struct xmlSecEncCtx { /* these data user can set before performing the operation */ void* userData; unsigned int flags; unsigned int flags2; xmlEncCtxMode mode; xmlSecKeyInfoCtx keyInfoReadCtx; xmlSecKeyInfoCtx keyInfoWriteCtx; xmlSecTransformCtx transformCtx; xmlSecTransformId defEncMethodId; /* these data are returned */ xmlSecKeyPtr encKey; xmlSecTransformOperation operation; xmlSecBufferPtr result; int resultBase64Encoded; int resultReplaced; xmlSecTransformPtr encMethod; xmlSecEncFailureReason failureReason; /* attributes from EncryptedData or EncryptedKey */ xmlChar* id; xmlChar* type; xmlChar* mimeType; xmlChar* encoding; xmlChar* recipient; xmlChar* carriedKeyName; /* these are internal data, nobody should change that except us */ xmlNodePtr encDataNode; xmlNodePtr encMethodNode; xmlNodePtr keyInfoNode; xmlNodePtr cipherValueNode; xmlNodePtr replacedNodeList; /* the pointer to the replaced node */ void* reserved1; /* reserved for future */ }; </pre> <p>XML Encryption context.</p> <div class="refsect3"> <a name="xmlSecEncCtx.members"></a><h4>Members</h4> <div class="informaltable"><table class="informaltable" width="100%" border="0"> <colgroup> <col> <col> <col> </colgroup> <tbody> <tr> <td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecEncCtx.userData"></a>userData</code></em>;</p></td> <td class="struct_member_description"><p>the pointer to user data (xmlsec and xmlsec-crypto libraries never touches this).</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p>unsigned <font><span class="type">int</span></font> <em class="structfield"><code><a name="xmlSecEncCtx.flags"></a>flags</code></em>;</p></td> <td class="struct_member_description"><p>the XML Encryption processing flags.</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p>unsigned <font><span class="type">int</span></font> <em class="structfield"><code><a name="xmlSecEncCtx.flags2"></a>flags2</code></em>;</p></td> <td class="struct_member_description"><p>the XML Encryption processing flags.</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><a class="link" href="xmlsec-xmlenc.html#xmlEncCtxMode" title="enum xmlEncCtxMode"><span class="type">xmlEncCtxMode</span></a> <em class="structfield"><code><a name="xmlSecEncCtx.mode"></a>mode</code></em>;</p></td> <td class="struct_member_description"><p>the mode.</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtx" title="struct xmlSecKeyInfoCtx"><span class="type">xmlSecKeyInfoCtx</span></a> <em class="structfield"><code><a name="xmlSecEncCtx.keyInfoReadCtx"></a>keyInfoReadCtx</code></em>;</p></td> <td class="struct_member_description"><p>the reading key context.</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtx" title="struct xmlSecKeyInfoCtx"><span class="type">xmlSecKeyInfoCtx</span></a> <em class="structfield"><code><a name="xmlSecEncCtx.keyInfoWriteCtx"></a>keyInfoWriteCtx</code></em>;</p></td> <td class="struct_member_description"><p>the writing key context (not used for signature verification).</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtx" title="struct xmlSecTransformCtx"><span class="type">xmlSecTransformCtx</span></a> <em class="structfield"><code><a name="xmlSecEncCtx.transformCtx"></a>transformCtx</code></em>;</p></td> <td class="struct_member_description"><p>the transforms processing context.</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><font><span class="type">xmlSecTransformId</span></font> <em class="structfield"><code><a name="xmlSecEncCtx.defEncMethodId"></a>defEncMethodId</code></em>;</p></td> <td class="struct_member_description"><p>the default encryption method (used if <a class="ulink" href="" target="_top"><enc:EncryptionMethod/></a> node is not present).</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><a class="link" href="xmlsec-keys.html#xmlSecKey" title="struct xmlSecKey"><span class="type">xmlSecKeyPtr</span></a> <em class="structfield"><code><a name="xmlSecEncCtx.encKey"></a>encKey</code></em>;</p></td> <td class="struct_member_description"><p>the signature key; application may set <font><span class="type">encKey</span></font> before calling encryption/decryption functions.</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformOperation" title="enum xmlSecTransformOperation"><span class="type">xmlSecTransformOperation</span></a> <em class="structfield"><code><a name="xmlSecEncCtx.operation"></a>operation</code></em>;</p></td> <td class="struct_member_description"><p>the operation: encrypt or decrypt.</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><a class="link" href="xmlsec-buffer.html#xmlSecBuffer" title="struct xmlSecBuffer"><span class="type">xmlSecBufferPtr</span></a> <em class="structfield"><code><a name="xmlSecEncCtx.result"></a>result</code></em>;</p></td> <td class="struct_member_description"><p>the pointer to signature (not valid for signature verification).</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><font><span class="type">int</span></font> <em class="structfield"><code><a name="xmlSecEncCtx.resultBase64Encoded"></a>resultBase64Encoded</code></em>;</p></td> <td class="struct_member_description"><p>the flag: if set then result in <font><span class="type">result</span></font> is base64 encoded.</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><font><span class="type">int</span></font> <em class="structfield"><code><a name="xmlSecEncCtx.resultReplaced"></a>resultReplaced</code></em>;</p></td> <td class="struct_member_description"><p>the flag: if set then resulted <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> or <a class="ulink" href="" target="_top"><enc:EncryptedKey/></a> node is added to the document.</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransform" title="struct xmlSecTransform"><span class="type">xmlSecTransformPtr</span></a> <em class="structfield"><code><a name="xmlSecEncCtx.encMethod"></a>encMethod</code></em>;</p></td> <td class="struct_member_description"><p>the pointer to encryption transform.</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><a class="link" href="xmlsec-xmlenc.html#xmlSecEncFailureReason" title="enum xmlSecEncFailureReason"><span class="type">xmlSecEncFailureReason</span></a> <em class="structfield"><code><a name="xmlSecEncCtx.failureReason"></a>failureReason</code></em>;</p></td> <td class="struct_member_description"><p>the detailed failure reason.</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecEncCtx.id"></a>id</code></em>;</p></td> <td class="struct_member_description"><p>the ID attribute of <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> or <a class="ulink" href="" target="_top"><enc:EncryptedKey/></a> node.</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecEncCtx.type"></a>type</code></em>;</p></td> <td class="struct_member_description"><p>the Type attribute of <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> or <a class="ulink" href="" target="_top"><enc:EncryptedKey/></a> node.</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecEncCtx.mimeType"></a>mimeType</code></em>;</p></td> <td class="struct_member_description"><p>the MimeType attribute of <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> or <a class="ulink" href="" target="_top"><enc:EncryptedKey/></a> node.</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecEncCtx.encoding"></a>encoding</code></em>;</p></td> <td class="struct_member_description"><p>the Encoding attributeof <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> or <a class="ulink" href="" target="_top"><enc:EncryptedKey/></a> node.</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecEncCtx.recipient"></a>recipient</code></em>;</p></td> <td class="struct_member_description"><p>the Recipient attribute of <a class="ulink" href="" target="_top"><enc:EncryptedKey/></a> node..</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecEncCtx.carriedKeyName"></a>carriedKeyName</code></em>;</p></td> <td class="struct_member_description"><p>the CarriedKeyName attribute of <a class="ulink" href="" target="_top"><enc:EncryptedKey/></a> node.</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><font><span class="type">xmlNodePtr</span></font> <em class="structfield"><code><a name="xmlSecEncCtx.encDataNode"></a>encDataNode</code></em>;</p></td> <td class="struct_member_description"><p>the pointer to <a class="ulink" href="" target="_top"><enc:EncryptedData/></a> or <a class="ulink" href="" target="_top"><enc:EncryptedKey/></a> node.</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><font><span class="type">xmlNodePtr</span></font> <em class="structfield"><code><a name="xmlSecEncCtx.encMethodNode"></a>encMethodNode</code></em>;</p></td> <td class="struct_member_description"><p>the pointer to <a class="ulink" href="" target="_top"><enc:EncryptionMethod/></a> node.</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><font><span class="type">xmlNodePtr</span></font> <em class="structfield"><code><a name="xmlSecEncCtx.keyInfoNode"></a>keyInfoNode</code></em>;</p></td> <td class="struct_member_description"><p>the pointer to <a class="ulink" href="" target="_top"><enc:KeyInfo/></a> node.</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><font><span class="type">xmlNodePtr</span></font> <em class="structfield"><code><a name="xmlSecEncCtx.cipherValueNode"></a>cipherValueNode</code></em>;</p></td> <td class="struct_member_description"><p>the pointer to <a class="ulink" href="" target="_top"><enc:CipherValue/></a> node.</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><font><span class="type">xmlNodePtr</span></font> <em class="structfield"><code><a name="xmlSecEncCtx.replacedNodeList"></a>replacedNodeList</code></em>;</p></td> <td class="struct_member_description"><p>the first node of the list of replaced nodes depending on the nodeReplacementMode</p></td> <td class="struct_member_annotations"> </td> </tr> <tr> <td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecEncCtx.reserved1"></a>reserved1</code></em>;</p></td> <td class="struct_member_description"><p>reserved for the future.</p></td> <td class="struct_member_annotations"> </td> </tr> </tbody> </table></div> </div> </div> </div> </div> <div class="footer"> <hr>Generated by GTK-Doc V1.34.0</div> </td></tr></table></td> </tr></table></body> </html>