diff options
Diffstat (limited to 'docs/api/xmlsec-xmldsig.html')
-rw-r--r-- | docs/api/xmlsec-xmldsig.html | 853 |
1 files changed, 853 insertions, 0 deletions
diff --git a/docs/api/xmlsec-xmldsig.html b/docs/api/xmlsec-xmldsig.html new file mode 100644 index 00000000..af6c63fb --- /dev/null +++ b/docs/api/xmlsec-xmldsig.html @@ -0,0 +1,853 @@ +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> +<title>xmldsig</title> +<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79"> +<link rel="HOME" title="XML Security Library Reference Manual" href="index.html"> +<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html"> +<link rel="PREVIOUS" title="version" href="xmlsec-version.html"> +<link rel="NEXT" title="xmlenc" href="xmlsec-xmlenc.html"> +<style type="text/css">.synopsis, .classsynopsis { + background: #eeeeee; + border: solid 1px #aaaaaa; + padding: 0.5em; +} +.programlisting { + background: #eeeeff; + border: solid 1px #aaaaff; + padding: 0.5em; +} +.variablelist { + padding: 4px; + margin-left: 3em; +} +.navigation { + background: #ffeeee; + border: solid 1px #ffaaaa; + margin-top: 0.5em; + margin-bottom: 0.5em; +} +.navigation a { + color: #770000; +} +.navigation a:visited { + color: #550000; +} +.navigation .title { + font-size: 200%; +}</style> +</head> +<body><table witdh="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> +<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> +<ul><li><a href="http://www.aleksey.com/xmlsec/xmldsig-verifier.html">Online Verifier</a></li></ul> +<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="http://www.aleksey.com/pipermail/xmlsec">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="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent"> +<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"> +<td><a accesskey="p" href="xmlsec-version.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> +<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> +<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> +<th width="100%" align="center">XML Security Library Reference Manual</th> +<td><a accesskey="n" href="xmlsec-xmlenc.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> +</tr></table> +<h1> +<a name="XMLSEC-XMLDSIG"></a>xmldsig</h1> +<div class="REFNAMEDIV"> +<a name="AEN21237"></a><h2>Name</h2>xmldsig -- XML Digital Signature support.</div> +<div class="REFSYNOPSISDIV"> +<a name="XMLSEC-XMLDSIG.SYNOPSIS"></a><h2>Synopsis</h2> +<pre class="SYNOPSIS">enum <a href="xmlsec-xmldsig.html#XMLSECDSIGSTATUS">xmlSecDSigStatus</a>; +#define <a href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-IGNORE-MANIFESTS:CAPS">XMLSEC_DSIG_FLAGS_IGNORE_MANIFESTS</a> +#define <a href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-SIGNEDINFO-REFERENCES:CAPS">XMLSEC_DSIG_FLAGS_STORE_SIGNEDINFO_REFERENCES</a> +#define <a href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-MANIFEST-REFERENCES:CAPS">XMLSEC_DSIG_FLAGS_STORE_MANIFEST_REFERENCES</a> +#define <a href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-SIGNATURE:CAPS">XMLSEC_DSIG_FLAGS_STORE_SIGNATURE</a> +#define <a href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-USE-VISA3D-HACK:CAPS">XMLSEC_DSIG_FLAGS_USE_VISA3D_HACK</a> +struct <a href="xmlsec-xmldsig.html#XMLSECDSIGCTX">xmlSecDSigCtx</a>; +<gtkdoclink href="XMLSECDSIGCTXPTR"><span class="RETURNVALUE">xmlSecDSigCtxPtr</span></gtkdoclink><a href="xmlsec-xmldsig.html#XMLSECDSIGCTXCREATE">xmlSecDSigCtxCreate</a> (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> keysMngr</code>); +<gtkdoclink href="VOID"><span class="RETURNVALUE">void</span></gtkdoclink><a href="xmlsec-xmldsig.html#XMLSECDSIGCTXDESTROY">xmlSecDSigCtxDestroy</a> (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>); +<gtkdoclink href="INT"><span class="RETURNVALUE">int</span></gtkdoclink><a href="xmlsec-xmldsig.html#XMLSECDSIGCTXINITIALIZE">xmlSecDSigCtxInitialize</a> (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>, + <code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> keysMngr</code>); +<gtkdoclink href="VOID"><span class="RETURNVALUE">void</span></gtkdoclink><a href="xmlsec-xmldsig.html#XMLSECDSIGCTXFINALIZE">xmlSecDSigCtxFinalize</a> (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>); +<gtkdoclink href="INT"><span class="RETURNVALUE">int</span></gtkdoclink><a href="xmlsec-xmldsig.html#XMLSECDSIGCTXSIGN">xmlSecDSigCtxSign</a> (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>, + <code class="PARAMETER"><gtkdoclink href="XMLNODE"><span class="TYPE">xmlNodePtr</span></gtkdoclink> tmpl</code>); +<gtkdoclink href="INT"><span class="RETURNVALUE">int</span></gtkdoclink><a href="xmlsec-xmldsig.html#XMLSECDSIGCTXVERIFY">xmlSecDSigCtxVerify</a> (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>, + <code class="PARAMETER"><gtkdoclink href="XMLNODE"><span class="TYPE">xmlNodePtr</span></gtkdoclink> node</code>); +<gtkdoclink href="INT"><span class="RETURNVALUE">int</span></gtkdoclink><a href="xmlsec-xmldsig.html#XMLSECDSIGCTXENABLEREFERENCETRANSFORM">xmlSecDSigCtxEnableReferenceTransform</a> + (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>, + <code class="PARAMETER"><gtkdoclink href="XMLSECTRANSFORMID"><span class="TYPE">xmlSecTransformId</span></gtkdoclink> transformId</code>); +<gtkdoclink href="INT"><span class="RETURNVALUE">int</span></gtkdoclink><a href="xmlsec-xmldsig.html#XMLSECDSIGCTXENABLESIGNATURETRANSFORM">xmlSecDSigCtxEnableSignatureTransform</a> + (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>, + <code class="PARAMETER"><gtkdoclink href="XMLSECTRANSFORMID"><span class="TYPE">xmlSecTransformId</span></gtkdoclink> transformId</code>); +<gtkdoclink href="XMLSECBUFFERPTR"><span class="RETURNVALUE">xmlSecBufferPtr</span></gtkdoclink><a href="xmlsec-xmldsig.html#XMLSECDSIGCTXGETPRESIGNBUFFER">xmlSecDSigCtxGetPreSignBuffer</a> (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>); +<gtkdoclink href="VOID"><span class="RETURNVALUE">void</span></gtkdoclink><a href="xmlsec-xmldsig.html#XMLSECDSIGCTXDEBUGDUMP">xmlSecDSigCtxDebugDump</a> (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>, + <code class="PARAMETER"><gtkdoclink href="FILE:CAPS"><span class="TYPE">FILE</span></gtkdoclink> *output</code>); +<gtkdoclink href="VOID"><span class="RETURNVALUE">void</span></gtkdoclink><a href="xmlsec-xmldsig.html#XMLSECDSIGCTXDEBUGXMLDUMP">xmlSecDSigCtxDebugXmlDump</a> (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>, + <code class="PARAMETER"><gtkdoclink href="FILE:CAPS"><span class="TYPE">FILE</span></gtkdoclink> *output</code>); +enum <a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCEORIGIN">xmlSecDSigReferenceOrigin</a>; +struct <a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX">xmlSecDSigReferenceCtx</a>; +<gtkdoclink href="XMLSECDSIGREFERENCECTXPTR"><span class="RETURNVALUE">xmlSecDSigReferenceCtxPtr</span></gtkdoclink><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXCREATE">xmlSecDSigReferenceCtxCreate</a> (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>, + <code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCEORIGIN"><span class="TYPE">xmlSecDSigReferenceOrigin</span></a> origin</code>); +<gtkdoclink href="VOID"><span class="RETURNVALUE">void</span></gtkdoclink><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXDESTROY">xmlSecDSigReferenceCtxDestroy</a> (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX"><span class="TYPE">xmlSecDSigReferenceCtxPtr</span></a> dsigRefCtx</code>); +<gtkdoclink href="INT"><span class="RETURNVALUE">int</span></gtkdoclink><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXINITIALIZE">xmlSecDSigReferenceCtxInitialize</a> (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX"><span class="TYPE">xmlSecDSigReferenceCtxPtr</span></a> dsigRefCtx</code>, + <code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>, + <code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCEORIGIN"><span class="TYPE">xmlSecDSigReferenceOrigin</span></a> origin</code>); +<gtkdoclink href="VOID"><span class="RETURNVALUE">void</span></gtkdoclink><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXFINALIZE">xmlSecDSigReferenceCtxFinalize</a> (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX"><span class="TYPE">xmlSecDSigReferenceCtxPtr</span></a> dsigRefCtx</code>); +<gtkdoclink href="INT"><span class="RETURNVALUE">int</span></gtkdoclink><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXPROCESSNODE">xmlSecDSigReferenceCtxProcessNode</a> (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX"><span class="TYPE">xmlSecDSigReferenceCtxPtr</span></a> dsigRefCtx</code>, + <code class="PARAMETER"><gtkdoclink href="XMLNODE"><span class="TYPE">xmlNodePtr</span></gtkdoclink> node</code>); +<a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="RETURNVALUE">xmlSecBufferPtr</span></a> <a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXGETPREDIGESTBUFFER">xmlSecDSigReferenceCtxGetPreDigestBuffer</a> + (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX"><span class="TYPE">xmlSecDSigReferenceCtxPtr</span></a> dsigRefCtx</code>); +<gtkdoclink href="VOID"><span class="RETURNVALUE">void</span></gtkdoclink><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXDEBUGDUMP">xmlSecDSigReferenceCtxDebugDump</a> (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX"><span class="TYPE">xmlSecDSigReferenceCtxPtr</span></a> dsigRefCtx</code>, + <code class="PARAMETER"><gtkdoclink href="FILE:CAPS"><span class="TYPE">FILE</span></gtkdoclink> *output</code>); +<gtkdoclink href="VOID"><span class="RETURNVALUE">void</span></gtkdoclink><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXDEBUGXMLDUMP">xmlSecDSigReferenceCtxDebugXmlDump</a> (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX"><span class="TYPE">xmlSecDSigReferenceCtxPtr</span></a> dsigRefCtx</code>, + <code class="PARAMETER"><gtkdoclink href="FILE:CAPS"><span class="TYPE">FILE</span></gtkdoclink> *output</code>); +#define <a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXLISTID">xmlSecDSigReferenceCtxListId</a> +<gtkdoclink href="XMLSECPTRLISTID"><span class="RETURNVALUE">xmlSecPtrListId</span></gtkdoclink><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXLISTGETKLASS">xmlSecDSigReferenceCtxListGetKlass</a> (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre> +</div> +<div class="REFSECT1"> +<a name="XMLSEC-XMLDSIG.DESCRIPTION"></a><h2>Description</h2> +<p>XML Digital Signature support.</p> +</div> +<div class="REFSECT1"> +<a name="XMLSEC-XMLDSIG.DETAILS"></a><h2>Details</h2> +<div class="REFSECT2"> +<a name="XMLSECDSIGSTATUS"></a><h3>enum xmlSecDSigStatus</h3> +<pre class="PROGRAMLISTING">typedef enum { + xmlSecDSigStatusUnknown = 0, + xmlSecDSigStatusSucceeded, + xmlSecDSigStatusInvalid +} xmlSecDSigStatus;</pre> +<p>XML Digital signature processing status.</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody> +<tr> +<td align="LEFT" valign="TOP"><a name="XMLSECDSIGSTATUSUNKNOWN"><span style="white-space: nowrap"><tt class="LITERAL">xmlSecDSigStatusUnknown</tt></span></a></td> +<td align="LEFT" valign="TOP"><p>the status is unknow.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="XMLSECDSIGSTATUSSUCCEEDED"><span style="white-space: nowrap"><tt class="LITERAL">xmlSecDSigStatusSucceeded</tt></span></a></td> +<td align="LEFT" valign="TOP"><p>the processing succeeded.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="XMLSECDSIGSTATUSINVALID"><span style="white-space: nowrap"><tt class="LITERAL">xmlSecDSigStatusInvalid</tt></span></a></td> +<td align="LEFT" valign="TOP"><p>the processing failed.</p></td> +</tr> +</tbody></table> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSEC-DSIG-FLAGS-IGNORE-MANIFESTS:CAPS"></a><h3>XMLSEC_DSIG_FLAGS_IGNORE_MANIFESTS</h3> +<pre class="PROGRAMLISTING">#define XMLSEC_DSIG_FLAGS_IGNORE_MANIFESTS 0x00000001</pre> +<p>If this flag is set then <a href="http://www.w3.org/TR/xmldsig-core/#sec-Manifests" target="_top"><dsig:Manifests/></a> nodes will not be processed.</p> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSEC-DSIG-FLAGS-STORE-SIGNEDINFO-REFERENCES:CAPS"></a><h3>XMLSEC_DSIG_FLAGS_STORE_SIGNEDINFO_REFERENCES</h3> +<pre class="PROGRAMLISTING">#define XMLSEC_DSIG_FLAGS_STORE_SIGNEDINFO_REFERENCES 0x00000002</pre> +<p>If this flag is set then pre-digest buffer for <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> child +of <a href="http://www.w3.org/TR/xmldsig-core/#sec-KeyInfo" target="_top"><dsig:KeyInfo/></a> element will be stored in <a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtx</span></a>.</p> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSEC-DSIG-FLAGS-STORE-MANIFEST-REFERENCES:CAPS"></a><h3>XMLSEC_DSIG_FLAGS_STORE_MANIFEST_REFERENCES</h3> +<pre class="PROGRAMLISTING">#define XMLSEC_DSIG_FLAGS_STORE_MANIFEST_REFERENCES 0x00000004</pre> +<p>If this flag is set then pre-digest buffer for <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> child +of <a href="http://www.w3.org/TR/xmldsig-core/#sec-Manifest" target="_top"><dsig:Manifest/></a> element will be stored in <a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtx</span></a>.</p> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSEC-DSIG-FLAGS-STORE-SIGNATURE:CAPS"></a><h3>XMLSEC_DSIG_FLAGS_STORE_SIGNATURE</h3> +<pre class="PROGRAMLISTING">#define XMLSEC_DSIG_FLAGS_STORE_SIGNATURE 0x00000008</pre> +<p>If this flag is set then pre-signature buffer for <a href="http://www.w3.org/TR/xmldsig-core/#sec-SignedInfo" target="_top"><dsig:SignedInfo/></a> +element processing will be stored in <a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtx</span></a>.</p> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSEC-DSIG-FLAGS-USE-VISA3D-HACK:CAPS"></a><h3>XMLSEC_DSIG_FLAGS_USE_VISA3D_HACK</h3> +<pre class="PROGRAMLISTING">#define XMLSEC_DSIG_FLAGS_USE_VISA3D_HACK 0x00000010</pre> +<p>If this flag is set then URI ID references are resolved directly +without using XPointers. This allows one to sign/verify Visa3D +documents that don't follow XML, XPointer and XML DSig specifications.</p> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGCTX"></a><h3>struct xmlSecDSigCtx</h3> +<pre class="PROGRAMLISTING">struct xmlSecDSigCtx { + /* these data user can set before performing the operation */ + void* userData; + unsigned int flags; + unsigned int flags2; + xmlSecKeyInfoCtx keyInfoReadCtx; + xmlSecKeyInfoCtx keyInfoWriteCtx; + xmlSecTransformCtx transformCtx; + xmlSecTransformUriType enabledReferenceUris; + xmlSecPtrListPtr enabledReferenceTransforms; + xmlSecTransformCtxPreExecuteCallback referencePreExecuteCallback; + xmlSecTransformId defSignMethodId; + xmlSecTransformId defC14NMethodId; + xmlSecTransformId defDigestMethodId; + + /* these data are returned */ + xmlSecKeyPtr signKey; + xmlSecTransformOperation operation; + xmlSecBufferPtr result; + xmlSecDSigStatus status; + xmlSecTransformPtr signMethod; + xmlSecTransformPtr c14nMethod; + xmlSecTransformPtr preSignMemBufMethod; + xmlNodePtr signValueNode; + xmlChar* id; + xmlSecPtrList signedInfoReferences; + xmlSecPtrList manifestReferences; + + /* reserved for future */ + void* reserved0; + void* reserved1; +};</pre> +<p>XML DSig processing context.</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21487"><span style="white-space: nowrap"><gtkdoclink href="VOID"><span class="TYPE">void</span></gtkdoclink> *<code class="STRUCTFIELD">userData</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to user data (xmlsec and xmlsec-crypto libraries + never touches this).</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21494"><span style="white-space: nowrap">unsigned <gtkdoclink href="INT"><span class="TYPE">int</span></gtkdoclink> <code class="STRUCTFIELD">flags</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the XML Digital Signature processing flags.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21501"><span style="white-space: nowrap">unsigned <gtkdoclink href="INT"><span class="TYPE">int</span></gtkdoclink> <code class="STRUCTFIELD">flags2</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the XML Digital Signature processing flags.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21508"><span style="white-space: nowrap"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtx</span></a> <code class="STRUCTFIELD">keyInfoReadCtx</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the reading key context.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21515"><span style="white-space: nowrap"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtx</span></a> <code class="STRUCTFIELD">keyInfoWriteCtx</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the writing key context (not used for signature verification).</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21522"><span style="white-space: nowrap"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtx</span></a> <code class="STRUCTFIELD">transformCtx</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the <a href="http://www.w3.org/TR/xmldsig-core/#sec-SignedInfo" target="_top"><dsig:SignedInfo/></a> node processing context.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21530"><span style="white-space: nowrap"><a href="xmlsec-transforms.html#XMLSECTRANSFORMURITYPE"><span class="TYPE">xmlSecTransformUriType</span></a> <code class="STRUCTFIELD">enabledReferenceUris</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the URI types allowed for <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> node.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21538"><span style="white-space: nowrap"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> <code class="STRUCTFIELD">enabledReferenceTransforms</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the list of transforms allowed in <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> node.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21546"><span style="white-space: nowrap"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXPREEXECUTECALLBACK"><span class="TYPE">xmlSecTransformCtxPreExecuteCallback</span></a> <code class="STRUCTFIELD">referencePreExecuteCallback</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the callback for <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> node processing.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21554"><span style="white-space: nowrap"><gtkdoclink href="XMLSECTRANSFORMID"><span class="TYPE">xmlSecTransformId</span></gtkdoclink> <code class="STRUCTFIELD">defSignMethodId</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the default signing method klass.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21561"><span style="white-space: nowrap"><gtkdoclink href="XMLSECTRANSFORMID"><span class="TYPE">xmlSecTransformId</span></gtkdoclink> <code class="STRUCTFIELD">defC14NMethodId</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the default c14n method klass.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21568"><span style="white-space: nowrap"><gtkdoclink href="XMLSECTRANSFORMID"><span class="TYPE">xmlSecTransformId</span></gtkdoclink> <code class="STRUCTFIELD">defDigestMethodId</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the default digest method klass.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21575"><span style="white-space: nowrap"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> <code class="STRUCTFIELD">signKey</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the signature key; application may set <gtkdoclink href="SIGNKEY"><span class="TYPE">signKey</span></gtkdoclink> + before calling <a href="xmlsec-xmldsig.html#XMLSECDSIGCTXSIGN"><span class="TYPE">xmlSecDSigCtxSign</span></a> or <a href="xmlsec-xmldsig.html#XMLSECDSIGCTXVERIFY"><span class="TYPE">xmlSecDSigCtxVerify</span></a> + functions.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21588"><span style="white-space: nowrap"><a href="xmlsec-transforms.html#XMLSECTRANSFORMOPERATION"><span class="TYPE">xmlSecTransformOperation</span></a> <code class="STRUCTFIELD">operation</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the operation: sign or verify.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21595"><span style="white-space: nowrap"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> <code class="STRUCTFIELD">result</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to signature (not valid for signature verificaction).</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21602"><span style="white-space: nowrap"><a href="xmlsec-xmldsig.html#XMLSECDSIGSTATUS"><span class="TYPE">xmlSecDSigStatus</span></a> <code class="STRUCTFIELD">status</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the <a href="http://www.w3.org/TR/xmldsig-core/#sec-Signatuire" target="_top"><dsig:Signatuire/></a> procesisng status.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21610"><span style="white-space: nowrap"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> <code class="STRUCTFIELD">signMethod</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to signature transform.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21617"><span style="white-space: nowrap"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> <code class="STRUCTFIELD">c14nMethod</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to c14n transform.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21624"><span style="white-space: nowrap"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> <code class="STRUCTFIELD">preSignMemBufMethod</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to binary buffer right before signature + (valid only if <a href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-SIGNATURE:CAPS"><span class="TYPE">XMLSEC_DSIG_FLAGS_STORE_SIGNATURE</span></a> flag is set).</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21633"><span style="white-space: nowrap"><gtkdoclink href="XMLNODE"><span class="TYPE">xmlNodePtr</span></gtkdoclink> <code class="STRUCTFIELD">signValueNode</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to <a href="http://www.w3.org/TR/xmldsig-core/#sec-SignatureValue" target="_top"><dsig:SignatureValue/></a> node.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21641"><span style="white-space: nowrap"><gtkdoclink href="XMLCHAR"><span class="TYPE">xmlChar</span></gtkdoclink> *<code class="STRUCTFIELD">id</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to Id attribute of <a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a> node.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21649"><span style="white-space: nowrap"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrList</span></a> <code class="STRUCTFIELD">signedInfoReferences</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the list of references in <a href="http://www.w3.org/TR/xmldsig-core/#sec-SignedInfo" target="_top"><dsig:SignedInfo/></a> node.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21657"><span style="white-space: nowrap"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrList</span></a> <code class="STRUCTFIELD">manifestReferences</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the list of references in <a href="http://www.w3.org/TR/xmldsig-core/#sec-Manifest" target="_top"><dsig:Manifest/></a> nodes.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21665"><span style="white-space: nowrap"><gtkdoclink href="VOID"><span class="TYPE">void</span></gtkdoclink> *<code class="STRUCTFIELD">reserved0</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>reserved for the future.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21672"><span style="white-space: nowrap"><gtkdoclink href="VOID"><span class="TYPE">void</span></gtkdoclink> *<code class="STRUCTFIELD">reserved1</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>reserved for the future.</p></td> +</tr> +</tbody></table> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGCTXCREATE"></a><h3>xmlSecDSigCtxCreate ()</h3> +<pre class="PROGRAMLISTING"><gtkdoclink href="XMLSECDSIGCTXPTR"><span class="RETURNVALUE">xmlSecDSigCtxPtr</span></gtkdoclink> xmlSecDSigCtxCreate (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> keysMngr</code>);</pre> +<p>Creates <a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a> element processing context. +The caller is responsible for destroying returned object by calling +<a href="xmlsec-xmldsig.html#XMLSECDSIGCTXDESTROY"><span class="TYPE">xmlSecDSigCtxDestroy</span></a> function.</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21694"><span style="white-space: nowrap"><code class="PARAMETER">keysMngr</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to keys manager.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21699"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td> +<td align="LEFT" valign="TOP"><p> pointer to newly allocated context object or NULL if an error +occurs.</p></td> +</tr> +</tbody></table> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGCTXDESTROY"></a><h3>xmlSecDSigCtxDestroy ()</h3> +<pre class="PROGRAMLISTING"><gtkdoclink href="VOID"><span class="RETURNVALUE">void</span></gtkdoclink> xmlSecDSigCtxDestroy (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>);</pre> +<p>Destroy context object created with <a href="xmlsec-xmldsig.html#XMLSECDSIGCTXCREATE"><span class="TYPE">xmlSecDSigCtxCreate</span></a> function.</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody><tr> +<td align="LEFT" valign="TOP"><a name="AEN21718"><span style="white-space: nowrap"><code class="PARAMETER">dsigCtx</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to <a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a> processing context.</p></td> +</tr></tbody></table> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGCTXINITIALIZE"></a><h3>xmlSecDSigCtxInitialize ()</h3> +<pre class="PROGRAMLISTING"><gtkdoclink href="INT"><span class="RETURNVALUE">int</span></gtkdoclink> xmlSecDSigCtxInitialize (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>, + <code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> keysMngr</code>);</pre> +<p>Initializes <a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a> element processing context. +The caller is responsible for cleaning up returned object by calling +<a href="xmlsec-xmldsig.html#XMLSECDSIGCTXFINALIZE"><span class="TYPE">xmlSecDSigCtxFinalize</span></a> function.</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21742"><span style="white-space: nowrap"><code class="PARAMETER">dsigCtx</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to <a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a> processing context.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21748"><span style="white-space: nowrap"><code class="PARAMETER">keysMngr</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to keys manager.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21753"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td> +<td align="LEFT" valign="TOP"><p> 0 on success or a negative value if an error occurs.</p></td> +</tr> +</tbody></table> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGCTXFINALIZE"></a><h3>xmlSecDSigCtxFinalize ()</h3> +<pre class="PROGRAMLISTING"><gtkdoclink href="VOID"><span class="RETURNVALUE">void</span></gtkdoclink> xmlSecDSigCtxFinalize (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>);</pre> +<p>Cleans up <code class="PARAMETER">dsigCtx</code> object initialized with <a href="xmlsec-xmldsig.html#XMLSECDSIGCTXINITIALIZE"><span class="TYPE">xmlSecDSigCtxInitialize</span></a> function.</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody><tr> +<td align="LEFT" valign="TOP"><a name="AEN21773"><span style="white-space: nowrap"><code class="PARAMETER">dsigCtx</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to <a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a> processing context.</p></td> +</tr></tbody></table> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGCTXSIGN"></a><h3>xmlSecDSigCtxSign ()</h3> +<pre class="PROGRAMLISTING"><gtkdoclink href="INT"><span class="RETURNVALUE">int</span></gtkdoclink> xmlSecDSigCtxSign (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>, + <code class="PARAMETER"><gtkdoclink href="XMLNODE"><span class="TYPE">xmlNodePtr</span></gtkdoclink> tmpl</code>);</pre> +<p>Signs the data as described in <code class="PARAMETER">tmpl</code> node.</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21795"><span style="white-space: nowrap"><code class="PARAMETER">dsigCtx</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to <a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a> processing context.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21801"><span style="white-space: nowrap"><code class="PARAMETER">tmpl</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to <a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a> node with signature template.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21807"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td> +<td align="LEFT" valign="TOP"><p> 0 on success or a negative value if an error occurs.</p></td> +</tr> +</tbody></table> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGCTXVERIFY"></a><h3>xmlSecDSigCtxVerify ()</h3> +<pre class="PROGRAMLISTING"><gtkdoclink href="INT"><span class="RETURNVALUE">int</span></gtkdoclink> xmlSecDSigCtxVerify (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>, + <code class="PARAMETER"><gtkdoclink href="XMLNODE"><span class="TYPE">xmlNodePtr</span></gtkdoclink> node</code>);</pre> +<p>Vaidates signature in the <code class="PARAMETER">node</code>. The verification result is returned +in <gtkdoclink href="STATUS"><span class="TYPE">status</span></gtkdoclink> member of the <code class="PARAMETER">dsigCtx</code> object.</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21831"><span style="white-space: nowrap"><code class="PARAMETER">dsigCtx</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to <a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a> processing context.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21837"><span style="white-space: nowrap"><code class="PARAMETER">node</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer with <a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a> node.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21843"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td> +<td align="LEFT" valign="TOP"><p> 0 on success (check <gtkdoclink href="STATUS"><span class="TYPE">status</span></gtkdoclink> member of <code class="PARAMETER">dsigCtx</code> to get +signature verification result) or a negative value if an error occurs.</p></td> +</tr> +</tbody></table> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGCTXENABLEREFERENCETRANSFORM"></a><h3>xmlSecDSigCtxEnableReferenceTransform ()</h3> +<pre class="PROGRAMLISTING"><gtkdoclink href="INT"><span class="RETURNVALUE">int</span></gtkdoclink> xmlSecDSigCtxEnableReferenceTransform + (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>, + <code class="PARAMETER"><gtkdoclink href="XMLSECTRANSFORMID"><span class="TYPE">xmlSecTransformId</span></gtkdoclink> transformId</code>);</pre> +<p>Enables <code class="PARAMETER">transformId</code> for <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> elements processing.</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21868"><span style="white-space: nowrap"><code class="PARAMETER">dsigCtx</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to <a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a> processing context.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21874"><span style="white-space: nowrap"><code class="PARAMETER">transformId</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the transform klass.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21879"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td> +<td align="LEFT" valign="TOP"><p> 0 on success or a negative value if an error occurs.</p></td> +</tr> +</tbody></table> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGCTXENABLESIGNATURETRANSFORM"></a><h3>xmlSecDSigCtxEnableSignatureTransform ()</h3> +<pre class="PROGRAMLISTING"><gtkdoclink href="INT"><span class="RETURNVALUE">int</span></gtkdoclink> xmlSecDSigCtxEnableSignatureTransform + (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>, + <code class="PARAMETER"><gtkdoclink href="XMLSECTRANSFORMID"><span class="TYPE">xmlSecTransformId</span></gtkdoclink> transformId</code>);</pre> +<p>Enables <code class="PARAMETER">transformId</code> for <a href="http://www.w3.org/TR/xmldsig-core/#sec-SignedInfo" target="_top"><dsig:SignedInfo/></a> element processing.</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21901"><span style="white-space: nowrap"><code class="PARAMETER">dsigCtx</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to <a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a> processing context.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21907"><span style="white-space: nowrap"><code class="PARAMETER">transformId</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the transform klass.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21912"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td> +<td align="LEFT" valign="TOP"><p> 0 on success or a negative value if an error occurs.</p></td> +</tr> +</tbody></table> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGCTXGETPRESIGNBUFFER"></a><h3>xmlSecDSigCtxGetPreSignBuffer ()</h3> +<pre class="PROGRAMLISTING"><gtkdoclink href="XMLSECBUFFERPTR"><span class="RETURNVALUE">xmlSecBufferPtr</span></gtkdoclink> xmlSecDSigCtxGetPreSignBuffer (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>);</pre> +<p>Gets pointer to the buffer with serialized <a href="http://www.w3.org/TR/xmldsig-core/#sec-SignedInfo" target="_top"><dsig:SignedInfo/></a> element +just before signature claculation (valid if and only if +<a href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-SIGNATURE:CAPS"><span class="TYPE">XMLSEC_DSIG_FLAGS_STORE_SIGNATURE</span></a> context flag is set.</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21932"><span style="white-space: nowrap"><code class="PARAMETER">dsigCtx</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to <a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a> processing context.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21938"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td> +<td align="LEFT" valign="TOP"><p> 0 on success or a negative value if an error occurs.</p></td> +</tr> +</tbody></table> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGCTXDEBUGDUMP"></a><h3>xmlSecDSigCtxDebugDump ()</h3> +<pre class="PROGRAMLISTING"><gtkdoclink href="VOID"><span class="RETURNVALUE">void</span></gtkdoclink> xmlSecDSigCtxDebugDump (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>, + <code class="PARAMETER"><gtkdoclink href="FILE:CAPS"><span class="TYPE">FILE</span></gtkdoclink> *output</code>);</pre> +<p>Prints the debug information about <code class="PARAMETER">dsigCtx</code> to <code class="PARAMETER">output</code>.</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21960"><span style="white-space: nowrap"><code class="PARAMETER">dsigCtx</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to <a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a> processing context.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21966"><span style="white-space: nowrap"><code class="PARAMETER">output</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to output FILE.</p></td> +</tr> +</tbody></table> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGCTXDEBUGXMLDUMP"></a><h3>xmlSecDSigCtxDebugXmlDump ()</h3> +<pre class="PROGRAMLISTING"><gtkdoclink href="VOID"><span class="RETURNVALUE">void</span></gtkdoclink> xmlSecDSigCtxDebugXmlDump (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>, + <code class="PARAMETER"><gtkdoclink href="FILE:CAPS"><span class="TYPE">FILE</span></gtkdoclink> *output</code>);</pre> +<p>Prints the debug information about <code class="PARAMETER">dsigCtx</code> to <code class="PARAMETER">output</code> in XML format.</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21988"><span style="white-space: nowrap"><code class="PARAMETER">dsigCtx</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to <a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a> processing context.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN21994"><span style="white-space: nowrap"><code class="PARAMETER">output</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to output FILE.</p></td> +</tr> +</tbody></table> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGREFERENCEORIGIN"></a><h3>enum xmlSecDSigReferenceOrigin</h3> +<pre class="PROGRAMLISTING">typedef enum { + xmlSecDSigReferenceOriginSignedInfo, + xmlSecDSigReferenceOriginManifest +} xmlSecDSigReferenceOrigin;</pre> +<p>The possible <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> node locations: in the <a href="http://www.w3.org/TR/xmldsig-core/#sec-SignedInfo" target="_top"><dsig:SignedInfo/></a> +node or in the <a href="http://www.w3.org/TR/xmldsig-core/#sec-Manifest" target="_top"><dsig:Manifest/></a> node.</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody> +<tr> +<td align="LEFT" valign="TOP"><a name="XMLSECDSIGREFERENCEORIGINSIGNEDINFO"><span style="white-space: nowrap"><tt class="LITERAL">xmlSecDSigReferenceOriginSignedInfo</tt></span></a></td> +<td align="LEFT" valign="TOP"><p>reference in <dsig:SignedInfo> node.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="XMLSECDSIGREFERENCEORIGINMANIFEST"><span style="white-space: nowrap"><tt class="LITERAL">xmlSecDSigReferenceOriginManifest</tt></span></a></td> +<td align="LEFT" valign="TOP"><p>reference <dsig:Manifest> node.</p></td> +</tr> +</tbody></table> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGREFERENCECTX"></a><h3>struct xmlSecDSigReferenceCtx</h3> +<pre class="PROGRAMLISTING">struct xmlSecDSigReferenceCtx { + void* userData; + xmlSecDSigCtxPtr dsigCtx; + xmlSecDSigReferenceOrigin origin; + xmlSecTransformCtx transformCtx; + xmlSecTransformPtr digestMethod; + + xmlSecBufferPtr result; + xmlSecDSigStatus status; + xmlSecTransformPtr preDigestMemBufMethod; + xmlChar* id; + xmlChar* uri; + xmlChar* type; + + /* reserved for future */ + void* reserved0; + void* reserved1; +};</pre> +<p>The <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> processing context.</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22027"><span style="white-space: nowrap"><gtkdoclink href="VOID"><span class="TYPE">void</span></gtkdoclink> *<code class="STRUCTFIELD">userData</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to user data (xmlsec and xmlsec-crypto libraries + never touches this).</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22034"><span style="white-space: nowrap"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> <code class="STRUCTFIELD">dsigCtx</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to "parent" <a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a> processing context.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22042"><span style="white-space: nowrap"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCEORIGIN"><span class="TYPE">xmlSecDSigReferenceOrigin</span></a> <code class="STRUCTFIELD">origin</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the signature origin (<a href="http://www.w3.org/TR/xmldsig-core/#sec-SignedInfo" target="_top"><dsig:SignedInfo/></a> or <a href="http://www.w3.org/TR/xmldsig-core/#sec-Manifest" target="_top"><dsig:Manifest/></a>).</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22051"><span style="white-space: nowrap"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtx</span></a> <code class="STRUCTFIELD">transformCtx</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the reference processing transforms context.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22058"><span style="white-space: nowrap"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> <code class="STRUCTFIELD">digestMethod</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to digest transform.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22065"><span style="white-space: nowrap"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> <code class="STRUCTFIELD">result</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to digest result.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22072"><span style="white-space: nowrap"><a href="xmlsec-xmldsig.html#XMLSECDSIGSTATUS"><span class="TYPE">xmlSecDSigStatus</span></a> <code class="STRUCTFIELD">status</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the reference processing status.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22079"><span style="white-space: nowrap"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> <code class="STRUCTFIELD">preDigestMemBufMethod</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to binary buffer right before digest + (valid only if either + <a href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-SIGNEDINFO-REFERENCES:CAPS"><span class="TYPE">XMLSEC_DSIG_FLAGS_STORE_SIGNEDINFO_REFERENCES</span></a> or + <a href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-MANIFEST-REFERENCES:CAPS"><span class="TYPE">XMLSEC_DSIG_FLAGS_STORE_MANIFEST_REFERENCES</span></a> flags are set).</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22090"><span style="white-space: nowrap"><gtkdoclink href="XMLCHAR"><span class="TYPE">xmlChar</span></gtkdoclink> *<code class="STRUCTFIELD">id</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> node ID attribute.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22098"><span style="white-space: nowrap"><gtkdoclink href="XMLCHAR"><span class="TYPE">xmlChar</span></gtkdoclink> *<code class="STRUCTFIELD">uri</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> node URI attribute.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22106"><span style="white-space: nowrap"><gtkdoclink href="XMLCHAR"><span class="TYPE">xmlChar</span></gtkdoclink> *<code class="STRUCTFIELD">type</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>the <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> node Type attribute.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22114"><span style="white-space: nowrap"><gtkdoclink href="VOID"><span class="TYPE">void</span></gtkdoclink> *<code class="STRUCTFIELD">reserved0</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>reserved for the future.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22121"><span style="white-space: nowrap"><gtkdoclink href="VOID"><span class="TYPE">void</span></gtkdoclink> *<code class="STRUCTFIELD">reserved1</code>;</span></a></td> +<td align="LEFT" valign="TOP"><p>reserved for the future.</p></td> +</tr> +</tbody></table> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGREFERENCECTXCREATE"></a><h3>xmlSecDSigReferenceCtxCreate ()</h3> +<pre class="PROGRAMLISTING"><gtkdoclink href="XMLSECDSIGREFERENCECTXPTR"><span class="RETURNVALUE">xmlSecDSigReferenceCtxPtr</span></gtkdoclink> xmlSecDSigReferenceCtxCreate (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>, + <code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCEORIGIN"><span class="TYPE">xmlSecDSigReferenceOrigin</span></a> origin</code>);</pre> +<p>Creates new <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> element processing context. Caller is responsible +for destroying the returned context by calling <a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXDESTROY"><span class="TYPE">xmlSecDSigReferenceCtxDestroy</span></a> +function.</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22146"><span style="white-space: nowrap"><code class="PARAMETER">dsigCtx</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to parent <a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a> node processing context.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22152"><span style="white-space: nowrap"><code class="PARAMETER">origin</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the reference origin (<a href="http://www.w3.org/TR/xmldsig-core/#sec-SignedInfo" target="_top"><dsig:SignedInfo/></a> or <a href="http://www.w3.org/TR/xmldsig-core/#sec-Manifest" target="_top"><dsig:Manifest/></a> node).</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22159"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td> +<td align="LEFT" valign="TOP"><p> pointer to newly created context or NULL if an error occurs.</p></td> +</tr> +</tbody></table> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGREFERENCECTXDESTROY"></a><h3>xmlSecDSigReferenceCtxDestroy ()</h3> +<pre class="PROGRAMLISTING"><gtkdoclink href="VOID"><span class="RETURNVALUE">void</span></gtkdoclink> xmlSecDSigReferenceCtxDestroy (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX"><span class="TYPE">xmlSecDSigReferenceCtxPtr</span></a> dsigRefCtx</code>);</pre> +<p>Destroy context object created with <a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXCREATE"><span class="TYPE">xmlSecDSigReferenceCtxCreate</span></a> function.</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody><tr> +<td align="LEFT" valign="TOP"><a name="AEN22178"><span style="white-space: nowrap"><code class="PARAMETER">dsigRefCtx</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> element processing context.</p></td> +</tr></tbody></table> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGREFERENCECTXINITIALIZE"></a><h3>xmlSecDSigReferenceCtxInitialize ()</h3> +<pre class="PROGRAMLISTING"><gtkdoclink href="INT"><span class="RETURNVALUE">int</span></gtkdoclink> xmlSecDSigReferenceCtxInitialize (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX"><span class="TYPE">xmlSecDSigReferenceCtxPtr</span></a> dsigRefCtx</code>, + <code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>, + <code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCEORIGIN"><span class="TYPE">xmlSecDSigReferenceOrigin</span></a> origin</code>);</pre> +<p>Initializes new <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> element processing context. Caller is responsible +for cleaning up the returned context by calling <a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXFINALIZE"><span class="TYPE">xmlSecDSigReferenceCtxFinalize</span></a> +function.</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22205"><span style="white-space: nowrap"><code class="PARAMETER">dsigRefCtx</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> element processing context.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22211"><span style="white-space: nowrap"><code class="PARAMETER">dsigCtx</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to parent <a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a> node processing context.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22217"><span style="white-space: nowrap"><code class="PARAMETER">origin</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the reference origin (<a href="http://www.w3.org/TR/xmldsig-core/#sec-SignedInfo" target="_top"><dsig:SignedInfo/></a> or <a href="http://www.w3.org/TR/xmldsig-core/#sec-Manifest" target="_top"><dsig:Manifest/></a> node).</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22224"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td> +<td align="LEFT" valign="TOP"><p> 0 on succes or aa negative value otherwise.</p></td> +</tr> +</tbody></table> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGREFERENCECTXFINALIZE"></a><h3>xmlSecDSigReferenceCtxFinalize ()</h3> +<pre class="PROGRAMLISTING"><gtkdoclink href="VOID"><span class="RETURNVALUE">void</span></gtkdoclink> xmlSecDSigReferenceCtxFinalize (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX"><span class="TYPE">xmlSecDSigReferenceCtxPtr</span></a> dsigRefCtx</code>);</pre> +<p>Cleans up context object created with <a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXINITIALIZE"><span class="TYPE">xmlSecDSigReferenceCtxInitialize</span></a> function.</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody><tr> +<td align="LEFT" valign="TOP"><a name="AEN22243"><span style="white-space: nowrap"><code class="PARAMETER">dsigRefCtx</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> element processing context.</p></td> +</tr></tbody></table> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGREFERENCECTXPROCESSNODE"></a><h3>xmlSecDSigReferenceCtxProcessNode ()</h3> +<pre class="PROGRAMLISTING"><gtkdoclink href="INT"><span class="RETURNVALUE">int</span></gtkdoclink> xmlSecDSigReferenceCtxProcessNode (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX"><span class="TYPE">xmlSecDSigReferenceCtxPtr</span></a> dsigRefCtx</code>, + <code class="PARAMETER"><gtkdoclink href="XMLNODE"><span class="TYPE">xmlNodePtr</span></gtkdoclink> node</code>);</pre> +<p>The Reference Element (http://www.w3.org/TR/xmldsig-core/<gtkdoclink href="SEC-REFERENCE"><span class="TYPE">sec-Reference</span></gtkdoclink>)</p> +<p>Reference is an element that may occur one or more times. It specifies +a digest algorithm and digest value, and optionally an identifier of the +object being signed, the type of the object, and/or a list of transforms +to be applied prior to digesting. The identification (URI) and transforms +describe how the digested content (i.e., the input to the digest method) +was created. The Type attribute facilitates the processing of referenced +data. For example, while this specification makes no requirements over +external data, an application may wish to signal that the referent is a +Manifest. An optional ID attribute permits a Reference to be referenced +from elsewhere.</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22267"><span style="white-space: nowrap"><code class="PARAMETER">dsigRefCtx</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> element processing context.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22273"><span style="white-space: nowrap"><code class="PARAMETER">node</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> node.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22279"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td> +<td align="LEFT" valign="TOP"><p> 0 on succes or aa negative value otherwise.</p></td> +</tr> +</tbody></table> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGREFERENCECTXGETPREDIGESTBUFFER"></a><h3>xmlSecDSigReferenceCtxGetPreDigestBuffer ()</h3> +<pre class="PROGRAMLISTING"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="RETURNVALUE">xmlSecBufferPtr</span></a> xmlSecDSigReferenceCtxGetPreDigestBuffer + (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX"><span class="TYPE">xmlSecDSigReferenceCtxPtr</span></a> dsigRefCtx</code>);</pre> +<p>Gets the results of <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> node processing just before digesting +(valid only if <a href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-SIGNEDINFO-REFERENCES:CAPS"><span class="TYPE">XMLSEC_DSIG_FLAGS_STORE_SIGNEDINFO_REFERENCES</span></a> or +<a href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-MANIFEST-REFERENCES:CAPS"><span class="TYPE">XMLSEC_DSIG_FLAGS_STORE_MANIFEST_REFERENCES</span></a> flas of signature context +is set).</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22301"><span style="white-space: nowrap"><code class="PARAMETER">dsigRefCtx</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> element processing context.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22307"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td> +<td align="LEFT" valign="TOP"><p> pointer to the buffer or NULL if an error occurs.</p></td> +</tr> +</tbody></table> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGREFERENCECTXDEBUGDUMP"></a><h3>xmlSecDSigReferenceCtxDebugDump ()</h3> +<pre class="PROGRAMLISTING"><gtkdoclink href="VOID"><span class="RETURNVALUE">void</span></gtkdoclink> xmlSecDSigReferenceCtxDebugDump (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX"><span class="TYPE">xmlSecDSigReferenceCtxPtr</span></a> dsigRefCtx</code>, + <code class="PARAMETER"><gtkdoclink href="FILE:CAPS"><span class="TYPE">FILE</span></gtkdoclink> *output</code>);</pre> +<p>Prints debug information about <code class="PARAMETER">dsigRefCtx</code> to <code class="PARAMETER">output</code>.</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22329"><span style="white-space: nowrap"><code class="PARAMETER">dsigRefCtx</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> element processing context.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22335"><span style="white-space: nowrap"><code class="PARAMETER">output</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to output FILE.</p></td> +</tr> +</tbody></table> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGREFERENCECTXDEBUGXMLDUMP"></a><h3>xmlSecDSigReferenceCtxDebugXmlDump ()</h3> +<pre class="PROGRAMLISTING"><gtkdoclink href="VOID"><span class="RETURNVALUE">void</span></gtkdoclink> xmlSecDSigReferenceCtxDebugXmlDump (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX"><span class="TYPE">xmlSecDSigReferenceCtxPtr</span></a> dsigRefCtx</code>, + <code class="PARAMETER"><gtkdoclink href="FILE:CAPS"><span class="TYPE">FILE</span></gtkdoclink> *output</code>);</pre> +<p>Prints debug information about <code class="PARAMETER">dsigRefCtx</code> to <code class="PARAMETER">output</code> in output format.</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22357"><span style="white-space: nowrap"><code class="PARAMETER">dsigRefCtx</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> element processing context.</p></td> +</tr> +<tr> +<td align="LEFT" valign="TOP"><a name="AEN22363"><span style="white-space: nowrap"><code class="PARAMETER">output</code> :</span></a></td> +<td align="LEFT" valign="TOP"><p>the pointer to output FILE.</p></td> +</tr> +</tbody></table> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGREFERENCECTXLISTID"></a><h3>xmlSecDSigReferenceCtxListId</h3> +<pre class="PROGRAMLISTING">#define xmlSecDSigReferenceCtxListId</pre> +<p>The references list klass.</p> +</div> +<hr> +<div class="REFSECT2"> +<a name="XMLSECDSIGREFERENCECTXLISTGETKLASS"></a><h3>xmlSecDSigReferenceCtxListGetKlass ()</h3> +<pre class="PROGRAMLISTING"><gtkdoclink href="XMLSECPTRLISTID"><span class="RETURNVALUE">xmlSecPtrListId</span></gtkdoclink> xmlSecDSigReferenceCtxListGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre> +<p>The <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> element processing contexts list klass.</p> +<p></p> +<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody><tr> +<td align="LEFT" valign="TOP"><a name="AEN22386"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td> +<td align="LEFT" valign="TOP"><p> <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> element processing context list klass.</p></td> +</tr></tbody></table> +</div> +</div> +<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle"> +<td align="left"><a accesskey="p" href="xmlsec-version.html"><b><<< version</b></a></td> +<td align="right"><a accesskey="n" href="xmlsec-xmlenc.html"><b>xmlenc >>></b></a></td> +</tr></table> +</td></tr></table></td> +</tr></table></body> +</html> |