<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.5"/> <title>PolarSSL v1.3.8: _x509_crt Struct Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">PolarSSL v1.3.8 </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.5 --> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li> <li><a href="files.html"><span>Files</span></a></li> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li><a href="functions.html"><span>Data Fields</span></a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="summary"> <a href="#pub-attribs">Data Fields</a> </div> <div class="headertitle"> <div class="title">_x509_crt Struct Reference<div class="ingroups"><a class="el" href="group__x509__module.html">X.509 module</a></div></div> </div> </div><!--header--> <div class="contents"> <p>Container for an X.509 certificate. <a href="struct__x509__crt.html#details">More...</a></p> <p><code>#include <<a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>></code></p> <div class="dynheader"> Collaboration diagram for _x509_crt:</div> <div class="dyncontent"> <div class="center"><img src="struct__x509__crt__coll__graph.png" border="0" usemap="#__x509__crt_coll__map" alt="Collaboration graph"/></div> <map name="__x509__crt_coll__map" id="__x509__crt_coll__map"> </map> <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a> Data Fields</h2></td></tr> <tr class="memitem:a6d19509e8967a010100917d08ba597a3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#a6d19509e8967a010100917d08ba597a3">raw</a></td></tr> <tr class="memdesc:a6d19509e8967a010100917d08ba597a3"><td class="mdescLeft"> </td><td class="mdescRight">The raw certificate data (DER). <a href="#a6d19509e8967a010100917d08ba597a3">More...</a><br/></td></tr> <tr class="separator:a6d19509e8967a010100917d08ba597a3"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa3e2e8dba6eedabdac8a59711f466925"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#aa3e2e8dba6eedabdac8a59711f466925">tbs</a></td></tr> <tr class="memdesc:aa3e2e8dba6eedabdac8a59711f466925"><td class="mdescLeft"> </td><td class="mdescRight">The raw certificate body (DER). <a href="#aa3e2e8dba6eedabdac8a59711f466925">More...</a><br/></td></tr> <tr class="separator:aa3e2e8dba6eedabdac8a59711f466925"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5cc6318c8e0977a1d49fc80facc164ae"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#a5cc6318c8e0977a1d49fc80facc164ae">version</a></td></tr> <tr class="memdesc:a5cc6318c8e0977a1d49fc80facc164ae"><td class="mdescLeft"> </td><td class="mdescRight">The X.509 version. <a href="#a5cc6318c8e0977a1d49fc80facc164ae">More...</a><br/></td></tr> <tr class="separator:a5cc6318c8e0977a1d49fc80facc164ae"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a43b8188727039be4f27d17817b3c73ad"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#a43b8188727039be4f27d17817b3c73ad">serial</a></td></tr> <tr class="memdesc:a43b8188727039be4f27d17817b3c73ad"><td class="mdescLeft"> </td><td class="mdescRight">Unique id for certificate issued by a specific CA. <a href="#a43b8188727039be4f27d17817b3c73ad">More...</a><br/></td></tr> <tr class="separator:a43b8188727039be4f27d17817b3c73ad"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afec19cd95389ad573eadb39b7ab83e0f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#afec19cd95389ad573eadb39b7ab83e0f">sig_oid1</a></td></tr> <tr class="memdesc:afec19cd95389ad573eadb39b7ab83e0f"><td class="mdescLeft"> </td><td class="mdescRight">Signature algorithm, e.g. <a href="#afec19cd95389ad573eadb39b7ab83e0f">More...</a><br/></td></tr> <tr class="separator:afec19cd95389ad573eadb39b7ab83e0f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af204d5c32f4b72b959feec1d249459da"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#af204d5c32f4b72b959feec1d249459da">issuer_raw</a></td></tr> <tr class="memdesc:af204d5c32f4b72b959feec1d249459da"><td class="mdescLeft"> </td><td class="mdescRight">The raw issuer data (DER). <a href="#af204d5c32f4b72b959feec1d249459da">More...</a><br/></td></tr> <tr class="separator:af204d5c32f4b72b959feec1d249459da"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9d565e1b087066b8e9cb293bf8b9562a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#a9d565e1b087066b8e9cb293bf8b9562a">subject_raw</a></td></tr> <tr class="memdesc:a9d565e1b087066b8e9cb293bf8b9562a"><td class="mdescLeft"> </td><td class="mdescRight">The raw subject data (DER). <a href="#a9d565e1b087066b8e9cb293bf8b9562a">More...</a><br/></td></tr> <tr class="separator:a9d565e1b087066b8e9cb293bf8b9562a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a06648e31fe4adffdca0995568ce6aab9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__x509__module.html#gae9790f007179523cf0a054090484e5bb">x509_name</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#a06648e31fe4adffdca0995568ce6aab9">issuer</a></td></tr> <tr class="memdesc:a06648e31fe4adffdca0995568ce6aab9"><td class="mdescLeft"> </td><td class="mdescRight">The parsed issuer data (named information object). <a href="#a06648e31fe4adffdca0995568ce6aab9">More...</a><br/></td></tr> <tr class="separator:a06648e31fe4adffdca0995568ce6aab9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aaa20d3625961655031604d587d40ad9f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__x509__module.html#gae9790f007179523cf0a054090484e5bb">x509_name</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#aaa20d3625961655031604d587d40ad9f">subject</a></td></tr> <tr class="memdesc:aaa20d3625961655031604d587d40ad9f"><td class="mdescLeft"> </td><td class="mdescRight">The parsed subject data (named information object). <a href="#aaa20d3625961655031604d587d40ad9f">More...</a><br/></td></tr> <tr class="separator:aaa20d3625961655031604d587d40ad9f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a6327ca2c2b95bfead7ac5ef37832f59b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__x509__module.html#ga51a234c4cead82f9678485379c5de825">x509_time</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#a6327ca2c2b95bfead7ac5ef37832f59b">valid_from</a></td></tr> <tr class="memdesc:a6327ca2c2b95bfead7ac5ef37832f59b"><td class="mdescLeft"> </td><td class="mdescRight">Start time of certificate validity. <a href="#a6327ca2c2b95bfead7ac5ef37832f59b">More...</a><br/></td></tr> <tr class="separator:a6327ca2c2b95bfead7ac5ef37832f59b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a03898cad1ed7f09b1032f3a7b4ff515a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__x509__module.html#ga51a234c4cead82f9678485379c5de825">x509_time</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#a03898cad1ed7f09b1032f3a7b4ff515a">valid_to</a></td></tr> <tr class="memdesc:a03898cad1ed7f09b1032f3a7b4ff515a"><td class="mdescLeft"> </td><td class="mdescRight">End time of certificate validity. <a href="#a03898cad1ed7f09b1032f3a7b4ff515a">More...</a><br/></td></tr> <tr class="separator:a03898cad1ed7f09b1032f3a7b4ff515a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a25d579cf750491647545181f6a859668"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structpk__context.html">pk_context</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#a25d579cf750491647545181f6a859668">pk</a></td></tr> <tr class="memdesc:a25d579cf750491647545181f6a859668"><td class="mdescLeft"> </td><td class="mdescRight">Container for the public key context. <a href="#a25d579cf750491647545181f6a859668">More...</a><br/></td></tr> <tr class="separator:a25d579cf750491647545181f6a859668"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af0c0fa4b6a5febff1837802277442c40"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#af0c0fa4b6a5febff1837802277442c40">issuer_id</a></td></tr> <tr class="memdesc:af0c0fa4b6a5febff1837802277442c40"><td class="mdescLeft"> </td><td class="mdescRight">Optional X.509 v2/v3 issuer unique identifier. <a href="#af0c0fa4b6a5febff1837802277442c40">More...</a><br/></td></tr> <tr class="separator:af0c0fa4b6a5febff1837802277442c40"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a02b5906534bd0dd7d27e84215e885888"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#a02b5906534bd0dd7d27e84215e885888">subject_id</a></td></tr> <tr class="memdesc:a02b5906534bd0dd7d27e84215e885888"><td class="mdescLeft"> </td><td class="mdescRight">Optional X.509 v2/v3 subject unique identifier. <a href="#a02b5906534bd0dd7d27e84215e885888">More...</a><br/></td></tr> <tr class="separator:a02b5906534bd0dd7d27e84215e885888"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1308156c29933fc016e4848b10ca78de"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#a1308156c29933fc016e4848b10ca78de">v3_ext</a></td></tr> <tr class="memdesc:a1308156c29933fc016e4848b10ca78de"><td class="mdescLeft"> </td><td class="mdescRight">Optional X.509 v3 extensions. <a href="#a1308156c29933fc016e4848b10ca78de">More...</a><br/></td></tr> <tr class="separator:a1308156c29933fc016e4848b10ca78de"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af96ed7e509440ffce0cbf87735afa4b9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__x509__module.html#ga5e8f63c6d3abf6955eb6190a19360fca">x509_sequence</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#af96ed7e509440ffce0cbf87735afa4b9">subject_alt_names</a></td></tr> <tr class="memdesc:af96ed7e509440ffce0cbf87735afa4b9"><td class="mdescLeft"> </td><td class="mdescRight">Optional list of Subject Alternative Names (Only dNSName supported). <a href="#af96ed7e509440ffce0cbf87735afa4b9">More...</a><br/></td></tr> <tr class="separator:af96ed7e509440ffce0cbf87735afa4b9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2d2e1fe30a2a7b0206118f8db3f3ffa3"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#a2d2e1fe30a2a7b0206118f8db3f3ffa3">ext_types</a></td></tr> <tr class="memdesc:a2d2e1fe30a2a7b0206118f8db3f3ffa3"><td class="mdescLeft"> </td><td class="mdescRight">Bit string containing detected and parsed extensions. <a href="#a2d2e1fe30a2a7b0206118f8db3f3ffa3">More...</a><br/></td></tr> <tr class="separator:a2d2e1fe30a2a7b0206118f8db3f3ffa3"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aaadc9927dbde5bbb5f5659a926c4699b"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#aaadc9927dbde5bbb5f5659a926c4699b">ca_istrue</a></td></tr> <tr class="memdesc:aaadc9927dbde5bbb5f5659a926c4699b"><td class="mdescLeft"> </td><td class="mdescRight">Optional Basic Constraint extension value: 1 if this certificate belongs to a CA, 0 otherwise. <a href="#aaadc9927dbde5bbb5f5659a926c4699b">More...</a><br/></td></tr> <tr class="separator:aaadc9927dbde5bbb5f5659a926c4699b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a03e290fdd84042c87f3fdb1f67175679"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#a03e290fdd84042c87f3fdb1f67175679">max_pathlen</a></td></tr> <tr class="memdesc:a03e290fdd84042c87f3fdb1f67175679"><td class="mdescLeft"> </td><td class="mdescRight">Optional Basic Constraint extension value: The maximum path length to the root certificate. <a href="#a03e290fdd84042c87f3fdb1f67175679">More...</a><br/></td></tr> <tr class="separator:a03e290fdd84042c87f3fdb1f67175679"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4b931af913d6313b1ee5b709eb8e3a7f"><td class="memItemLeft" align="right" valign="top">unsigned char </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#a4b931af913d6313b1ee5b709eb8e3a7f">key_usage</a></td></tr> <tr class="memdesc:a4b931af913d6313b1ee5b709eb8e3a7f"><td class="mdescLeft"> </td><td class="mdescRight">Optional key usage extension value: See the values in <a class="el" href="x509_8h.html" title="X.509 generic defines and structures. ">x509.h</a>. <a href="#a4b931af913d6313b1ee5b709eb8e3a7f">More...</a><br/></td></tr> <tr class="separator:a4b931af913d6313b1ee5b709eb8e3a7f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae97d80b0f4a8c36bae7424c07a492c39"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__x509__module.html#ga5e8f63c6d3abf6955eb6190a19360fca">x509_sequence</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#ae97d80b0f4a8c36bae7424c07a492c39">ext_key_usage</a></td></tr> <tr class="memdesc:ae97d80b0f4a8c36bae7424c07a492c39"><td class="mdescLeft"> </td><td class="mdescRight">Optional list of extended key usage OIDs. <a href="#ae97d80b0f4a8c36bae7424c07a492c39">More...</a><br/></td></tr> <tr class="separator:ae97d80b0f4a8c36bae7424c07a492c39"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a6702ec42d12762793f79f18cd1697e7a"><td class="memItemLeft" align="right" valign="top">unsigned char </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#a6702ec42d12762793f79f18cd1697e7a">ns_cert_type</a></td></tr> <tr class="memdesc:a6702ec42d12762793f79f18cd1697e7a"><td class="mdescLeft"> </td><td class="mdescRight">Optional Netscape certificate type extension value: See the values in <a class="el" href="x509_8h.html" title="X.509 generic defines and structures. ">x509.h</a>. <a href="#a6702ec42d12762793f79f18cd1697e7a">More...</a><br/></td></tr> <tr class="separator:a6702ec42d12762793f79f18cd1697e7a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:adced3d7dd1364a295d7a1ac853487f4e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#adced3d7dd1364a295d7a1ac853487f4e">sig_oid2</a></td></tr> <tr class="memdesc:adced3d7dd1364a295d7a1ac853487f4e"><td class="mdescLeft"> </td><td class="mdescRight">Signature algorithm. <a href="#adced3d7dd1364a295d7a1ac853487f4e">More...</a><br/></td></tr> <tr class="separator:adced3d7dd1364a295d7a1ac853487f4e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac879cafb84baa4067fc5b267b04874a7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#ac879cafb84baa4067fc5b267b04874a7">sig</a></td></tr> <tr class="memdesc:ac879cafb84baa4067fc5b267b04874a7"><td class="mdescLeft"> </td><td class="mdescRight">Signature: hash of the tbs part signed with the private key. <a href="#ac879cafb84baa4067fc5b267b04874a7">More...</a><br/></td></tr> <tr class="separator:ac879cafb84baa4067fc5b267b04874a7"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a78d84128bb696cbe73587fd855ce1254"><td class="memItemLeft" align="right" valign="top"><a class="el" href="md_8h.html#af1fbbb67afa0daee4090cde8864e0b68">md_type_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#a78d84128bb696cbe73587fd855ce1254">sig_md</a></td></tr> <tr class="memdesc:a78d84128bb696cbe73587fd855ce1254"><td class="mdescLeft"> </td><td class="mdescRight">Internal representation of the MD algorithm of the signature algorithm, e.g. <a href="#a78d84128bb696cbe73587fd855ce1254">More...</a><br/></td></tr> <tr class="separator:a78d84128bb696cbe73587fd855ce1254"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a3a7645927022ef6460a93586c88945e3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pk_8h.html#afca3aa33cb1f34742a7ee3fd8ccec9ca">pk_type_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#a3a7645927022ef6460a93586c88945e3">sig_pk</a></td></tr> <tr class="memdesc:a3a7645927022ef6460a93586c88945e3"><td class="mdescLeft"> </td><td class="mdescRight">Internal representation of the Public Key algorithm of the signature algorithm, e.g. <a href="#a3a7645927022ef6460a93586c88945e3">More...</a><br/></td></tr> <tr class="separator:a3a7645927022ef6460a93586c88945e3"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a40a7d7d028348b4add2f43378ba93ade"><td class="memItemLeft" align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#a40a7d7d028348b4add2f43378ba93ade">sig_opts</a></td></tr> <tr class="memdesc:a40a7d7d028348b4add2f43378ba93ade"><td class="mdescLeft"> </td><td class="mdescRight">Signature options to be passed to <a class="el" href="pk_8h.html#a3a3c4fb7fad1c9097df161208d81b097" title="Verify signature, with options. ">pk_verify_ext()</a>, e.g. <a href="#a40a7d7d028348b4add2f43378ba93ade">More...</a><br/></td></tr> <tr class="separator:a40a7d7d028348b4add2f43378ba93ade"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af82d5afa90c69fdfd87696951c0eaeb9"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="struct__x509__crt.html">_x509_crt</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="struct__x509__crt.html#af82d5afa90c69fdfd87696951c0eaeb9">next</a></td></tr> <tr class="memdesc:af82d5afa90c69fdfd87696951c0eaeb9"><td class="mdescLeft"> </td><td class="mdescRight">Next certificate in the CA-chain. <a href="#af82d5afa90c69fdfd87696951c0eaeb9">More...</a><br/></td></tr> <tr class="separator:af82d5afa90c69fdfd87696951c0eaeb9"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><p>Container for an X.509 certificate. </p> <p>The certificate may be chained. </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00057">57</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div><h2 class="groupheader">Field Documentation</h2> <a class="anchor" id="aaadc9927dbde5bbb5f5659a926c4699b"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int _x509_crt::ca_istrue</td> </tr> </table> </div><div class="memdoc"> <p>Optional Basic Constraint extension value: 1 if this certificate belongs to a CA, 0 otherwise. </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00083">83</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="ae97d80b0f4a8c36bae7424c07a492c39"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__x509__module.html#ga5e8f63c6d3abf6955eb6190a19360fca">x509_sequence</a> _x509_crt::ext_key_usage</td> </tr> </table> </div><div class="memdoc"> <p>Optional list of extended key usage OIDs. </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00088">88</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="a2d2e1fe30a2a7b0206118f8db3f3ffa3"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int _x509_crt::ext_types</td> </tr> </table> </div><div class="memdoc"> <p>Bit string containing detected and parsed extensions. </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00082">82</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="a06648e31fe4adffdca0995568ce6aab9"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__x509__module.html#gae9790f007179523cf0a054090484e5bb">x509_name</a> _x509_crt::issuer</td> </tr> </table> </div><div class="memdoc"> <p>The parsed issuer data (named information object). </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00069">69</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="af0c0fa4b6a5febff1837802277442c40"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a> _x509_crt::issuer_id</td> </tr> </table> </div><div class="memdoc"> <p>Optional X.509 v2/v3 issuer unique identifier. </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00077">77</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="af204d5c32f4b72b959feec1d249459da"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a> _x509_crt::issuer_raw</td> </tr> </table> </div><div class="memdoc"> <p>The raw issuer data (DER). </p> <p>Used for quick comparison. </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00066">66</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="a4b931af913d6313b1ee5b709eb8e3a7f"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">unsigned char _x509_crt::key_usage</td> </tr> </table> </div><div class="memdoc"> <p>Optional key usage extension value: See the values in <a class="el" href="x509_8h.html" title="X.509 generic defines and structures. ">x509.h</a>. </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00086">86</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="a03e290fdd84042c87f3fdb1f67175679"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int _x509_crt::max_pathlen</td> </tr> </table> </div><div class="memdoc"> <p>Optional Basic Constraint extension value: The maximum path length to the root certificate. </p> <p>Path length is 1 higher than RFC 5280 'meaning', so 1+ </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00084">84</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="af82d5afa90c69fdfd87696951c0eaeb9"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">struct <a class="el" href="struct__x509__crt.html">_x509_crt</a>* _x509_crt::next</td> </tr> </table> </div><div class="memdoc"> <p>Next certificate in the CA-chain. </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00098">98</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="a6702ec42d12762793f79f18cd1697e7a"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">unsigned char _x509_crt::ns_cert_type</td> </tr> </table> </div><div class="memdoc"> <p>Optional Netscape certificate type extension value: See the values in <a class="el" href="x509_8h.html" title="X.509 generic defines and structures. ">x509.h</a>. </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00090">90</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="a25d579cf750491647545181f6a859668"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="structpk__context.html">pk_context</a> _x509_crt::pk</td> </tr> </table> </div><div class="memdoc"> <p>Container for the public key context. </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00075">75</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="a6d19509e8967a010100917d08ba597a3"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a> _x509_crt::raw</td> </tr> </table> </div><div class="memdoc"> <p>The raw certificate data (DER). </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00059">59</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="a43b8188727039be4f27d17817b3c73ad"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a> _x509_crt::serial</td> </tr> </table> </div><div class="memdoc"> <p>Unique id for certificate issued by a specific CA. </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00063">63</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="ac879cafb84baa4067fc5b267b04874a7"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a> _x509_crt::sig</td> </tr> </table> </div><div class="memdoc"> <p>Signature: hash of the tbs part signed with the private key. </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00093">93</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="a78d84128bb696cbe73587fd855ce1254"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="md_8h.html#af1fbbb67afa0daee4090cde8864e0b68">md_type_t</a> _x509_crt::sig_md</td> </tr> </table> </div><div class="memdoc"> <p>Internal representation of the MD algorithm of the signature algorithm, e.g. </p> <p>POLARSSL_MD_SHA256 </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00094">94</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="afec19cd95389ad573eadb39b7ab83e0f"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a> _x509_crt::sig_oid1</td> </tr> </table> </div><div class="memdoc"> <p>Signature algorithm, e.g. </p> <p>sha1RSA </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00064">64</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="adced3d7dd1364a295d7a1ac853487f4e"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a> _x509_crt::sig_oid2</td> </tr> </table> </div><div class="memdoc"> <p>Signature algorithm. </p> <p>Must match sig_oid1. </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00092">92</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="a40a7d7d028348b4add2f43378ba93ade"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void* _x509_crt::sig_opts</td> </tr> </table> </div><div class="memdoc"> <p>Signature options to be passed to <a class="el" href="pk_8h.html#a3a3c4fb7fad1c9097df161208d81b097" title="Verify signature, with options. ">pk_verify_ext()</a>, e.g. </p> <p>for RSASSA-PSS </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00096">96</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="a3a7645927022ef6460a93586c88945e3"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="pk_8h.html#afca3aa33cb1f34742a7ee3fd8ccec9ca">pk_type_t</a> _x509_crt::sig_pk</td> </tr> </table> </div><div class="memdoc"> <p>Internal representation of the Public Key algorithm of the signature algorithm, e.g. </p> <p>POLARSSL_PK_RSA </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00095">95</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="aaa20d3625961655031604d587d40ad9f"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__x509__module.html#gae9790f007179523cf0a054090484e5bb">x509_name</a> _x509_crt::subject</td> </tr> </table> </div><div class="memdoc"> <p>The parsed subject data (named information object). </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00070">70</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="af96ed7e509440ffce0cbf87735afa4b9"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__x509__module.html#ga5e8f63c6d3abf6955eb6190a19360fca">x509_sequence</a> _x509_crt::subject_alt_names</td> </tr> </table> </div><div class="memdoc"> <p>Optional list of Subject Alternative Names (Only dNSName supported). </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00080">80</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="a02b5906534bd0dd7d27e84215e885888"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a> _x509_crt::subject_id</td> </tr> </table> </div><div class="memdoc"> <p>Optional X.509 v2/v3 subject unique identifier. </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00078">78</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="a9d565e1b087066b8e9cb293bf8b9562a"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a> _x509_crt::subject_raw</td> </tr> </table> </div><div class="memdoc"> <p>The raw subject data (DER). </p> <p>Used for quick comparison. </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00067">67</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="aa3e2e8dba6eedabdac8a59711f466925"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a> _x509_crt::tbs</td> </tr> </table> </div><div class="memdoc"> <p>The raw certificate body (DER). </p> <p>The part that is To Be Signed. </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00060">60</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="a1308156c29933fc016e4848b10ca78de"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a> _x509_crt::v3_ext</td> </tr> </table> </div><div class="memdoc"> <p>Optional X.509 v3 extensions. </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00079">79</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="a6327ca2c2b95bfead7ac5ef37832f59b"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__x509__module.html#ga51a234c4cead82f9678485379c5de825">x509_time</a> _x509_crt::valid_from</td> </tr> </table> </div><div class="memdoc"> <p>Start time of certificate validity. </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00072">72</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="a03898cad1ed7f09b1032f3a7b4ff515a"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group__x509__module.html#ga51a234c4cead82f9678485379c5de825">x509_time</a> _x509_crt::valid_to</td> </tr> </table> </div><div class="memdoc"> <p>End time of certificate validity. </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00073">73</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <a class="anchor" id="a5cc6318c8e0977a1d49fc80facc164ae"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int _x509_crt::version</td> </tr> </table> </div><div class="memdoc"> <p>The X.509 version. </p> <p>(1=v1, 2=v2, 3=v3) </p> <p>Definition at line <a class="el" href="x509__crt_8h_source.html#l00062">62</a> of file <a class="el" href="x509__crt_8h_source.html">x509_crt.h</a>.</p> </div> </div> <hr/>The documentation for this struct was generated from the following file:<ul> <li><a class="el" href="x509__crt_8h_source.html">x509_crt.h</a></li> </ul> </div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated on Thu Jul 31 2014 11:35:56 for PolarSSL v1.3.8 by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.5 </small></address> </body> </html>