Sophie

Sophie

distrib > Mageia > 4 > x86_64 > by-pkgid > 9e72f3e7ecf68cce016a7c5c59e863d3 > files > 1199

lib64polarssl-devel-1.3.8-1.mga4.x86_64.rpm

<!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.h Source File</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&#160;Page</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_6a9bbd12bf4e19a18c45e270f8fae3fd.html">include</a></li><li class="navelem"><a class="el" href="dir_04272d44da4745cf8b8bfc767d6c6523.html">polarssl</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="headertitle">
<div class="title">x509.h</div>  </div>
</div><!--header-->
<div class="contents">
<a href="x509_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div>
<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#ifndef POLARSSL_X509_H</span></div>
<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define POLARSSL_X509_H</span></div>
<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#if !defined(POLARSSL_CONFIG_FILE)</span></div>
<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &quot;<a class="code" href="config_8h.html">config.h</a>&quot;</span></div>
<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include POLARSSL_CONFIG_FILE</span></div>
<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="asn1_8h.html">asn1.h</a>&quot;</span></div>
<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="pk_8h.html">pk.h</a>&quot;</span></div>
<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;</div>
<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">#if defined(POLARSSL_RSA_C)</span></div>
<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &quot;<a class="code" href="rsa_8h.html">rsa.h</a>&quot;</span></div>
<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="group__x509__module.html#gaa1ff85472d1f06bac7aadef70dbc404f">   52</a></span>&#160;<span class="preprocessor">#define POLARSSL_ERR_X509_FEATURE_UNAVAILABLE              -0x2080  </span></div>
<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="group__x509__module.html#ga55c4c1d62914da0514be0e48c02a91f6">   53</a></span>&#160;<span class="preprocessor">#define POLARSSL_ERR_X509_UNKNOWN_OID                      -0x2100  </span></div>
<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="group__x509__module.html#gabbb0baf5d3e9281b059e3177138f4eaf">   54</a></span>&#160;<span class="preprocessor">#define POLARSSL_ERR_X509_INVALID_FORMAT                   -0x2180  </span></div>
<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="group__x509__module.html#ga7fb5d1b9bb950f41cf57a6e156a318ff">   55</a></span>&#160;<span class="preprocessor">#define POLARSSL_ERR_X509_INVALID_VERSION                  -0x2200  </span></div>
<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="group__x509__module.html#ga5dfc778ab9a1d46f8c31296050fb0e84">   56</a></span>&#160;<span class="preprocessor">#define POLARSSL_ERR_X509_INVALID_SERIAL                   -0x2280  </span></div>
<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="group__x509__module.html#gac2a509391d78d52ac972979a8c149aaa">   57</a></span>&#160;<span class="preprocessor">#define POLARSSL_ERR_X509_INVALID_ALG                      -0x2300  </span></div>
<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="group__x509__module.html#ga3cf47af101f614432b19192a7a239fe3">   58</a></span>&#160;<span class="preprocessor">#define POLARSSL_ERR_X509_INVALID_NAME                     -0x2380  </span></div>
<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="group__x509__module.html#ga4c0033b4b5ea413f79b133b9172d967b">   59</a></span>&#160;<span class="preprocessor">#define POLARSSL_ERR_X509_INVALID_DATE                     -0x2400  </span></div>
<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="group__x509__module.html#ga56da6070740e4f0e102fd473dbe54b8c">   60</a></span>&#160;<span class="preprocessor">#define POLARSSL_ERR_X509_INVALID_SIGNATURE                -0x2480  </span></div>
<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="group__x509__module.html#gaefb797397f3fc132f0d825b77b10ff47">   61</a></span>&#160;<span class="preprocessor">#define POLARSSL_ERR_X509_INVALID_EXTENSIONS               -0x2500  </span></div>
<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="group__x509__module.html#ga04dc192b55781ef24910bd1dfa53e6f3">   62</a></span>&#160;<span class="preprocessor">#define POLARSSL_ERR_X509_UNKNOWN_VERSION                  -0x2580  </span></div>
<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="group__x509__module.html#ga87606217fba12ea921df66f51ad8c2e9">   63</a></span>&#160;<span class="preprocessor">#define POLARSSL_ERR_X509_UNKNOWN_SIG_ALG                  -0x2600  </span></div>
<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="group__x509__module.html#gac00b6c62043eca7ddf8809888961454b">   64</a></span>&#160;<span class="preprocessor">#define POLARSSL_ERR_X509_SIG_MISMATCH                     -0x2680  </span></div>
<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="group__x509__module.html#ga2712a2708993f706e6c3f3716ec1f275">   65</a></span>&#160;<span class="preprocessor">#define POLARSSL_ERR_X509_CERT_VERIFY_FAILED               -0x2700  </span></div>
<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="group__x509__module.html#ga2a86f0efb25d083307eadf96585d4222">   66</a></span>&#160;<span class="preprocessor">#define POLARSSL_ERR_X509_CERT_UNKNOWN_FORMAT              -0x2780  </span></div>
<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="group__x509__module.html#ga59ea8fbabf8eae3f006824230bc27d6c">   67</a></span>&#160;<span class="preprocessor">#define POLARSSL_ERR_X509_BAD_INPUT_DATA                   -0x2800  </span></div>
<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="group__x509__module.html#ga60a90a6a7f6ee7a23c186d6870d8e4c8">   68</a></span>&#160;<span class="preprocessor">#define POLARSSL_ERR_X509_MALLOC_FAILED                    -0x2880  </span></div>
<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="group__x509__module.html#ga87e65fdadeba914a5555ef09ab35c48b">   69</a></span>&#160;<span class="preprocessor">#define POLARSSL_ERR_X509_FILE_IO_ERROR                    -0x2900  </span></div>
<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="preprocessor"></span><span class="comment">/* \} name */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="group__x509__module.html#ga64e936014215ef18f026ff101b6f8369">   76</a></span>&#160;<span class="preprocessor">#define BADCERT_EXPIRED             0x01  </span></div>
<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="group__x509__module.html#ga4ecb1ad0da0f9d6bb0017e091ea4ee2a">   77</a></span>&#160;<span class="preprocessor">#define BADCERT_REVOKED             0x02  </span></div>
<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="group__x509__module.html#gacfafc04b8cd60bd1819cf41bc78a24de">   78</a></span>&#160;<span class="preprocessor">#define BADCERT_CN_MISMATCH         0x04  </span></div>
<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="group__x509__module.html#ga71c9686585580f77964a3653e147ad0a">   79</a></span>&#160;<span class="preprocessor">#define BADCERT_NOT_TRUSTED         0x08  </span></div>
<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="group__x509__module.html#gad3e80bd3df035edaa81dcd44da586153">   80</a></span>&#160;<span class="preprocessor">#define BADCRL_NOT_TRUSTED          0x10  </span></div>
<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="group__x509__module.html#gad5d4bfa3090cb468e734596094f39a1f">   81</a></span>&#160;<span class="preprocessor">#define BADCRL_EXPIRED              0x20  </span></div>
<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="group__x509__module.html#ga99f857088210c1d15a11039026830a0d">   82</a></span>&#160;<span class="preprocessor">#define BADCERT_MISSING             0x40  </span></div>
<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="group__x509__module.html#ga70f5b5dce099c759ac5a49489587c385">   83</a></span>&#160;<span class="preprocessor">#define BADCERT_SKIP_VERIFY         0x80  </span></div>
<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="group__x509__module.html#gabeaea946ef3512d85af10fd3f16b2b5f">   84</a></span>&#160;<span class="preprocessor">#define BADCERT_OTHER             0x0100  </span></div>
<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="group__x509__module.html#ga277aa22d31ad26e5256ec96e589bd5b9">   85</a></span>&#160;<span class="preprocessor">#define BADCERT_FUTURE            0x0200  </span></div>
<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="group__x509__module.html#ga8dbe1ef936bb47a2f13759e7e4380be0">   86</a></span>&#160;<span class="preprocessor">#define BADCRL_FUTURE             0x0400  </span></div>
<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;<span class="preprocessor"></span><span class="comment">/* \} name */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;<span class="preprocessor"></span><span class="comment">/* \} addtogroup x509_module */</span></div>
<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;</div>
<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;<span class="comment"> * X.509 v3 Key Usage Extension flags</span></div>
<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="x509_8h.html#a34abc95bf0fa471e18d1dd3b295492f6">   93</a></span>&#160;<span class="preprocessor">#define KU_DIGITAL_SIGNATURE            (0x80)  </span><span class="comment">/* bit 0 */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="x509_8h.html#aa97f2a6fc340bc3a22004fe7a245a1c6">   94</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define KU_NON_REPUDIATION              (0x40)  </span><span class="comment">/* bit 1 */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="x509_8h.html#a64f1e2e3dd57557fdad2ca9c07f63ec4">   95</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define KU_KEY_ENCIPHERMENT             (0x20)  </span><span class="comment">/* bit 2 */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="x509_8h.html#a5d7af2d0048312e611b8af54eabd064a">   96</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define KU_DATA_ENCIPHERMENT            (0x10)  </span><span class="comment">/* bit 3 */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="x509_8h.html#a349ec0e59749ed5ca9ac9e030c06049f">   97</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define KU_KEY_AGREEMENT                (0x08)  </span><span class="comment">/* bit 4 */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="x509_8h.html#a5da71e896dc465af98e4004ea40eb230">   98</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define KU_KEY_CERT_SIGN                (0x04)  </span><span class="comment">/* bit 5 */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="x509_8h.html#a14185258174d3ae78dbccd55de36b0a8">   99</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define KU_CRL_SIGN                     (0x02)  </span><span class="comment">/* bit 6 */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;<span class="comment"> * Netscape certificate types</span></div>
<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;<span class="comment"> * (http://www.mozilla.org/projects/security/pki/nss/tech-notes/tn3.html)</span></div>
<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;</div>
<div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="x509_8h.html#a1720f538cb0b7efa97d134ac6692192a">  106</a></span>&#160;<span class="preprocessor">#define NS_CERT_TYPE_SSL_CLIENT         (0x80)  </span><span class="comment">/* bit 0 */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="x509_8h.html#a725ac67650ba113b8a8938e1f9cdb073">  107</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define NS_CERT_TYPE_SSL_SERVER         (0x40)  </span><span class="comment">/* bit 1 */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="x509_8h.html#aa06876013b3e2b9098529e18e17e96e9">  108</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define NS_CERT_TYPE_EMAIL              (0x20)  </span><span class="comment">/* bit 2 */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="x509_8h.html#ab74494b8a65972aebb605bdd9680d545">  109</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define NS_CERT_TYPE_OBJECT_SIGNING     (0x10)  </span><span class="comment">/* bit 3 */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="x509_8h.html#a387e2b15df37666dfd95646bf647dae1">  110</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define NS_CERT_TYPE_RESERVED           (0x08)  </span><span class="comment">/* bit 4 */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="x509_8h.html#a9f5cdaf33a0371bdd6893f7c36acf8ef">  111</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define NS_CERT_TYPE_SSL_CA             (0x04)  </span><span class="comment">/* bit 5 */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="x509_8h.html#a62f25762eb59728f92b07d61ae2057a5">  112</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define NS_CERT_TYPE_EMAIL_CA           (0x02)  </span><span class="comment">/* bit 6 */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="x509_8h.html#a57c9011afb5ab5f02020e1e31b43b871">  113</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define NS_CERT_TYPE_OBJECT_SIGNING_CA  (0x01)  </span><span class="comment">/* bit 7 */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;<span class="comment"> * X.509 extension types</span></div>
<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;<span class="comment"> * Comments refer to the status for using certificates. Status can be</span></div>
<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;<span class="comment"> * different for writing certificates or reading CRLs or CSRs.</span></div>
<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="x509_8h.html#a428fea8893da65b2dcfc971ead294c67">  121</a></span>&#160;<span class="preprocessor">#define EXT_AUTHORITY_KEY_IDENTIFIER    (1 &lt;&lt; 0)</span></div>
<div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="x509_8h.html#af918b482ca119bfc67935caa07d3e248">  122</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define EXT_SUBJECT_KEY_IDENTIFIER      (1 &lt;&lt; 1)</span></div>
<div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="x509_8h.html#ac59433ad6f1280708a8409937133d4c1">  123</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define EXT_KEY_USAGE                   (1 &lt;&lt; 2)    </span><span class="comment">/* Parsed but not used */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="x509_8h.html#a89bed13c425f192607aac9712adc5655">  124</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define EXT_CERTIFICATE_POLICIES        (1 &lt;&lt; 3)</span></div>
<div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="x509_8h.html#ad264a8f9ed49bc0a40cf21ee7213216e">  125</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define EXT_POLICY_MAPPINGS             (1 &lt;&lt; 4)</span></div>
<div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="x509_8h.html#aa86a67d1a8363fd5bbdaba523163a269">  126</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define EXT_SUBJECT_ALT_NAME            (1 &lt;&lt; 5)    </span><span class="comment">/* Supported (DNS) */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="x509_8h.html#a1e3ae3cafc339ef7ac83aa01b7aec3b1">  127</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define EXT_ISSUER_ALT_NAME             (1 &lt;&lt; 6)</span></div>
<div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="x509_8h.html#a6513410277596ad6cfdaafe753e9002f">  128</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define EXT_SUBJECT_DIRECTORY_ATTRS     (1 &lt;&lt; 7)</span></div>
<div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="x509_8h.html#a7813d9ed1f4ee1f122782d31f459d989">  129</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define EXT_BASIC_CONSTRAINTS           (1 &lt;&lt; 8)    </span><span class="comment">/* Supported */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="x509_8h.html#aafe3736b82c3f5d6343379bb6a8ec000">  130</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define EXT_NAME_CONSTRAINTS            (1 &lt;&lt; 9)</span></div>
<div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="x509_8h.html#a24e47a2fb35635684cc6e33c1543faa0">  131</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define EXT_POLICY_CONSTRAINTS          (1 &lt;&lt; 10)</span></div>
<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="x509_8h.html#a97bef6a8c3abaf7755b95d997f9af98e">  132</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define EXT_EXTENDED_KEY_USAGE          (1 &lt;&lt; 11)   </span><span class="comment">/* Parsed but not used */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="x509_8h.html#a00ae4f8608f1369a993c14a09909254e">  133</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define EXT_CRL_DISTRIBUTION_POINTS     (1 &lt;&lt; 12)</span></div>
<div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="x509_8h.html#a0b7304f4fdd5fa11b58018cffabe1d98">  134</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define EXT_INIHIBIT_ANYPOLICY          (1 &lt;&lt; 13)</span></div>
<div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="x509_8h.html#a789934a5dcd8b306a887e4b1445e4fcc">  135</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define EXT_FRESHEST_CRL                (1 &lt;&lt; 14)</span></div>
<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="x509_8h.html#ab82dcddf27656a1bc2efacc9589838db">  137</a></span>&#160;<span class="preprocessor">#define EXT_NS_CERT_TYPE                (1 &lt;&lt; 16)   </span><span class="comment">/* Parsed (and then ?) */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;<span class="comment"> * Storage format identifiers</span></div>
<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;<span class="comment"> * Recognized formats: PEM and DER</span></div>
<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00143"></a><span class="lineno"><a class="line" href="x509_8h.html#a6ca31be06f89a3f5c8abc93654460a77">  143</a></span>&#160;<span class="preprocessor">#define X509_FORMAT_DER                 1</span></div>
<div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="x509_8h.html#ae61b2a208043d2d1cfdfea019a15c59b">  144</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define X509_FORMAT_PEM                 2</span></div>
<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">  162</a></span>&#160;<span class="keyword">typedef</span> <a class="code" href="struct__asn1__buf.html">asn1_buf</a> <a class="code" href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a>;</div>
<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;</div>
<div class="line"><a name="l00167"></a><span class="lineno"><a class="line" href="group__x509__module.html#ga937771cfbc29ed68fa7a1f000bdaada7">  167</a></span>&#160;<span class="keyword">typedef</span> <a class="code" href="struct__asn1__bitstring.html">asn1_bitstring</a> <a class="code" href="group__x509__module.html#ga937771cfbc29ed68fa7a1f000bdaada7">x509_bitstring</a>;</div>
<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;</div>
<div class="line"><a name="l00173"></a><span class="lineno"><a class="line" href="group__x509__module.html#gae9790f007179523cf0a054090484e5bb">  173</a></span>&#160;<span class="keyword">typedef</span> <a class="code" href="struct__asn1__named__data.html">asn1_named_data</a> <a class="code" href="group__x509__module.html#gae9790f007179523cf0a054090484e5bb">x509_name</a>;</div>
<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;</div>
<div class="line"><a name="l00178"></a><span class="lineno"><a class="line" href="group__x509__module.html#ga5e8f63c6d3abf6955eb6190a19360fca">  178</a></span>&#160;<span class="keyword">typedef</span> <a class="code" href="struct__asn1__sequence.html">asn1_sequence</a> <a class="code" href="group__x509__module.html#ga5e8f63c6d3abf6955eb6190a19360fca">x509_sequence</a>;</div>
<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;</div>
<div class="line"><a name="l00181"></a><span class="lineno"><a class="line" href="struct__x509__time.html">  181</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct__x509__time.html">_x509_time</a></div>
<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;{</div>
<div class="line"><a name="l00183"></a><span class="lineno"><a class="line" href="struct__x509__time.html#a26ed64caf8b2d05ecb82c0ed68113bc5">  183</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="struct__x509__time.html#a26ed64caf8b2d05ecb82c0ed68113bc5">year</a>, <a class="code" href="struct__x509__time.html#aa89934c680dcbbb1a74a6ff3f83da264">mon</a>, <a class="code" href="struct__x509__time.html#a20c84d21414653a33595ea4563c49b46">day</a>;         </div>
<div class="line"><a name="l00184"></a><span class="lineno"><a class="line" href="struct__x509__time.html#a61b09ab58c9d829c4a258ac1a63fff3d">  184</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="struct__x509__time.html#a52a420b0bb4513b257c239f967187d97">hour</a>, <a class="code" href="struct__x509__time.html#a7ef645e874ef1dac4767713f131f6425">min</a>, <a class="code" href="struct__x509__time.html#a61b09ab58c9d829c4a258ac1a63fff3d">sec</a>;         </div>
<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;}</div>
<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;<a class="code" href="group__x509__module.html#ga51a234c4cead82f9678485379c5de825">x509_time</a>;</div>
<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;</div>
<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;<span class="keywordtype">int</span> <a class="code" href="x509_8h.html#a4efdfbe50891c916ade3170b91faeebc">x509_dn_gets</a>( <span class="keywordtype">char</span> *buf, <span class="keywordtype">size_t</span> size, <span class="keyword">const</span> x509_name *dn );</div>
<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;</div>
<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;<span class="keywordtype">int</span> <a class="code" href="x509_8h.html#acd36d794a8edbbf66fe2e267d8804854">x509_serial_gets</a>( <span class="keywordtype">char</span> *buf, <span class="keywordtype">size_t</span> size, <span class="keyword">const</span> x509_buf *serial );</div>
<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;</div>
<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="x509_8h.html#aa68957e4f8e9ca8227151442d487d49c">x509_oid_get_description</a>( x509_buf *oid );</div>
<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;</div>
<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;<span class="keywordtype">int</span> <a class="code" href="x509_8h.html#afa4caf80057d82c702984da1ea7649b9">x509_oid_get_numeric_string</a>( <span class="keywordtype">char</span> *buf, <span class="keywordtype">size_t</span> size, x509_buf *oid );</div>
<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;</div>
<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;<span class="keywordtype">int</span> <a class="code" href="x509_8h.html#a0409eb86cad22e4ecf3b31585bd1aca8">x509_time_expired</a>( <span class="keyword">const</span> <a class="code" href="struct__x509__time.html">x509_time</a> *time );</div>
<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;</div>
<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;<span class="keywordtype">int</span> <a class="code" href="x509_8h.html#a3ce3d173dfc128c33f1df4e3250821d2">x509_time_future</a>( <span class="keyword">const</span> <a class="code" href="struct__x509__time.html">x509_time</a> *time );</div>
<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;</div>
<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;<span class="keywordtype">int</span> <a class="code" href="x509_8h.html#a4a038a644bb6f527315bcfdea826bf79">x509_self_test</a>( <span class="keywordtype">int</span> verbose );</div>
<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;</div>
<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;<span class="comment"> * Internal module functions. You probably do not want to use these unless you</span></div>
<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;<span class="comment"> * know you do.</span></div>
<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;<span class="keywordtype">int</span> <a class="code" href="x509_8h.html#adda289450390e9ed0090e7c0ec6fa299">x509_get_name</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> **p, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *end,</div>
<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;                   x509_name *cur );</div>
<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;<span class="keywordtype">int</span> <a class="code" href="x509_8h.html#ad67eae159411772953e5459ec4932cac">x509_get_alg_null</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> **p, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *end,</div>
<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;                       x509_buf *alg );</div>
<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;<span class="keywordtype">int</span> <a class="code" href="x509_8h.html#a159024a3c36c9088b4af1437f937f4fe">x509_get_alg</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> **p, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *end,</div>
<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;                  x509_buf *alg, x509_buf *params );</div>
<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;<span class="preprocessor">#if defined(POLARSSL_X509_RSASSA_PSS_SUPPORT)</span></div>
<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;<span class="preprocessor"></span><span class="keywordtype">int</span> <a class="code" href="x509_8h.html#ade4172d01a9d1b9ae86e1ec08606bc68">x509_get_rsassa_pss_params</a>( <span class="keyword">const</span> x509_buf *params,</div>
<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;                                <a class="code" href="md_8h.html#af1fbbb67afa0daee4090cde8864e0b68">md_type_t</a> *md_alg, <a class="code" href="md_8h.html#af1fbbb67afa0daee4090cde8864e0b68">md_type_t</a> *mgf_md,</div>
<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;                                <span class="keywordtype">int</span> *salt_len );</div>
<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;<span class="preprocessor"></span><span class="keywordtype">int</span> <a class="code" href="x509_8h.html#afef25b57c521744eb0edcb08e38521c5">x509_get_sig</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> **p, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *end, x509_buf *sig );</div>
<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;<span class="keywordtype">int</span> <a class="code" href="x509_8h.html#acb386c6cbfb8bd9160b34ad6a0430a87">x509_get_sig_alg</a>( <span class="keyword">const</span> x509_buf *sig_oid, <span class="keyword">const</span> x509_buf *sig_params,</div>
<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;                      <a class="code" href="md_8h.html#af1fbbb67afa0daee4090cde8864e0b68">md_type_t</a> *md_alg, <a class="code" href="pk_8h.html#afca3aa33cb1f34742a7ee3fd8ccec9ca">pk_type_t</a> *pk_alg,</div>
<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;                      <span class="keywordtype">void</span> **sig_opts );</div>
<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;<span class="keywordtype">int</span> <a class="code" href="x509_8h.html#ace702be6b8cff538d3bfef72d2591741">x509_get_time</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> **p, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *end,</div>
<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;                   <a class="code" href="struct__x509__time.html">x509_time</a> *time );</div>
<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;<span class="keywordtype">int</span> <a class="code" href="x509_8h.html#af42889af2745403af6f110aef5e4c1aa">x509_get_serial</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> **p, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *end,</div>
<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;                     x509_buf *serial );</div>
<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;<span class="keywordtype">int</span> <a class="code" href="x509_8h.html#a883f07d87bb5745b334dce6018828536">x509_get_ext</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> **p, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *end,</div>
<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;                  x509_buf *ext, <span class="keywordtype">int</span> tag );</div>
<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;<span class="keywordtype">int</span> <a class="code" href="x509_8h.html#a13d8b17b30fcdaa5038082b89e72957a">x509_load_file</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> *path, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> **buf, <span class="keywordtype">size_t</span> *n );</div>
<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;<span class="keywordtype">int</span> <a class="code" href="x509_8h.html#ab5d6d2b4ddcd6caf33c2cb05af506ff5">x509_sig_alg_gets</a>( <span class="keywordtype">char</span> *buf, <span class="keywordtype">size_t</span> size, <span class="keyword">const</span> x509_buf *sig_oid,</div>
<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;                       <a class="code" href="pk_8h.html#afca3aa33cb1f34742a7ee3fd8ccec9ca">pk_type_t</a> pk_alg, <a class="code" href="md_8h.html#af1fbbb67afa0daee4090cde8864e0b68">md_type_t</a> md_alg,</div>
<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;                       <span class="keyword">const</span> <span class="keywordtype">void</span> *sig_opts );</div>
<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;<span class="keywordtype">int</span> <a class="code" href="x509_8h.html#a1e7659be2b5cf7fb32709dbe72f0cf45">x509_key_size_helper</a>( <span class="keywordtype">char</span> *buf, <span class="keywordtype">size_t</span> size, <span class="keyword">const</span> <span class="keywordtype">char</span> *name );</div>
<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;<span class="keywordtype">int</span> <a class="code" href="x509_8h.html#a3666ef0b2efcea9f796934838b77e22d">x509_string_to_names</a>( <a class="code" href="struct__asn1__named__data.html">asn1_named_data</a> **head, <span class="keyword">const</span> <span class="keywordtype">char</span> *name );</div>
<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;<span class="keywordtype">int</span> <a class="code" href="x509_8h.html#a72f0ed4616b935607f85c2c4b69edc6c">x509_set_extension</a>( <a class="code" href="struct__asn1__named__data.html">asn1_named_data</a> **head, <span class="keyword">const</span> <span class="keywordtype">char</span> *oid, <span class="keywordtype">size_t</span> oid_len,</div>
<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;                        <span class="keywordtype">int</span> critical, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *val,</div>
<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;                        <span class="keywordtype">size_t</span> val_len );</div>
<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;<span class="keywordtype">int</span> <a class="code" href="x509_8h.html#aed86dcaf162afcf4aa56915e96cfd34d">x509_write_extensions</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> **p, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *start,</div>
<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;                           <a class="code" href="struct__asn1__named__data.html">asn1_named_data</a> *first );</div>
<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;<span class="keywordtype">int</span> <a class="code" href="x509_8h.html#aa8f68655e53994c9d72f31c3820b4532">x509_write_names</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> **p, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *start,</div>
<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;                      <a class="code" href="struct__asn1__named__data.html">asn1_named_data</a> *first );</div>
<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;<span class="keywordtype">int</span> <a class="code" href="x509_8h.html#ab29278d4fbc4426748e95ac960d7c1fa">x509_write_sig</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> **p, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *start,</div>
<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;                    <span class="keyword">const</span> <span class="keywordtype">char</span> *oid, <span class="keywordtype">size_t</span> oid_len,</div>
<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;                    <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *sig, <span class="keywordtype">size_t</span> size );</div>
<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;</div>
<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;<span class="preprocessor"></span>}</div>
<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* x509.h */</span><span class="preprocessor"></span></div>
<div class="ttc" id="x509_8h_html_a0409eb86cad22e4ecf3b31585bd1aca8"><div class="ttname"><a href="x509_8h.html#a0409eb86cad22e4ecf3b31585bd1aca8">x509_time_expired</a></div><div class="ttdeci">int x509_time_expired(const x509_time *time)</div><div class="ttdoc">Check a given x509_time against the system time and check if it is not expired. </div></div>
<div class="ttc" id="x509_8h_html_a72f0ed4616b935607f85c2c4b69edc6c"><div class="ttname"><a href="x509_8h.html#a72f0ed4616b935607f85c2c4b69edc6c">x509_set_extension</a></div><div class="ttdeci">int x509_set_extension(asn1_named_data **head, const char *oid, size_t oid_len, int critical, const unsigned char *val, size_t val_len)</div></div>
<div class="ttc" id="x509_8h_html_a3666ef0b2efcea9f796934838b77e22d"><div class="ttname"><a href="x509_8h.html#a3666ef0b2efcea9f796934838b77e22d">x509_string_to_names</a></div><div class="ttdeci">int x509_string_to_names(asn1_named_data **head, const char *name)</div></div>
<div class="ttc" id="group__x509__module_html_ga51a234c4cead82f9678485379c5de825"><div class="ttname"><a href="group__x509__module.html#ga51a234c4cead82f9678485379c5de825">x509_time</a></div><div class="ttdeci">struct _x509_time x509_time</div><div class="ttdoc">Container for date and time (precision in seconds). </div></div>
<div class="ttc" id="struct__x509__time_html_a61b09ab58c9d829c4a258ac1a63fff3d"><div class="ttname"><a href="struct__x509__time.html#a61b09ab58c9d829c4a258ac1a63fff3d">_x509_time::sec</a></div><div class="ttdeci">int sec</div><div class="ttdoc">Time. </div><div class="ttdef"><b>Definition:</b> <a href="x509_8h_source.html#l00184">x509.h:184</a></div></div>
<div class="ttc" id="x509_8h_html_adda289450390e9ed0090e7c0ec6fa299"><div class="ttname"><a href="x509_8h.html#adda289450390e9ed0090e7c0ec6fa299">x509_get_name</a></div><div class="ttdeci">int x509_get_name(unsigned char **p, const unsigned char *end, x509_name *cur)</div></div>
<div class="ttc" id="x509_8h_html_af42889af2745403af6f110aef5e4c1aa"><div class="ttname"><a href="x509_8h.html#af42889af2745403af6f110aef5e4c1aa">x509_get_serial</a></div><div class="ttdeci">int x509_get_serial(unsigned char **p, const unsigned char *end, x509_buf *serial)</div></div>
<div class="ttc" id="x509_8h_html_acb386c6cbfb8bd9160b34ad6a0430a87"><div class="ttname"><a href="x509_8h.html#acb386c6cbfb8bd9160b34ad6a0430a87">x509_get_sig_alg</a></div><div class="ttdeci">int x509_get_sig_alg(const x509_buf *sig_oid, const x509_buf *sig_params, md_type_t *md_alg, pk_type_t *pk_alg, void **sig_opts)</div></div>
<div class="ttc" id="x509_8h_html_a1e7659be2b5cf7fb32709dbe72f0cf45"><div class="ttname"><a href="x509_8h.html#a1e7659be2b5cf7fb32709dbe72f0cf45">x509_key_size_helper</a></div><div class="ttdeci">int x509_key_size_helper(char *buf, size_t size, const char *name)</div></div>
<div class="ttc" id="x509_8h_html_aa68957e4f8e9ca8227151442d487d49c"><div class="ttname"><a href="x509_8h.html#aa68957e4f8e9ca8227151442d487d49c">x509_oid_get_description</a></div><div class="ttdeci">const char * x509_oid_get_description(x509_buf *oid)</div><div class="ttdoc">Give an known OID, return its descriptive string. </div></div>
<div class="ttc" id="x509_8h_html_ad67eae159411772953e5459ec4932cac"><div class="ttname"><a href="x509_8h.html#ad67eae159411772953e5459ec4932cac">x509_get_alg_null</a></div><div class="ttdeci">int x509_get_alg_null(unsigned char **p, const unsigned char *end, x509_buf *alg)</div></div>
<div class="ttc" id="struct__x509__time_html"><div class="ttname"><a href="struct__x509__time.html">_x509_time</a></div><div class="ttdoc">Container for date and time (precision in seconds). </div><div class="ttdef"><b>Definition:</b> <a href="x509_8h_source.html#l00181">x509.h:181</a></div></div>
<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div><div class="ttdoc">Configuration options (set of defines) </div></div>
<div class="ttc" id="x509_8h_html_afef25b57c521744eb0edcb08e38521c5"><div class="ttname"><a href="x509_8h.html#afef25b57c521744eb0edcb08e38521c5">x509_get_sig</a></div><div class="ttdeci">int x509_get_sig(unsigned char **p, const unsigned char *end, x509_buf *sig)</div></div>
<div class="ttc" id="struct__asn1__bitstring_html"><div class="ttname"><a href="struct__asn1__bitstring.html">_asn1_bitstring</a></div><div class="ttdoc">Container for ASN1 bit strings. </div><div class="ttdef"><b>Definition:</b> <a href="asn1_8h_source.html#l00135">asn1.h:135</a></div></div>
<div class="ttc" id="pk_8h_html"><div class="ttname"><a href="pk_8h.html">pk.h</a></div><div class="ttdoc">Public Key abstraction layer. </div></div>
<div class="ttc" id="group__x509__module_html_gae9790f007179523cf0a054090484e5bb"><div class="ttname"><a href="group__x509__module.html#gae9790f007179523cf0a054090484e5bb">x509_name</a></div><div class="ttdeci">asn1_named_data x509_name</div><div class="ttdoc">Container for ASN1 named information objects. </div><div class="ttdef"><b>Definition:</b> <a href="x509_8h_source.html#l00173">x509.h:173</a></div></div>
<div class="ttc" id="x509_8h_html_a159024a3c36c9088b4af1437f937f4fe"><div class="ttname"><a href="x509_8h.html#a159024a3c36c9088b4af1437f937f4fe">x509_get_alg</a></div><div class="ttdeci">int x509_get_alg(unsigned char **p, const unsigned char *end, x509_buf *alg, x509_buf *params)</div></div>
<div class="ttc" id="md_8h_html_af1fbbb67afa0daee4090cde8864e0b68"><div class="ttname"><a href="md_8h.html#af1fbbb67afa0daee4090cde8864e0b68">md_type_t</a></div><div class="ttdeci">md_type_t</div><div class="ttdef"><b>Definition:</b> <a href="md_8h_source.html#l00051">md.h:51</a></div></div>
<div class="ttc" id="struct__x509__time_html_a52a420b0bb4513b257c239f967187d97"><div class="ttname"><a href="struct__x509__time.html#a52a420b0bb4513b257c239f967187d97">_x509_time::hour</a></div><div class="ttdeci">int hour</div><div class="ttdef"><b>Definition:</b> <a href="x509_8h_source.html#l00184">x509.h:184</a></div></div>
<div class="ttc" id="struct__x509__time_html_aa89934c680dcbbb1a74a6ff3f83da264"><div class="ttname"><a href="struct__x509__time.html#aa89934c680dcbbb1a74a6ff3f83da264">_x509_time::mon</a></div><div class="ttdeci">int mon</div><div class="ttdef"><b>Definition:</b> <a href="x509_8h_source.html#l00183">x509.h:183</a></div></div>
<div class="ttc" id="struct__asn1__sequence_html"><div class="ttname"><a href="struct__asn1__sequence.html">_asn1_sequence</a></div><div class="ttdoc">Container for a sequence of ASN.1 items. </div><div class="ttdef"><b>Definition:</b> <a href="asn1_8h_source.html#l00146">asn1.h:146</a></div></div>
<div class="ttc" id="x509_8h_html_aa8f68655e53994c9d72f31c3820b4532"><div class="ttname"><a href="x509_8h.html#aa8f68655e53994c9d72f31c3820b4532">x509_write_names</a></div><div class="ttdeci">int x509_write_names(unsigned char **p, unsigned char *start, asn1_named_data *first)</div></div>
<div class="ttc" id="x509_8h_html_ace702be6b8cff538d3bfef72d2591741"><div class="ttname"><a href="x509_8h.html#ace702be6b8cff538d3bfef72d2591741">x509_get_time</a></div><div class="ttdeci">int x509_get_time(unsigned char **p, const unsigned char *end, x509_time *time)</div></div>
<div class="ttc" id="asn1_8h_html"><div class="ttname"><a href="asn1_8h.html">asn1.h</a></div><div class="ttdoc">Generic ASN.1 parsing. </div></div>
<div class="ttc" id="x509_8h_html_a4efdfbe50891c916ade3170b91faeebc"><div class="ttname"><a href="x509_8h.html#a4efdfbe50891c916ade3170b91faeebc">x509_dn_gets</a></div><div class="ttdeci">int x509_dn_gets(char *buf, size_t size, const x509_name *dn)</div><div class="ttdoc">Store the certificate DN in printable form into buf; no more than size characters will be written...</div></div>
<div class="ttc" id="x509_8h_html_aed86dcaf162afcf4aa56915e96cfd34d"><div class="ttname"><a href="x509_8h.html#aed86dcaf162afcf4aa56915e96cfd34d">x509_write_extensions</a></div><div class="ttdeci">int x509_write_extensions(unsigned char **p, unsigned char *start, asn1_named_data *first)</div></div>
<div class="ttc" id="x509_8h_html_afa4caf80057d82c702984da1ea7649b9"><div class="ttname"><a href="x509_8h.html#afa4caf80057d82c702984da1ea7649b9">x509_oid_get_numeric_string</a></div><div class="ttdeci">int x509_oid_get_numeric_string(char *buf, size_t size, x509_buf *oid)</div><div class="ttdoc">Give an OID, return a string version of its OID number. </div></div>
<div class="ttc" id="struct__x509__time_html_a20c84d21414653a33595ea4563c49b46"><div class="ttname"><a href="struct__x509__time.html#a20c84d21414653a33595ea4563c49b46">_x509_time::day</a></div><div class="ttdeci">int day</div><div class="ttdoc">Date. </div><div class="ttdef"><b>Definition:</b> <a href="x509_8h_source.html#l00183">x509.h:183</a></div></div>
<div class="ttc" id="pk_8h_html_afca3aa33cb1f34742a7ee3fd8ccec9ca"><div class="ttname"><a href="pk_8h.html#afca3aa33cb1f34742a7ee3fd8ccec9ca">pk_type_t</a></div><div class="ttdeci">pk_type_t</div><div class="ttdoc">Public key types. </div><div class="ttdef"><b>Definition:</b> <a href="pk_8h_source.html#l00095">pk.h:95</a></div></div>
<div class="ttc" id="x509_8h_html_ab5d6d2b4ddcd6caf33c2cb05af506ff5"><div class="ttname"><a href="x509_8h.html#ab5d6d2b4ddcd6caf33c2cb05af506ff5">x509_sig_alg_gets</a></div><div class="ttdeci">int x509_sig_alg_gets(char *buf, size_t size, const x509_buf *sig_oid, pk_type_t pk_alg, md_type_t md_alg, const void *sig_opts)</div></div>
<div class="ttc" id="x509_8h_html_a13d8b17b30fcdaa5038082b89e72957a"><div class="ttname"><a href="x509_8h.html#a13d8b17b30fcdaa5038082b89e72957a">x509_load_file</a></div><div class="ttdeci">int x509_load_file(const char *path, unsigned char **buf, size_t *n)</div></div>
<div class="ttc" id="x509_8h_html_ade4172d01a9d1b9ae86e1ec08606bc68"><div class="ttname"><a href="x509_8h.html#ade4172d01a9d1b9ae86e1ec08606bc68">x509_get_rsassa_pss_params</a></div><div class="ttdeci">int x509_get_rsassa_pss_params(const x509_buf *params, md_type_t *md_alg, md_type_t *mgf_md, int *salt_len)</div></div>
<div class="ttc" id="struct__asn1__named__data_html"><div class="ttname"><a href="struct__asn1__named__data.html">_asn1_named_data</a></div><div class="ttdoc">Container for a sequence or list of &amp;#39;named&amp;#39; ASN.1 data items. </div><div class="ttdef"><b>Definition:</b> <a href="asn1_8h_source.html#l00156">asn1.h:156</a></div></div>
<div class="ttc" id="struct__asn1__buf_html"><div class="ttname"><a href="struct__asn1__buf.html">_asn1_buf</a></div><div class="ttdoc">Type-length-value structure that allows for ASN1 using DER. </div><div class="ttdef"><b>Definition:</b> <a href="asn1_8h_source.html#l00124">asn1.h:124</a></div></div>
<div class="ttc" id="rsa_8h_html"><div class="ttname"><a href="rsa_8h.html">rsa.h</a></div><div class="ttdoc">The RSA public-key cryptosystem. </div></div>
<div class="ttc" id="struct__x509__time_html_a26ed64caf8b2d05ecb82c0ed68113bc5"><div class="ttname"><a href="struct__x509__time.html#a26ed64caf8b2d05ecb82c0ed68113bc5">_x509_time::year</a></div><div class="ttdeci">int year</div><div class="ttdef"><b>Definition:</b> <a href="x509_8h_source.html#l00183">x509.h:183</a></div></div>
<div class="ttc" id="x509_8h_html_a883f07d87bb5745b334dce6018828536"><div class="ttname"><a href="x509_8h.html#a883f07d87bb5745b334dce6018828536">x509_get_ext</a></div><div class="ttdeci">int x509_get_ext(unsigned char **p, const unsigned char *end, x509_buf *ext, int tag)</div></div>
<div class="ttc" id="struct__x509__time_html_a7ef645e874ef1dac4767713f131f6425"><div class="ttname"><a href="struct__x509__time.html#a7ef645e874ef1dac4767713f131f6425">_x509_time::min</a></div><div class="ttdeci">int min</div><div class="ttdef"><b>Definition:</b> <a href="x509_8h_source.html#l00184">x509.h:184</a></div></div>
<div class="ttc" id="x509_8h_html_ab29278d4fbc4426748e95ac960d7c1fa"><div class="ttname"><a href="x509_8h.html#ab29278d4fbc4426748e95ac960d7c1fa">x509_write_sig</a></div><div class="ttdeci">int x509_write_sig(unsigned char **p, unsigned char *start, const char *oid, size_t oid_len, unsigned char *sig, size_t size)</div></div>
<div class="ttc" id="x509_8h_html_a3ce3d173dfc128c33f1df4e3250821d2"><div class="ttname"><a href="x509_8h.html#a3ce3d173dfc128c33f1df4e3250821d2">x509_time_future</a></div><div class="ttdeci">int x509_time_future(const x509_time *time)</div><div class="ttdoc">Check a given x509_time against the system time and check if it is not from the future. </div></div>
<div class="ttc" id="group__x509__module_html_ga4c222d5841d84a018a77b3f8419141fd"><div class="ttname"><a href="group__x509__module.html#ga4c222d5841d84a018a77b3f8419141fd">x509_buf</a></div><div class="ttdeci">asn1_buf x509_buf</div><div class="ttdoc">Type-length-value structure that allows for ASN1 using DER. </div><div class="ttdef"><b>Definition:</b> <a href="x509_8h_source.html#l00162">x509.h:162</a></div></div>
<div class="ttc" id="x509_8h_html_a4a038a644bb6f527315bcfdea826bf79"><div class="ttname"><a href="x509_8h.html#a4a038a644bb6f527315bcfdea826bf79">x509_self_test</a></div><div class="ttdeci">int x509_self_test(int verbose)</div><div class="ttdoc">Checkup routine. </div></div>
<div class="ttc" id="group__x509__module_html_ga5e8f63c6d3abf6955eb6190a19360fca"><div class="ttname"><a href="group__x509__module.html#ga5e8f63c6d3abf6955eb6190a19360fca">x509_sequence</a></div><div class="ttdeci">asn1_sequence x509_sequence</div><div class="ttdoc">Container for a sequence of ASN.1 items. </div><div class="ttdef"><b>Definition:</b> <a href="x509_8h_source.html#l00178">x509.h:178</a></div></div>
<div class="ttc" id="group__x509__module_html_ga937771cfbc29ed68fa7a1f000bdaada7"><div class="ttname"><a href="group__x509__module.html#ga937771cfbc29ed68fa7a1f000bdaada7">x509_bitstring</a></div><div class="ttdeci">asn1_bitstring x509_bitstring</div><div class="ttdoc">Container for ASN1 bit strings. </div><div class="ttdef"><b>Definition:</b> <a href="x509_8h_source.html#l00167">x509.h:167</a></div></div>
<div class="ttc" id="x509_8h_html_acd36d794a8edbbf66fe2e267d8804854"><div class="ttname"><a href="x509_8h.html#acd36d794a8edbbf66fe2e267d8804854">x509_serial_gets</a></div><div class="ttdeci">int x509_serial_gets(char *buf, size_t size, const x509_buf *serial)</div><div class="ttdoc">Store the certificate serial in printable form into buf; no more than size characters will be written...</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Thu Jul 31 2014 11:35:55 for PolarSSL v1.3.8 by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.5
</small></address>
</body>
</html>