Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Latest commit

 

History

History
History
113 lines (111 loc) · 22 KB

File metadata and controls

113 lines (111 loc) · 22 KB
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
<!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.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>ESP32 HTTPS Server: /home/frank/Projekte/esp32/https_server/esp32_https_server/src/SSLCert.hpp 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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.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 id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">ESP32 HTTPS Server
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('SSLCert_8hpp_source.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">SSLCert.hpp</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="preprocessor">#ifndef SRC_SSLCERT_HPP_</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="preprocessor">#define SRC_SSLCERT_HPP_</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="preprocessor">#include &lt;Arduino.h&gt;</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="preprocessor">#ifndef HTTPS_DISABLE_SELFSIGNING</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="preprocessor">#include &lt;mbedtls/rsa.h&gt;</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="preprocessor">#include &lt;mbedtls/entropy.h&gt;</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="preprocessor">#include &lt;mbedtls/ctr_drbg.h&gt;</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="preprocessor">#include &lt;mbedtls/pk.h&gt;</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="preprocessor">#include &lt;mbedtls/x509.h&gt;</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="preprocessor">#include &lt;mbedtls/x509_crt.h&gt;</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="preprocessor">#include &lt;mbedtls/x509_csr.h&gt;</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="preprocessor">#define HTTPS_SERVER_ERROR_KEYGEN 0x0F</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="preprocessor">#define HTTPS_SERVER_ERROR_KEYGEN_RNG 0x02</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#define HTTPS_SERVER_ERROR_KEYGEN_SETUP_PK 0x03</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="preprocessor">#define HTTPS_SERVER_ERROR_KEYGEN_GEN_PK 0x04</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#define HTTPS_SERVER_ERROR_KEY_WRITE_PK 0x05</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#define HTTPS_SERVER_ERROR_KEY_OUT_OF_MEM 0x06</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#define HTTPS_SERVER_ERROR_CERTGEN 0x1F</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="preprocessor">#define HTTPS_SERVER_ERROR_CERTGEN_RNG 0x12</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="preprocessor">#define HTTPS_SERVER_ERROR_CERTGEN_READKEY 0x13</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="preprocessor">#define HTTPS_SERVER_ERROR_CERTGEN_WRITE 0x15</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#define HTTPS_SERVER_ERROR_CERTGEN_OUT_OF_MEM 0x16</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="preprocessor">#define HTTPS_SERVER_ERROR_CERTGEN_NAME 0x17</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="preprocessor">#define HTTPS_SERVER_ERROR_CERTGEN_SERIAL 0x18</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="preprocessor">#define HTTPS_SERVER_ERROR_CERTGEN_VALIDITY 0x19</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="preprocessor">#endif // !HTTPS_DISABLE_SELFSIGNING</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacehttpsserver.html">httpsserver</a> {</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="classhttpsserver_1_1SSLCert.html"> 59</a></span>&#160;<span class="keyword">class </span><a class="code" href="classhttpsserver_1_1SSLCert.html">SSLCert</a> {</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <a class="code" href="classhttpsserver_1_1SSLCert.html#ad59dc48ab7c1a35afe02d737332de052">SSLCert</a>(</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> * certData = NULL,</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; uint16_t certLength = 0,</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> * pkData = NULL,</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; uint16_t pkLength = 0</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; );</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keyword">virtual</span> ~<a class="code" href="classhttpsserver_1_1SSLCert.html">SSLCert</a>();</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; uint16_t <a class="code" href="classhttpsserver_1_1SSLCert.html#a47015d793e39e101668cea8712c866bd">getCertLength</a>();</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; uint16_t <a class="code" href="classhttpsserver_1_1SSLCert.html#a5c38c849bb261bc630b01f5f68611108">getPKLength</a>();</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> * <a class="code" href="classhttpsserver_1_1SSLCert.html#af207176d23d8de362e2302f0528a58d5">getCertData</a>();</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> * <a class="code" href="classhttpsserver_1_1SSLCert.html#a53f54e9daaa5e86d7a6c203ea28b35bd">getPKData</a>();</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classhttpsserver_1_1SSLCert.html#a31d7697c089188afb23545c22c26894e">setPK</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> * _pkData, uint16_t length);</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classhttpsserver_1_1SSLCert.html#ab55f58e4c49aa31e0e1a2a560248c14b">setCert</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> * _certData, uint16_t length);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classhttpsserver_1_1SSLCert.html#a98ac0171081ce48684d5e7e15545cefc">clear</a>();</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="keyword">private</span>:</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; uint16_t _certLength;</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> * _certData;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; uint16_t _pkLength;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> * _pkData;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;};</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="preprocessor">#ifndef HTTPS_DISABLE_SELFSIGNING</span></div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div><div class="line"><a name="l00149"></a><span class="lineno"><a class="line" href="namespacehttpsserver.html#abdec669031bd8d35895acf4ab78b0540"> 149</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="namespacehttpsserver.html#abdec669031bd8d35895acf4ab78b0540">SSLKeySize</a> {</div><div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="namespacehttpsserver.html#abdec669031bd8d35895acf4ab78b0540ae4cc1de2fea6a438e180a1e61f453627"> 151</a></span>&#160; <a class="code" href="namespacehttpsserver.html#abdec669031bd8d35895acf4ab78b0540ae4cc1de2fea6a438e180a1e61f453627">KEYSIZE_1024</a> = 1024,</div><div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="namespacehttpsserver.html#abdec669031bd8d35895acf4ab78b0540a67f843a9321473661d7db6b337e7ddf9"> 153</a></span>&#160; <a class="code" href="namespacehttpsserver.html#abdec669031bd8d35895acf4ab78b0540a67f843a9321473661d7db6b337e7ddf9">KEYSIZE_2048</a> = 2048,</div><div class="line"><a name="l00155"></a><span class="lineno"><a class="line" href="namespacehttpsserver.html#abdec669031bd8d35895acf4ab78b0540ac85bb475fb6c09799af50bc28e5f3d44"> 155</a></span>&#160; <a class="code" href="namespacehttpsserver.html#abdec669031bd8d35895acf4ab78b0540ac85bb475fb6c09799af50bc28e5f3d44">KEYSIZE_4096</a> = 4096</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;};</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="keywordtype">int</span> <a class="code" href="namespacehttpsserver.html#a0c2a1f6a28893f118e6980dab067d651">createSelfSignedCert</a>(<a class="code" href="classhttpsserver_1_1SSLCert.html">SSLCert</a> &amp;certCtx, <a class="code" href="namespacehttpsserver.html#abdec669031bd8d35895acf4ab78b0540">SSLKeySize</a> keySize, std::string dn, std::string validFrom = <span class="stringliteral">&quot;20190101000000&quot;</span>, std::string validUntil = <span class="stringliteral">&quot;20300101000000&quot;</span>);</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;<span class="preprocessor">#endif // !HTTPS_DISABLE_SELFSIGNING</span></div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;} <span class="comment">/* namespace httpsserver */</span></div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* SRC_SSLCERT_HPP_ */</span><span class="preprocessor"></span></div><div class="ttc" id="classhttpsserver_1_1SSLCert_html_a5c38c849bb261bc630b01f5f68611108"><div class="ttname"><a href="classhttpsserver_1_1SSLCert.html#a5c38c849bb261bc630b01f5f68611108">httpsserver::SSLCert::getPKLength</a></div><div class="ttdeci">uint16_t getPKLength()</div><div class="ttdoc">Returns the length of the private key in byte. </div><div class="ttdef"><b>Definition:</b> SSLCert.cpp:22</div></div>
<div class="ttc" id="classhttpsserver_1_1SSLCert_html_a98ac0171081ce48684d5e7e15545cefc"><div class="ttname"><a href="classhttpsserver_1_1SSLCert.html#a98ac0171081ce48684d5e7e15545cefc">httpsserver::SSLCert::clear</a></div><div class="ttdeci">void clear()</div><div class="ttdoc">Clears the key buffers and deletes them. </div><div class="ttdef"><b>Definition:</b> SSLCert.cpp:44</div></div>
<div class="ttc" id="namespacehttpsserver_html_abdec669031bd8d35895acf4ab78b0540a67f843a9321473661d7db6b337e7ddf9"><div class="ttname"><a href="namespacehttpsserver.html#abdec669031bd8d35895acf4ab78b0540a67f843a9321473661d7db6b337e7ddf9">httpsserver::KEYSIZE_2048</a></div><div class="ttdoc">RSA key with 2048 bit. </div><div class="ttdef"><b>Definition:</b> SSLCert.hpp:153</div></div>
<div class="ttc" id="namespacehttpsserver_html_abdec669031bd8d35895acf4ab78b0540ae4cc1de2fea6a438e180a1e61f453627"><div class="ttname"><a href="namespacehttpsserver.html#abdec669031bd8d35895acf4ab78b0540ae4cc1de2fea6a438e180a1e61f453627">httpsserver::KEYSIZE_1024</a></div><div class="ttdoc">RSA key with 1024 bit. </div><div class="ttdef"><b>Definition:</b> SSLCert.hpp:151</div></div>
<div class="ttc" id="classhttpsserver_1_1SSLCert_html_af207176d23d8de362e2302f0528a58d5"><div class="ttname"><a href="classhttpsserver_1_1SSLCert.html#af207176d23d8de362e2302f0528a58d5">httpsserver::SSLCert::getCertData</a></div><div class="ttdeci">unsigned char * getCertData()</div><div class="ttdoc">Returns the certificate data. </div><div class="ttdef"><b>Definition:</b> SSLCert.cpp:26</div></div>
<div class="ttc" id="classhttpsserver_1_1SSLCert_html"><div class="ttname"><a href="classhttpsserver_1_1SSLCert.html">httpsserver::SSLCert</a></div><div class="ttdoc">Certificate and private key that can be passed to the HTTPSServer. </div><div class="ttdef"><b>Definition:</b> SSLCert.hpp:59</div></div>
<div class="ttc" id="namespacehttpsserver_html_a0c2a1f6a28893f118e6980dab067d651"><div class="ttname"><a href="namespacehttpsserver.html#a0c2a1f6a28893f118e6980dab067d651">httpsserver::createSelfSignedCert</a></div><div class="ttdeci">int createSelfSignedCert(SSLCert &amp;certCtx, SSLKeySize keySize, std::string dn, std::string validFrom, std::string validUntil)</div><div class="ttdoc">Creates a self-signed certificate on the ESP32. </div><div class="ttdef"><b>Definition:</b> SSLCert.cpp:287</div></div>
<div class="ttc" id="classhttpsserver_1_1SSLCert_html_ad59dc48ab7c1a35afe02d737332de052"><div class="ttname"><a href="classhttpsserver_1_1SSLCert.html#ad59dc48ab7c1a35afe02d737332de052">httpsserver::SSLCert::SSLCert</a></div><div class="ttdeci">SSLCert(unsigned char *certData=NULL, uint16_t certLength=0, unsigned char *pkData=NULL, uint16_t pkLength=0)</div><div class="ttdoc">Creates a new SSLCert. </div><div class="ttdef"><b>Definition:</b> SSLCert.cpp:5</div></div>
<div class="ttc" id="classhttpsserver_1_1SSLCert_html_ab55f58e4c49aa31e0e1a2a560248c14b"><div class="ttname"><a href="classhttpsserver_1_1SSLCert.html#ab55f58e4c49aa31e0e1a2a560248c14b">httpsserver::SSLCert::setCert</a></div><div class="ttdeci">void setCert(unsigned char *_certData, uint16_t length)</div><div class="ttdoc">Sets the certificate data in DER format. </div><div class="ttdef"><b>Definition:</b> SSLCert.cpp:39</div></div>
<div class="ttc" id="classhttpsserver_1_1SSLCert_html_a53f54e9daaa5e86d7a6c203ea28b35bd"><div class="ttname"><a href="classhttpsserver_1_1SSLCert.html#a53f54e9daaa5e86d7a6c203ea28b35bd">httpsserver::SSLCert::getPKData</a></div><div class="ttdeci">unsigned char * getPKData()</div><div class="ttdoc">Returns the private key data. </div><div class="ttdef"><b>Definition:</b> SSLCert.cpp:30</div></div>
<div class="ttc" id="namespacehttpsserver_html_abdec669031bd8d35895acf4ab78b0540ac85bb475fb6c09799af50bc28e5f3d44"><div class="ttname"><a href="namespacehttpsserver.html#abdec669031bd8d35895acf4ab78b0540ac85bb475fb6c09799af50bc28e5f3d44">httpsserver::KEYSIZE_4096</a></div><div class="ttdoc">RSA key with 4096 bit. </div><div class="ttdef"><b>Definition:</b> SSLCert.hpp:155</div></div>
<div class="ttc" id="classhttpsserver_1_1SSLCert_html_a47015d793e39e101668cea8712c866bd"><div class="ttname"><a href="classhttpsserver_1_1SSLCert.html#a47015d793e39e101668cea8712c866bd">httpsserver::SSLCert::getCertLength</a></div><div class="ttdeci">uint16_t getCertLength()</div><div class="ttdoc">Returns the length of the certificate in byte. </div><div class="ttdef"><b>Definition:</b> SSLCert.cpp:18</div></div>
<div class="ttc" id="namespacehttpsserver_html"><div class="ttname"><a href="namespacehttpsserver.html">httpsserver</a></div><div class="ttdef"><b>Definition:</b> ConnectionContext.cpp:3</div></div>
<div class="ttc" id="classhttpsserver_1_1SSLCert_html_a31d7697c089188afb23545c22c26894e"><div class="ttname"><a href="classhttpsserver_1_1SSLCert.html#a31d7697c089188afb23545c22c26894e">httpsserver::SSLCert::setPK</a></div><div class="ttdeci">void setPK(unsigned char *_pkData, uint16_t length)</div><div class="ttdoc">Sets the private key in DER format. </div><div class="ttdef"><b>Definition:</b> SSLCert.cpp:34</div></div>
<div class="ttc" id="namespacehttpsserver_html_abdec669031bd8d35895acf4ab78b0540"><div class="ttname"><a href="namespacehttpsserver.html#abdec669031bd8d35895acf4ab78b0540">httpsserver::SSLKeySize</a></div><div class="ttdeci">SSLKeySize</div><div class="ttdoc">Defines the key size for key generation. </div><div class="ttdef"><b>Definition:</b> SSLCert.hpp:149</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><b>SSLCert.hpp</b></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
</ul>
</div>
</body>
</html>
Morty Proxy This is a proxified and sanitized view of the page, visit original site.