|
Server : Apache/2.2.17 (Unix) mod_ssl/2.2.17 OpenSSL/0.9.8e-fips-rhel5 DAV/2 PHP/5.2.17 System : Linux localhost 2.6.18-419.el5 #1 SMP Fri Feb 24 22:47:42 UTC 2017 x86_64 User : nobody ( 99) PHP Version : 5.2.17 Disable Function : NONE Directory : /proc/21572/root/usr/share/doc/xmlsec1/api/ |
Upload File : |
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>x509</title>
<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.7">
<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
<link rel="UP" title="XML Security Library for OpenSLL API Reference." href="xmlsec-openssl-ref.html">
<link rel="PREVIOUS" title="evp" href="xmlsec-openssl-evp.html">
<link rel="NEXT" title="XML Security Library for GnuTLS API Reference." href="xmlsec-gnutls-ref.html">
<meta name="GENERATOR" content="GTK-Doc V1.2 (SGML mode)">
<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>
<!--Sponsored links - start--><!--Sponsored 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-openssl-evp.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="xmlsec-openssl-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-gnutls-ref.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr></table>
<h1>
<a name="XMLSEC-OPENSSL-X509"></a>x509</h1>
<div class="REFNAMEDIV">
<a name="AEN22815"></a><h2>Name</h2>x509 -- </div>
<div class="REFSYNOPSISDIV">
<a name="AEN22818"></a><h2>Synopsis</h2>
<pre class="SYNOPSIS">
#define <a href="xmlsec-openssl-x509.html#XMLSEC-STACK-OF-X509-CAPS">XMLSEC_STACK_OF_X509</a>
#define <a href="xmlsec-openssl-x509.html#XMLSEC-STACK-OF-X509-CRL-CAPS">XMLSEC_STACK_OF_X509_CRL</a>
#define <a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509ID">xmlSecOpenSSLKeyDataX509Id</a>
<font>xmlSecKeyDataId</font> <a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509GETKLASS">xmlSecOpenSSLKeyDataX509GetKlass</a>
(void);
<font>X509</font>* <a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509GETKEYCERT">xmlSecOpenSSLKeyDataX509GetKeyCert</a>
(<a href="xmlsec-keysdata.html#XMLSECKEYDATA">xmlSecKeyDataPtr</a> data);
<font>int</font> <a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509ADOPTKEYCERT">xmlSecOpenSSLKeyDataX509AdoptKeyCert</a>
(<a href="xmlsec-keysdata.html#XMLSECKEYDATA">xmlSecKeyDataPtr</a> data,
<font>X509</font> *cert);
<font>int</font> <a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509ADOPTCERT">xmlSecOpenSSLKeyDataX509AdoptCert</a>
(<a href="xmlsec-keysdata.html#XMLSECKEYDATA">xmlSecKeyDataPtr</a> data,
<font>X509</font> *cert);
<font>X509</font>* <a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509GETCERT">xmlSecOpenSSLKeyDataX509GetCert</a> (<a href="xmlsec-keysdata.html#XMLSECKEYDATA">xmlSecKeyDataPtr</a> data,
<a href="xmlsec-xmlsec.html#XMLSECSIZE">xmlSecSize</a> pos);
<a href="xmlsec-xmlsec.html#XMLSECSIZE">xmlSecSize</a> <a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509GETCERTSSIZE">xmlSecOpenSSLKeyDataX509GetCertsSize</a>
(<a href="xmlsec-keysdata.html#XMLSECKEYDATA">xmlSecKeyDataPtr</a> data);
<font>int</font> <a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509ADOPTCRL">xmlSecOpenSSLKeyDataX509AdoptCrl</a>
(<a href="xmlsec-keysdata.html#XMLSECKEYDATA">xmlSecKeyDataPtr</a> data,
<font>X509_CRL</font> *crl);
<font>X509_CRL</font>* <a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509GETCRL">xmlSecOpenSSLKeyDataX509GetCrl</a> (<a href="xmlsec-keysdata.html#XMLSECKEYDATA">xmlSecKeyDataPtr</a> data,
<a href="xmlsec-xmlsec.html#XMLSECSIZE">xmlSecSize</a> pos);
<a href="xmlsec-xmlsec.html#XMLSECSIZE">xmlSecSize</a> <a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509GETCRLSSIZE">xmlSecOpenSSLKeyDataX509GetCrlsSize</a>
(<a href="xmlsec-keysdata.html#XMLSECKEYDATA">xmlSecKeyDataPtr</a> data);
<a href="xmlsec-keysdata.html#XMLSECKEYDATA">xmlSecKeyDataPtr</a> <a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509CERTGETKEY">xmlSecOpenSSLX509CertGetKey</a>
(<font>X509</font> *cert);
#define <a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATARAWX509CERTID">xmlSecOpenSSLKeyDataRawX509CertId</a>
<font>xmlSecKeyDataId</font> <a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATARAWX509CERTGETKLASS">xmlSecOpenSSLKeyDataRawX509CertGetKlass</a>
(void);
#define <a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509STOREID">xmlSecOpenSSLX509StoreId</a>
<font>xmlSecKeyDataStoreId</font> <a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509STOREGETKLASS">xmlSecOpenSSLX509StoreGetKlass</a>
(void);
<font>X509</font>* <a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509STOREFINDCERT">xmlSecOpenSSLX509StoreFindCert</a> (<a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE">xmlSecKeyDataStorePtr</a> store,
<font>xmlChar</font> *subjectName,
<font>xmlChar</font> *issuerName,
<font>xmlChar</font> *issuerSerial,
<font>xmlChar</font> *ski,
<a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX">xmlSecKeyInfoCtx</a> *keyInfoCtx);
<font>X509</font>* <a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509STOREVERIFY">xmlSecOpenSSLX509StoreVerify</a> (<a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE">xmlSecKeyDataStorePtr</a> store,
<a href="xmlsec-openssl-x509.html#XMLSEC-STACK-OF-X509-CAPS">XMLSEC_STACK_OF_X509</a> *certs,
<a href="xmlsec-openssl-x509.html#XMLSEC-STACK-OF-X509-CRL-CAPS">XMLSEC_STACK_OF_X509_CRL</a> *crls,
<a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX">xmlSecKeyInfoCtx</a> *keyInfoCtx);
<font>int</font> <a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509STOREADOPTCERT">xmlSecOpenSSLX509StoreAdoptCert</a> (<a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE">xmlSecKeyDataStorePtr</a> store,
<font>X509</font> *cert,
<a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE">xmlSecKeyDataType</a> type);
<font>int</font> <a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509STOREADDCERTSPATH">xmlSecOpenSSLX509StoreAddCertsPath</a>
(<a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE">xmlSecKeyDataStorePtr</a> store,
const <font>char</font> *path);</pre>
</div>
<div class="REFSECT1">
<a name="AEN22887"></a><h2>Description</h2>
<p></p>
</div>
<div class="REFSECT1">
<a name="AEN22890"></a><h2>Details</h2>
<div class="REFSECT2">
<a name="AEN22892"></a><h3>
<a name="XMLSEC-STACK-OF-X509-CAPS"></a>XMLSEC_STACK_OF_X509</h3>
<pre class="PROGRAMLISTING">#define XMLSEC_STACK_OF_X509 STACK_OF(X509)</pre>
<p>Macro. To make docbook happy.</p>
<p></p>
</div>
<hr>
<div class="REFSECT2">
<a name="AEN22900"></a><h3>
<a name="XMLSEC-STACK-OF-X509-CRL-CAPS"></a>XMLSEC_STACK_OF_X509_CRL</h3>
<pre class="PROGRAMLISTING">#define XMLSEC_STACK_OF_X509_CRL STACK_OF(X509_CRL)</pre>
<p>Macro. To make docbook happy.</p>
<p></p>
</div>
<hr>
<div class="REFSECT2">
<a name="AEN22908"></a><h3>
<a name="XMLSECOPENSSLKEYDATAX509ID"></a>xmlSecOpenSSLKeyDataX509Id</h3>
<pre class="PROGRAMLISTING">#define xmlSecOpenSSLKeyDataX509Id</pre>
<p>The OpenSSL X509 data klass.</p>
<p></p>
</div>
<hr>
<div class="REFSECT2">
<a name="AEN22916"></a><h3>
<a name="XMLSECOPENSSLKEYDATAX509GETKLASS"></a>xmlSecOpenSSLKeyDataX509GetKlass ()</h3>
<pre class="PROGRAMLISTING"><font>xmlSecKeyDataId</font> xmlSecOpenSSLKeyDataX509GetKlass
(void);</pre>
<p>The OpenSSL X509 key data klass (http://www.w3.org/TR/xmldsig-core/<font><span class="TYPE">sec-X509Data</span></font>).</p>
<p></p>
<p></p>
<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody><tr>
<td align="LEFT" valign="TOP"><a name="AEN22928"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td>
<td align="LEFT" valign="TOP"><p>the X509 data klass.</p></td>
</tr></tbody></table>
</div>
<hr>
<div class="REFSECT2">
<a name="AEN22933"></a><h3>
<a name="XMLSECOPENSSLKEYDATAX509GETKEYCERT"></a>xmlSecOpenSSLKeyDataX509GetKeyCert ()</h3>
<pre class="PROGRAMLISTING"><font>X509</font>* xmlSecOpenSSLKeyDataX509GetKeyCert
(<a href="xmlsec-keysdata.html#XMLSECKEYDATA">xmlSecKeyDataPtr</a> data);</pre>
<p>Gets the certificate from which the key was extracted.</p>
<p></p>
<p></p>
<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN22944"><span style="white-space: nowrap"><var class="PARAMETER">data</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the pointer to X509 key data.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN22949"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td>
<td align="LEFT" valign="TOP"><p>the key's certificate or NULL if key data was not used for key
extraction or an error occurs.</p></td>
</tr>
</tbody></table>
</div>
<hr>
<div class="REFSECT2">
<a name="AEN22954"></a><h3>
<a name="XMLSECOPENSSLKEYDATAX509ADOPTKEYCERT"></a>xmlSecOpenSSLKeyDataX509AdoptKeyCert ()</h3>
<pre class="PROGRAMLISTING"><font>int</font> xmlSecOpenSSLKeyDataX509AdoptKeyCert
(<a href="xmlsec-keysdata.html#XMLSECKEYDATA">xmlSecKeyDataPtr</a> data,
<font>X509</font> *cert);</pre>
<p>Sets the key's certificate in <var class="PARAMETER">data</var>.</p>
<p></p>
<p></p>
<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN22967"><span style="white-space: nowrap"><var class="PARAMETER">data</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the pointer to X509 key data.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN22972"><span style="white-space: nowrap"><var class="PARAMETER">cert</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the pointer to OpenSSL X509 certificate.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN22977"><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="AEN22982"></a><h3>
<a name="XMLSECOPENSSLKEYDATAX509ADOPTCERT"></a>xmlSecOpenSSLKeyDataX509AdoptCert ()</h3>
<pre class="PROGRAMLISTING"><font>int</font> xmlSecOpenSSLKeyDataX509AdoptCert
(<a href="xmlsec-keysdata.html#XMLSECKEYDATA">xmlSecKeyDataPtr</a> data,
<font>X509</font> *cert);</pre>
<p>Adds certificate to the X509 key data.</p>
<p></p>
<p></p>
<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN22994"><span style="white-space: nowrap"><var class="PARAMETER">data</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the pointer to X509 key data.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN22999"><span style="white-space: nowrap"><var class="PARAMETER">cert</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the pointer to OpenSSL X509 certificate.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23004"><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="AEN23009"></a><h3>
<a name="XMLSECOPENSSLKEYDATAX509GETCERT"></a>xmlSecOpenSSLKeyDataX509GetCert ()</h3>
<pre class="PROGRAMLISTING"><font>X509</font>* xmlSecOpenSSLKeyDataX509GetCert (<a href="xmlsec-keysdata.html#XMLSECKEYDATA">xmlSecKeyDataPtr</a> data,
<a href="xmlsec-xmlsec.html#XMLSECSIZE">xmlSecSize</a> pos);</pre>
<p>Gets a certificate from X509 key data.</p>
<p></p>
<p></p>
<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23021"><span style="white-space: nowrap"><var class="PARAMETER">data</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the pointer to X509 key data.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23026"><span style="white-space: nowrap"><var class="PARAMETER">pos</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the desired certificate position.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23031"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td>
<td align="LEFT" valign="TOP"><p>the pointer to certificate or NULL if <var class="PARAMETER">pos</var> is larger than the
number of certificates in <var class="PARAMETER">data</var> or an error occurs.</p></td>
</tr>
</tbody></table>
</div>
<hr>
<div class="REFSECT2">
<a name="AEN23038"></a><h3>
<a name="XMLSECOPENSSLKEYDATAX509GETCERTSSIZE"></a>xmlSecOpenSSLKeyDataX509GetCertsSize ()</h3>
<pre class="PROGRAMLISTING"><a href="xmlsec-xmlsec.html#XMLSECSIZE">xmlSecSize</a> xmlSecOpenSSLKeyDataX509GetCertsSize
(<a href="xmlsec-keysdata.html#XMLSECKEYDATA">xmlSecKeyDataPtr</a> data);</pre>
<p>Gets the number of certificates in <var class="PARAMETER">data</var>.</p>
<p></p>
<p></p>
<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23050"><span style="white-space: nowrap"><var class="PARAMETER">data</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the pointer to X509 key data.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23055"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td>
<td align="LEFT" valign="TOP"><p>te number of certificates in <var class="PARAMETER">data</var>.</p></td>
</tr>
</tbody></table>
</div>
<hr>
<div class="REFSECT2">
<a name="AEN23061"></a><h3>
<a name="XMLSECOPENSSLKEYDATAX509ADOPTCRL"></a>xmlSecOpenSSLKeyDataX509AdoptCrl ()</h3>
<pre class="PROGRAMLISTING"><font>int</font> xmlSecOpenSSLKeyDataX509AdoptCrl
(<a href="xmlsec-keysdata.html#XMLSECKEYDATA">xmlSecKeyDataPtr</a> data,
<font>X509_CRL</font> *crl);</pre>
<p>Adds CRL to the X509 key data.</p>
<p></p>
<p></p>
<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23073"><span style="white-space: nowrap"><var class="PARAMETER">data</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the pointer to X509 key data.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23078"><span style="white-space: nowrap"><var class="PARAMETER">crl</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the pointer to OpenSSL X509 CRL.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23083"><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="AEN23088"></a><h3>
<a name="XMLSECOPENSSLKEYDATAX509GETCRL"></a>xmlSecOpenSSLKeyDataX509GetCrl ()</h3>
<pre class="PROGRAMLISTING"><font>X509_CRL</font>* xmlSecOpenSSLKeyDataX509GetCrl (<a href="xmlsec-keysdata.html#XMLSECKEYDATA">xmlSecKeyDataPtr</a> data,
<a href="xmlsec-xmlsec.html#XMLSECSIZE">xmlSecSize</a> pos);</pre>
<p>Gets a CRL from X509 key data.</p>
<p></p>
<p></p>
<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23100"><span style="white-space: nowrap"><var class="PARAMETER">data</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the pointer to X509 key data.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23105"><span style="white-space: nowrap"><var class="PARAMETER">pos</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the desired CRL position.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23110"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td>
<td align="LEFT" valign="TOP"><p>the pointer to CRL or NULL if <var class="PARAMETER">pos</var> is larger than the
number of CRLs in <var class="PARAMETER">data</var> or an error occurs.</p></td>
</tr>
</tbody></table>
</div>
<hr>
<div class="REFSECT2">
<a name="AEN23117"></a><h3>
<a name="XMLSECOPENSSLKEYDATAX509GETCRLSSIZE"></a>xmlSecOpenSSLKeyDataX509GetCrlsSize ()</h3>
<pre class="PROGRAMLISTING"><a href="xmlsec-xmlsec.html#XMLSECSIZE">xmlSecSize</a> xmlSecOpenSSLKeyDataX509GetCrlsSize
(<a href="xmlsec-keysdata.html#XMLSECKEYDATA">xmlSecKeyDataPtr</a> data);</pre>
<p>Gets the number of CRLs in <var class="PARAMETER">data</var>.</p>
<p></p>
<p></p>
<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23129"><span style="white-space: nowrap"><var class="PARAMETER">data</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the pointer to X509 key data.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23134"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td>
<td align="LEFT" valign="TOP"><p>te number of CRLs in <var class="PARAMETER">data</var>.</p></td>
</tr>
</tbody></table>
</div>
<hr>
<div class="REFSECT2">
<a name="AEN23140"></a><h3>
<a name="XMLSECOPENSSLX509CERTGETKEY"></a>xmlSecOpenSSLX509CertGetKey ()</h3>
<pre class="PROGRAMLISTING"><a href="xmlsec-keysdata.html#XMLSECKEYDATA">xmlSecKeyDataPtr</a> xmlSecOpenSSLX509CertGetKey
(<font>X509</font> *cert);</pre>
<p>Extracts public key from the <var class="PARAMETER">cert</var>.</p>
<p></p>
<p></p>
<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23152"><span style="white-space: nowrap"><var class="PARAMETER">cert</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the certificate.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23157"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td>
<td align="LEFT" valign="TOP"><p>public key value or NULL if an error occurs.</p></td>
</tr>
</tbody></table>
</div>
<hr>
<div class="REFSECT2">
<a name="AEN23162"></a><h3>
<a name="XMLSECOPENSSLKEYDATARAWX509CERTID"></a>xmlSecOpenSSLKeyDataRawX509CertId</h3>
<pre class="PROGRAMLISTING">#define xmlSecOpenSSLKeyDataRawX509CertId</pre>
<p>The OpenSSL raw X509 certificate klass.</p>
<p></p>
</div>
<hr>
<div class="REFSECT2">
<a name="AEN23170"></a><h3>
<a name="XMLSECOPENSSLKEYDATARAWX509CERTGETKLASS"></a>xmlSecOpenSSLKeyDataRawX509CertGetKlass ()</h3>
<pre class="PROGRAMLISTING"><font>xmlSecKeyDataId</font> xmlSecOpenSSLKeyDataRawX509CertGetKlass
(void);</pre>
<p>The raw X509 certificates key data klass.</p>
<p></p>
<p></p>
<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody><tr>
<td align="LEFT" valign="TOP"><a name="AEN23180"><span style="white-space: nowrap"><span class="emphasis"><i class="EMPHASIS">Returns</i></span> :</span></a></td>
<td align="LEFT" valign="TOP"><p>raw X509 certificates key data klass.</p></td>
</tr></tbody></table>
</div>
<hr>
<div class="REFSECT2">
<a name="AEN23185"></a><h3>
<a name="XMLSECOPENSSLX509STOREID"></a>xmlSecOpenSSLX509StoreId</h3>
<pre class="PROGRAMLISTING">#define xmlSecOpenSSLX509StoreId</pre>
<p>The OpenSSL X509 store klass.</p>
<p></p>
</div>
<hr>
<div class="REFSECT2">
<a name="AEN23193"></a><h3>
<a name="XMLSECOPENSSLX509STOREGETKLASS"></a>xmlSecOpenSSLX509StoreGetKlass ()</h3>
<pre class="PROGRAMLISTING"><font>xmlSecKeyDataStoreId</font> xmlSecOpenSSLX509StoreGetKlass
(void);</pre>
<p>The OpenSSL X509 certificates key data store klass.</p>
<p></p>
<p></p>
<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody><tr>
<td align="LEFT" valign="TOP"><a name="AEN23203"><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 OpenSSL X509 certificates key data store klass.</p></td>
</tr></tbody></table>
</div>
<hr>
<div class="REFSECT2">
<a name="AEN23208"></a><h3>
<a name="XMLSECOPENSSLX509STOREFINDCERT"></a>xmlSecOpenSSLX509StoreFindCert ()</h3>
<pre class="PROGRAMLISTING"><font>X509</font>* xmlSecOpenSSLX509StoreFindCert (<a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE">xmlSecKeyDataStorePtr</a> store,
<font>xmlChar</font> *subjectName,
<font>xmlChar</font> *issuerName,
<font>xmlChar</font> *issuerSerial,
<font>xmlChar</font> *ski,
<a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX">xmlSecKeyInfoCtx</a> *keyInfoCtx);</pre>
<p>Searches <var class="PARAMETER">store</var> for a certificate that matches given criteria.</p>
<p></p>
<p></p>
<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23225"><span style="white-space: nowrap"><var class="PARAMETER">store</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the pointer to X509 key data store klass.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23230"><span style="white-space: nowrap"><var class="PARAMETER">subjectName</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the desired certificate name.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23235"><span style="white-space: nowrap"><var class="PARAMETER">issuerName</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the desired certificate issuer name.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23240"><span style="white-space: nowrap"><var class="PARAMETER">issuerSerial</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the desired certificate issuer serial number.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23245"><span style="white-space: nowrap"><var class="PARAMETER">ski</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the desired certificate SKI.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23250"><span style="white-space: nowrap"><var class="PARAMETER">keyInfoCtx</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the pointer to <a href="http://www.w3.org/TR/xmldsig-core/#sec-KeyInfo" target="_top"><dsig:KeyInfo/></a> element processing context.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23256"><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 found certificate or NULL if certificate is not found
or an error occurs.</p></td>
</tr>
</tbody></table>
</div>
<hr>
<div class="REFSECT2">
<a name="AEN23261"></a><h3>
<a name="XMLSECOPENSSLX509STOREVERIFY"></a>xmlSecOpenSSLX509StoreVerify ()</h3>
<pre class="PROGRAMLISTING"><font>X509</font>* xmlSecOpenSSLX509StoreVerify (<a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE">xmlSecKeyDataStorePtr</a> store,
<a href="xmlsec-openssl-x509.html#XMLSEC-STACK-OF-X509-CAPS">XMLSEC_STACK_OF_X509</a> *certs,
<a href="xmlsec-openssl-x509.html#XMLSEC-STACK-OF-X509-CRL-CAPS">XMLSEC_STACK_OF_X509_CRL</a> *crls,
<a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX">xmlSecKeyInfoCtx</a> *keyInfoCtx);</pre>
<p>Verifies <var class="PARAMETER">certs</var> list.</p>
<p></p>
<p></p>
<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23276"><span style="white-space: nowrap"><var class="PARAMETER">store</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the pointer to X509 key data store klass.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23281"><span style="white-space: nowrap"><var class="PARAMETER">certs</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the untrusted certificates stack.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23286"><span style="white-space: nowrap"><var class="PARAMETER">crls</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the crls stack.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23291"><span style="white-space: nowrap"><var class="PARAMETER">keyInfoCtx</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the pointer to <a href="http://www.w3.org/TR/xmldsig-core/#sec-KeyInfo" target="_top"><dsig:KeyInfo/></a> element processing context.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23297"><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 first verified certificate from <var class="PARAMETER">certs</var>.</p></td>
</tr>
</tbody></table>
</div>
<hr>
<div class="REFSECT2">
<a name="AEN23303"></a><h3>
<a name="XMLSECOPENSSLX509STOREADOPTCERT"></a>xmlSecOpenSSLX509StoreAdoptCert ()</h3>
<pre class="PROGRAMLISTING"><font>int</font> xmlSecOpenSSLX509StoreAdoptCert (<a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE">xmlSecKeyDataStorePtr</a> store,
<font>X509</font> *cert,
<a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE">xmlSecKeyDataType</a> type);</pre>
<p>Adds trusted (root) or untrusted certificate to the store.</p>
<p></p>
<p></p>
<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23316"><span style="white-space: nowrap"><var class="PARAMETER">store</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the pointer to X509 key data store klass.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23321"><span style="white-space: nowrap"><var class="PARAMETER">cert</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the pointer to OpenSSL X509 certificate.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23326"><span style="white-space: nowrap"><var class="PARAMETER">type</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the certificate type (trusted/untrusted).</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23331"><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="AEN23336"></a><h3>
<a name="XMLSECOPENSSLX509STOREADDCERTSPATH"></a>xmlSecOpenSSLX509StoreAddCertsPath ()</h3>
<pre class="PROGRAMLISTING"><font>int</font> xmlSecOpenSSLX509StoreAddCertsPath
(<a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE">xmlSecKeyDataStorePtr</a> store,
const <font>char</font> *path);</pre>
<p>Adds all certs in the <var class="PARAMETER">path</var> to the list of trusted certs
in <var class="PARAMETER">store</var>.</p>
<p></p>
<p></p>
<table class="variablelist" border="0" cellspacing="0" cellpadding="4"><tbody>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23350"><span style="white-space: nowrap"><var class="PARAMETER">store</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the pointer to OpenSSL x509 store.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23355"><span style="white-space: nowrap"><var class="PARAMETER">path</var> :</span></a></td>
<td align="LEFT" valign="TOP"><p> the path to the certs dir.</p></td>
</tr>
<tr>
<td align="LEFT" valign="TOP"><a name="AEN23360"><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 otherwise.</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-openssl-evp.html"><b><<< evp</b></a></td>
<td align="right"><a accesskey="n" href="xmlsec-gnutls-ref.html"><b>XML Security Library for GnuTLS API Reference. >>></b></a></td>
</tr></table>
</td></tr></table></td>
</tr></table></body>
</html>