Remove unnessecary functions in SSLObj, add comments to SSLObj and update docs

This commit is contained in:
Noah Laptop 2019-08-14 11:12:06 -07:00
parent c6ac76be27
commit c832294902
55 changed files with 1669 additions and 345 deletions

View file

@ -98,6 +98,7 @@ $(document).ready(function(){initNavTree('_s_s_l_client_8h.html','');});
<code>#include &quot;<a class="el" href="_s_s_l_client_impl_8h_source.html">SSLClientImpl.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="_s_s_l_session_8h_source.html">SSLSession.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="_s_s_l_client_parameters_8h_source.html">SSLClientParameters.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="_s_s_l_obj_8h_source.html">SSLObj.h</a>&quot;</code><br />
</div>
<p><a href="_s_s_l_client_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,115 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SSLClient: C:/Users/Noah/Documents/Arduino/libraries/SSLClient/src/SSLObj.cpp File 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="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">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</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">SSLClient
&#160;<span id="projectnumber">v1.1.1</span>
</div>
<div id="projectbrief">Add TLS 1.2 functionality to any network library.</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</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">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('_s_s_l_obj_8cpp.html','');});
/* @license-end */
</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="summary">
<a href="#nested-classes">Classes</a> </div>
<div class="headertitle">
<div class="title">SSLObj.cpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="_s_s_l_obj_8h_source.html">SSLObj.h</a>&quot;</code><br />
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structssl__pem__decode__state.html">ssl_pem_decode_state</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</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"><a class="el" href="_s_s_l_obj_8cpp.html">SSLObj.cpp</a></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.15 </li>
</ul>
</div>
</body>
</html>

View file

@ -0,0 +1,4 @@
var _s_s_l_obj_8cpp =
[
[ "ssl_pem_decode_state", "structssl__pem__decode__state.html", "structssl__pem__decode__state" ]
];

View file

@ -0,0 +1,127 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SSLClient: C:/Users/Noah/Documents/Arduino/libraries/SSLClient/src/SSLObj.h File 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="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">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</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">SSLClient
&#160;<span id="projectnumber">v1.1.1</span>
</div>
<div id="projectbrief">Add TLS 1.2 functionality to any network library.</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</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">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('_s_s_l_obj_8h.html','');});
/* @license-end */
</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="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">SSLObj.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &lt;cstring&gt;</code><br />
<code>#include &quot;bearssl_pem.h&quot;</code><br />
<code>#include &lt;vector&gt;</code><br />
</div>
<p><a href="_s_s_l_obj_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespace_s_s_l_obj"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_s_l_obj.html">SSLObj</a></td></tr>
<tr class="memdesc:namespace_s_s_l_obj"><td class="mdescLeft">&#160;</td><td class="mdescRight">This namespace works with raw DER byte arrays for use later with TLS mutual auth. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a9a58d01c9073b90f2b42c655828aea6d"><td class="memItemLeft" align="right" valign="top">const std::vector&lt; unsigned char &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_s_l_obj.html#a9a58d01c9073b90f2b42c655828aea6d">SSLObj::make_vector_pem</a> (const char *data, const size_t len)</td></tr>
<tr class="memdesc:a9a58d01c9073b90f2b42c655828aea6d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a PEM buffer into a vector of raw DER bytes. <a href="namespace_s_s_l_obj.html#a9a58d01c9073b90f2b42c655828aea6d">More...</a><br /></td></tr>
<tr class="separator:a9a58d01c9073b90f2b42c655828aea6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</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"><a class="el" href="_s_s_l_obj_8h.html">SSLObj.h</a></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.15 </li>
</ul>
</div>
</body>
</html>

View file

@ -0,0 +1,4 @@
var _s_s_l_obj_8h =
[
[ "make_vector_pem", "_s_s_l_obj_8h.html#a9a58d01c9073b90f2b42c655828aea6d", null ]
];

File diff suppressed because one or more lines are too long

View file

@ -93,10 +93,11 @@ $(document).ready(function(){initNavTree('annotated.html','');});
<div class="contents">
<div class="textblock">Here are the classes, structs, unions and interfaces with brief descriptions:</div><div class="directory">
<table class="directory">
<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_s_l_client.html" target="_self">SSLClient</a></td><td class="desc">The main <a class="el" href="class_s_s_l_client.html" title="The main SSLClient class. Check out README.md for more info.">SSLClient</a> class. Check out <a class="el" href="_r_e_a_d_m_e_8md.html">README.md</a> for more info </td></tr>
<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_s_l_client_impl.html" target="_self">SSLClientImpl</a></td><td class="desc">Implementation code to be inherited by <a class="el" href="class_s_s_l_client.html" title="The main SSLClient class. Check out README.md for more info.">SSLClient</a> </td></tr>
<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_s_s_l_client_parameters.html" target="_self">SSLClientParameters</a></td><td class="desc">This struct stores data required for <a class="el" href="class_s_s_l_client.html" title="The main SSLClient class. Check out README.md for more info.">SSLClient</a> to use mutual authentication </td></tr>
<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_s_l_session.html" target="_self">SSLSession</a></td><td class="desc">This class stores values which allow <a class="el" href="class_s_s_l_client.html" title="The main SSLClient class. Check out README.md for more info.">SSLClient</a> to save and resume SSL sessions </td></tr>
<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structssl__pem__decode__state.html" target="_self">ssl_pem_decode_state</a></td><td class="desc"></td></tr>
<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_s_l_client.html" target="_self">SSLClient</a></td><td class="desc">The main <a class="el" href="class_s_s_l_client.html" title="The main SSLClient class. Check out README.md for more info.">SSLClient</a> class. Check out <a class="el" href="_r_e_a_d_m_e_8md.html">README.md</a> for more info </td></tr>
<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_s_l_client_impl.html" target="_self">SSLClientImpl</a></td><td class="desc">Implementation code to be inherited by <a class="el" href="class_s_s_l_client.html" title="The main SSLClient class. Check out README.md for more info.">SSLClient</a> </td></tr>
<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_s_s_l_client_parameters.html" target="_self">SSLClientParameters</a></td><td class="desc">This struct stores data required for <a class="el" href="class_s_s_l_client.html" title="The main SSLClient class. Check out README.md for more info.">SSLClient</a> to use mutual authentication </td></tr>
<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_s_l_session.html" target="_self">SSLSession</a></td><td class="desc">This class stores values which allow <a class="el" href="class_s_s_l_client.html" title="The main SSLClient class. Check out README.md for more info.">SSLClient</a> to save and resume SSL sessions </td></tr>
</table>
</div><!-- directory -->
</div><!-- contents -->

View file

@ -1,5 +1,6 @@
var annotated_dup =
[
[ "ssl_pem_decode_state", "structssl__pem__decode__state.html", "structssl__pem__decode__state" ],
[ "SSLClient", "class_s_s_l_client.html", "class_s_s_l_client" ],
[ "SSLClientImpl", "class_s_s_l_client_impl.html", "class_s_s_l_client_impl" ],
[ "SSLClientParameters", "struct_s_s_l_client_parameters.html", "struct_s_s_l_client_parameters" ],

View file

@ -134,15 +134,16 @@ $(document).ready(function(){initNavTree('class_s_s_l_client.html','');});
<tr><td class="entry"><a class="el" href="class_s_s_l_client.html#a5974a5f8722a752f121af4fac498bb22">remotePort</a>() override</td><td class="entry"><a class="el" href="class_s_s_l_client.html">SSLClient&lt; C, SessionCache &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_s_s_l_client_impl.html#a6baed094969874fb9d2bea3a00ecbee1">remove_session_impl</a>(const char *host, const IPAddress &amp;addr)</td><td class="entry"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_s_s_l_client.html#a5b626703a24089dbb0480a9b6ddf348c">removeSession</a>(const char *host, const IPAddress &amp;addr)</td><td class="entry"><a class="el" href="class_s_s_l_client.html">SSLClient&lt; C, SessionCache &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_s_s_l_client_impl.html#a9dd694f8e0e65624b103dc781a7744af">set_mutual_impl</a>(const SSLClientParameters *params)</td><td class="entry"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_s_s_l_client.html#a16aa9765bd450dcbba21c598456f464f">setMutualAuthParams</a>(const SSLClientParameters *params)</td><td class="entry"><a class="el" href="class_s_s_l_client.html">SSLClient&lt; C, SessionCache &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_s_s_l_client.html#ae9a7509bc8a18f67e286547c19deb3c0">SSLClient</a>(const C &amp;client, const br_x509_trust_anchor *trust_anchors, const size_t trust_anchors_num, const int analog_pin, const DebugLevel debug=SSL_WARN)</td><td class="entry"><a class="el" href="class_s_s_l_client.html">SSLClient&lt; C, SessionCache &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr><td class="entry"><a class="el" href="class_s_s_l_client.html#ad7b20a2ac220d346a8047db77d97723d">SSLClient</a>(const C &amp;client, const br_x509_trust_anchor *trust_anchors, const size_t trust_anchors_num, const int analog_pin, const DebugLevel debug, const SSLClientParameters *mutual_auth_params)</td><td class="entry"><a class="el" href="class_s_s_l_client.html">SSLClient&lt; C, SessionCache &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_s_s_l_client_impl.html#a2b0b9043c8252871272bf6ba199ab67b">SSLClientImpl</a>(const br_x509_trust_anchor *trust_anchors, const size_t trust_anchors_num, const int analog_pin, const DebugLevel debug)</td><td class="entry"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr><td class="entry"><a class="el" href="class_s_s_l_client_impl.html#a8314c7dab1d923db5624f8075a53e6ea">SSLClientImpl</a>(const br_x509_trust_anchor *trust_anchors, const size_t trust_anchors_num, const int analog_pin, const DebugLevel debug, const SSLClientParameters *mutual_auth_params)</td><td class="entry"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_s_s_l_client.html#ad30db47248d78df7c12dedfb27f06529">stop</a>() override</td><td class="entry"><a class="el" href="class_s_s_l_client.html">SSLClient&lt; C, SessionCache &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_s_s_l_client_impl.html#a81eb5ede3a894f281ae586d463b624e6">stop_impl</a>()</td><td class="entry"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_s_s_l_client.html#a6b8ff53c10fe34aab1dc2561410f70bb">write</a>(uint8_t b) override</td><td class="entry"><a class="el" href="class_s_s_l_client.html">SSLClient&lt; C, SessionCache &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_s_s_l_client.html#a6bcb7579ebc051c097acb794b95771a9">write</a>(const uint8_t *buf, size_t size) override</td><td class="entry"><a class="el" href="class_s_s_l_client.html">SSLClient&lt; C, SessionCache &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_s_s_l_client_impl.html#a807656f814f24cf6cd711e429b716c4d">write_impl</a>(const uint8_t *buf, size_t size)</td><td class="entry"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_s_s_l_client_impl.html#a2b0b9043c8252871272bf6ba199ab67b">SSLClientImpl</a>(const br_x509_trust_anchor *trust_anchors, const size_t trust_anchors_num, const int analog_pin, const DebugLevel debug)</td><td class="entry"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_s_s_l_client_impl.html#a8314c7dab1d923db5624f8075a53e6ea">SSLClientImpl</a>(const br_x509_trust_anchor *trust_anchors, const size_t trust_anchors_num, const int analog_pin, const DebugLevel debug, const SSLClientParameters *mutual_auth_params)</td><td class="entry"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr><td class="entry"><a class="el" href="class_s_s_l_client.html#ad30db47248d78df7c12dedfb27f06529">stop</a>() override</td><td class="entry"><a class="el" href="class_s_s_l_client.html">SSLClient&lt; C, SessionCache &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_s_s_l_client_impl.html#a81eb5ede3a894f281ae586d463b624e6">stop_impl</a>()</td><td class="entry"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_s_s_l_client.html#a6b8ff53c10fe34aab1dc2561410f70bb">write</a>(uint8_t b) override</td><td class="entry"><a class="el" href="class_s_s_l_client.html">SSLClient&lt; C, SessionCache &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_s_s_l_client.html#a6bcb7579ebc051c097acb794b95771a9">write</a>(const uint8_t *buf, size_t size) override</td><td class="entry"><a class="el" href="class_s_s_l_client.html">SSLClient&lt; C, SessionCache &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_s_s_l_client_impl.html#a807656f814f24cf6cd711e429b716c4d">write_impl</a>(const uint8_t *buf, size_t size)</td><td class="entry"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->

View file

@ -115,8 +115,6 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:ae9a7509bc8a18f67e286547c19deb3c0"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_s_l_client.html#ae9a7509bc8a18f67e286547c19deb3c0">SSLClient</a> (const C &amp;client, const br_x509_trust_anchor *trust_anchors, const size_t trust_anchors_num, const int analog_pin, const <a class="el" href="_s_s_l_client_impl_8h.html#ab658e6d84759440dbf3c890446075395">DebugLevel</a> debug=<a class="el" href="_s_s_l_client_impl_8h.html#ab658e6d84759440dbf3c890446075395a86c8fdfc38831619d5ed73dff5b0911d">SSL_WARN</a>)</td></tr>
<tr class="memdesc:ae9a7509bc8a18f67e286547c19deb3c0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize <a class="el" href="class_s_s_l_client.html" title="The main SSLClient class. Check out README.md for more info.">SSLClient</a> with all of the prerequisites needed. <a href="#ae9a7509bc8a18f67e286547c19deb3c0">More...</a><br /></td></tr>
<tr class="separator:ae9a7509bc8a18f67e286547c19deb3c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7b20a2ac220d346a8047db77d97723d"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_s_l_client.html#ad7b20a2ac220d346a8047db77d97723d">SSLClient</a> (const C &amp;client, const br_x509_trust_anchor *trust_anchors, const size_t trust_anchors_num, const int analog_pin, const <a class="el" href="_s_s_l_client_impl_8h.html#ab658e6d84759440dbf3c890446075395">DebugLevel</a> debug, const <a class="el" href="struct_s_s_l_client_parameters.html">SSLClientParameters</a> *mutual_auth_params)</td></tr>
<tr class="separator:ad7b20a2ac220d346a8047db77d97723d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4a2172aedfcc483ba2a256ad12148630"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_s_l_client.html#a4a2172aedfcc483ba2a256ad12148630">connect</a> (IPAddress ip, uint16_t port) override</td></tr>
<tr class="memdesc:a4a2172aedfcc483ba2a256ad12148630"><td class="mdescLeft">&#160;</td><td class="mdescRight">Connect over SSL to a host specified by an IP address. <a href="#a4a2172aedfcc483ba2a256ad12148630">More...</a><br /></td></tr>
<tr class="separator:a4a2172aedfcc483ba2a256ad12148630"><td class="memSeparator" colspan="2">&#160;</td></tr>
@ -149,6 +147,9 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:a25e4414ab0c9424d09592f9567a678dc"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_s_l_client.html#a25e4414ab0c9424d09592f9567a678dc">connected</a> () override</td></tr>
<tr class="memdesc:a25e4414ab0c9424d09592f9567a678dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if the device is connected. <a href="#a25e4414ab0c9424d09592f9567a678dc">More...</a><br /></td></tr>
<tr class="separator:a25e4414ab0c9424d09592f9567a678dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16aa9765bd450dcbba21c598456f464f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_s_l_client.html#a16aa9765bd450dcbba21c598456f464f">setMutualAuthParams</a> (const <a class="el" href="struct_s_s_l_client_parameters.html">SSLClientParameters</a> *params)</td></tr>
<tr class="memdesc:a16aa9765bd450dcbba21c598456f464f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add a client certificate and enable support for mutual auth. <a href="#a16aa9765bd450dcbba21c598456f464f">More...</a><br /></td></tr>
<tr class="separator:a16aa9765bd450dcbba21c598456f464f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2d8bf9b891151bc5b0b865d70cf9c086"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_s_s_l_session.html">SSLSession</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_s_l_client.html#a2d8bf9b891151bc5b0b865d70cf9c086">getSession</a> (const char *host, const IPAddress &amp;addr)</td></tr>
<tr class="memdesc:a2d8bf9b891151bc5b0b865d70cf9c086"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets a session reference corresponding to a host and IP, or a reference to a empty session if none exist. <a href="#a2d8bf9b891151bc5b0b865d70cf9c086">More...</a><br /></td></tr>
<tr class="separator:a2d8bf9b891151bc5b0b865d70cf9c086"><td class="memSeparator" colspan="2">&#160;</td></tr>
@ -210,6 +211,8 @@ Public Member Functions</h2></td></tr>
<tr class="separator:ab4e38d4319ec504395d67d2ab21a639e inherit pub_methods_class_s_s_l_client_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6baed094969874fb9d2bea3a00ecbee1 inherit pub_methods_class_s_s_l_client_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_s_l_client_impl.html#a6baed094969874fb9d2bea3a00ecbee1">remove_session_impl</a> (const char *host, const IPAddress &amp;addr)</td></tr>
<tr class="separator:a6baed094969874fb9d2bea3a00ecbee1 inherit pub_methods_class_s_s_l_client_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9dd694f8e0e65624b103dc781a7744af inherit pub_methods_class_s_s_l_client_impl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_s_l_client_impl.html#a9dd694f8e0e65624b103dc781a7744af">set_mutual_impl</a> (const <a class="el" href="struct_s_s_l_client_parameters.html">SSLClientParameters</a> *params)</td></tr>
<tr class="separator:a9dd694f8e0e65624b103dc781a7744af inherit pub_methods_class_s_s_l_client_impl"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
@ -255,7 +258,7 @@ class SSLClient&lt; C, SessionCache &gt;</h3>
<p>The main <a class="el" href="class_s_s_l_client.html" title="The main SSLClient class. Check out README.md for more info.">SSLClient</a> class. Check out <a class="el" href="_r_e_a_d_m_e_8md.html">README.md</a> for more info. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="ae9a7509bc8a18f67e286547c19deb3c0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae9a7509bc8a18f67e286547c19deb3c0">&#9670;&nbsp;</a></span>SSLClient() <span class="overload">[1/2]</span></h2>
<h2 class="memtitle"><span class="permalink"><a href="#ae9a7509bc8a18f67e286547c19deb3c0">&#9670;&nbsp;</a></span>SSLClient()</h2>
<div class="memitem">
<div class="memproto">
@ -324,69 +327,6 @@ The analog_pin should be set to input.</dd></dl>
</dd>
</dl>
</div>
</div>
<a id="ad7b20a2ac220d346a8047db77d97723d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad7b20a2ac220d346a8047db77d97723d">&#9670;&nbsp;</a></span>SSLClient() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class C , size_t SessionCache = 1&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="class_s_s_l_client.html">SSLClient</a>&lt; C, SessionCache &gt;::<a class="el" href="class_s_s_l_client.html">SSLClient</a> </td>
<td>(</td>
<td class="paramtype">const C &amp;&#160;</td>
<td class="paramname"><em>client</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const br_x509_trust_anchor *&#160;</td>
<td class="paramname"><em>trust_anchors</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const size_t&#160;</td>
<td class="paramname"><em>trust_anchors_num</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const int&#160;</td>
<td class="paramname"><em>analog_pin</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="_s_s_l_client_impl_8h.html#ab658e6d84759440dbf3c890446075395">DebugLevel</a>&#160;</td>
<td class="paramname"><em>debug</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="struct_s_s_l_client_parameters.html">SSLClientParameters</a> *&#160;</td>
<td class="paramname"><em>mutual_auth_params</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Same as <a class="el" href="class_s_s_l_client.html#ae9a7509bc8a18f67e286547c19deb3c0" title="Initialize SSLClient with all of the prerequisites needed.">SSLClient::SSLClient(const C &amp;, const br_x509_trust_anchor*, const size_t, const int, const DebugLevel)</a>, but can compile support for mutual authentication. </p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
@ -1234,6 +1174,37 @@ template&lt;class C , size_t SessionCache = 1&gt; </div>
</dd>
</dl>
</div>
</div>
<a id="a16aa9765bd450dcbba21c598456f464f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a16aa9765bd450dcbba21c598456f464f">&#9670;&nbsp;</a></span>setMutualAuthParams()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class C , size_t SessionCache = 1&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="class_s_s_l_client.html">SSLClient</a>&lt; C, SessionCache &gt;::setMutualAuthParams </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="struct_s_s_l_client_parameters.html">SSLClientParameters</a> *&#160;</td>
<td class="paramname"><em>params</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Add a client certificate and enable support for mutual auth. </p>
<p>This function must be called BEFORE making an SSL connection. </p>
</div>
</div>
<a id="ad30db47248d78df7c12dedfb27f06529"></a>

View file

@ -1,7 +1,6 @@
var class_s_s_l_client =
[
[ "SSLClient", "class_s_s_l_client.html#ae9a7509bc8a18f67e286547c19deb3c0", null ],
[ "SSLClient", "class_s_s_l_client.html#ad7b20a2ac220d346a8047db77d97723d", null ],
[ "available", "class_s_s_l_client.html#a5d13fd2f32ee2ea65a1f3820f758e77e", null ],
[ "connect", "class_s_s_l_client.html#a4a2172aedfcc483ba2a256ad12148630", null ],
[ "connect", "class_s_s_l_client.html#a91c63e35f31652c20faa5b9be95984bf", null ],
@ -26,6 +25,7 @@ var class_s_s_l_client =
[ "remoteIP", "class_s_s_l_client.html#af76a0df76834e0d0999dbf44c7c0a174", null ],
[ "remotePort", "class_s_s_l_client.html#a5974a5f8722a752f121af4fac498bb22", null ],
[ "removeSession", "class_s_s_l_client.html#a5b626703a24089dbb0480a9b6ddf348c", null ],
[ "setMutualAuthParams", "class_s_s_l_client.html#a16aa9765bd450dcbba21c598456f464f", null ],
[ "stop", "class_s_s_l_client.html#ad30db47248d78df7c12dedfb27f06529", null ],
[ "write", "class_s_s_l_client.html#a6b8ff53c10fe34aab1dc2561410f70bb", null ],
[ "write", "class_s_s_l_client.html#a6bcb7579ebc051c097acb794b95771a9", null ]

View file

@ -118,10 +118,11 @@ $(document).ready(function(){initNavTree('class_s_s_l_client_impl.html','');});
<tr><td class="entry"><a class="el" href="class_s_s_l_client_impl.html#ae97adc55212c1aa96880aac28dd71387">remoteIP</a>()=0</td><td class="entry"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_s_s_l_client_impl.html#a93cdb32491fc08b035e40f840ff2e8f5">remotePort</a>()=0</td><td class="entry"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="class_s_s_l_client_impl.html#a6baed094969874fb9d2bea3a00ecbee1">remove_session_impl</a>(const char *host, const IPAddress &amp;addr)</td><td class="entry"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_s_s_l_client_impl.html#a2b0b9043c8252871272bf6ba199ab67b">SSLClientImpl</a>(const br_x509_trust_anchor *trust_anchors, const size_t trust_anchors_num, const int analog_pin, const DebugLevel debug)</td><td class="entry"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr><td class="entry"><a class="el" href="class_s_s_l_client_impl.html#a8314c7dab1d923db5624f8075a53e6ea">SSLClientImpl</a>(const br_x509_trust_anchor *trust_anchors, const size_t trust_anchors_num, const int analog_pin, const DebugLevel debug, const SSLClientParameters *mutual_auth_params)</td><td class="entry"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_s_s_l_client_impl.html#a81eb5ede3a894f281ae586d463b624e6">stop_impl</a>()</td><td class="entry"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_s_s_l_client_impl.html#a807656f814f24cf6cd711e429b716c4d">write_impl</a>(const uint8_t *buf, size_t size)</td><td class="entry"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_s_s_l_client_impl.html#a9dd694f8e0e65624b103dc781a7744af">set_mutual_impl</a>(const SSLClientParameters *params)</td><td class="entry"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_s_s_l_client_impl.html#a2b0b9043c8252871272bf6ba199ab67b">SSLClientImpl</a>(const br_x509_trust_anchor *trust_anchors, const size_t trust_anchors_num, const int analog_pin, const DebugLevel debug)</td><td class="entry"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_s_s_l_client_impl.html#a8314c7dab1d923db5624f8075a53e6ea">SSLClientImpl</a>(const br_x509_trust_anchor *trust_anchors, const size_t trust_anchors_num, const int analog_pin, const DebugLevel debug, const SSLClientParameters *mutual_auth_params)</td><td class="entry"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr><td class="entry"><a class="el" href="class_s_s_l_client_impl.html#a81eb5ede3a894f281ae586d463b624e6">stop_impl</a>()</td><td class="entry"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_s_s_l_client_impl.html#a807656f814f24cf6cd711e429b716c4d">write_impl</a>(const uint8_t *buf, size_t size)</td><td class="entry"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->

View file

@ -138,6 +138,8 @@ Public Member Functions</h2></td></tr>
<tr class="separator:ab4e38d4319ec504395d67d2ab21a639e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6baed094969874fb9d2bea3a00ecbee1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_s_l_client_impl.html#a6baed094969874fb9d2bea3a00ecbee1">remove_session_impl</a> (const char *host, const IPAddress &amp;addr)</td></tr>
<tr class="separator:a6baed094969874fb9d2bea3a00ecbee1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9dd694f8e0e65624b103dc781a7744af"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_s_l_client_impl.html#a9dd694f8e0e65624b103dc781a7744af">set_mutual_impl</a> (const <a class="el" href="struct_s_s_l_client_parameters.html">SSLClientParameters</a> *params)</td></tr>
<tr class="separator:a9dd694f8e0e65624b103dc781a7744af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a45f26385ee1975b12265943efb1ff0d5"><td class="memItemLeft" align="right" valign="top">virtual uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_s_l_client_impl.html#a45f26385ee1975b12265943efb1ff0d5">localPort</a> ()=0</td></tr>
<tr class="separator:a45f26385ee1975b12265943efb1ff0d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae97adc55212c1aa96880aac28dd71387"><td class="memItemLeft" align="right" valign="top">virtual IPAddress&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_s_l_client_impl.html#ae97adc55212c1aa96880aac28dd71387">remoteIP</a> ()=0</td></tr>
@ -1002,6 +1004,25 @@ template&lt;typename T &gt; </div>
</div><div class="memdoc">
<dl class="section see"><dt>See also</dt><dd><a class="el" href="class_s_s_l_client.html#a5b626703a24089dbb0480a9b6ddf348c" title="Clear the session corresponding to a host and IP.">SSLClient::removeSession</a> </dd></dl>
</div>
</div>
<a id="a9dd694f8e0e65624b103dc781a7744af"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9dd694f8e0e65624b103dc781a7744af">&#9670;&nbsp;</a></span>set_mutual_impl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void SSLClientImpl::set_mutual_impl </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="struct_s_s_l_client_parameters.html">SSLClientParameters</a> *&#160;</td>
<td class="paramname"><em>params</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section see"><dt>See also</dt><dd><a class="el" href="class_s_s_l_client.html#a16aa9765bd450dcbba21c598456f464f" title="Add a client certificate and enable support for mutual auth.">SSLClient::setMutualAuthParams</a> </dd></dl>
</div>
</div>
<a id="a81eb5ede3a894f281ae586d463b624e6"></a>

View file

@ -26,6 +26,7 @@ var class_s_s_l_client_impl =
[ "remoteIP", "class_s_s_l_client_impl.html#ae97adc55212c1aa96880aac28dd71387", null ],
[ "remotePort", "class_s_s_l_client_impl.html#a93cdb32491fc08b035e40f840ff2e8f5", null ],
[ "remove_session_impl", "class_s_s_l_client_impl.html#a6baed094969874fb9d2bea3a00ecbee1", null ],
[ "set_mutual_impl", "class_s_s_l_client_impl.html#a9dd694f8e0e65624b103dc781a7744af", null ],
[ "stop_impl", "class_s_s_l_client_impl.html#a81eb5ede3a894f281ae586d463b624e6", null ],
[ "write_impl", "class_s_s_l_client_impl.html#a807656f814f24cf6cd711e429b716c4d", null ]
];

View file

@ -94,10 +94,10 @@ $(document).ready(function(){initNavTree('classes.html','');});
<div class="qindex"><a class="qindex" href="#letter_s">s</a></div>
<table class="classindex">
<tr><td rowspan="2" valign="bottom"><a name="letter_s"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;s&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="class_s_s_l_session.html">SSLSession</a>&#160;&#160;&#160;</td></tr>
<tr><td></td><td valign="top"><a class="el" href="struct_s_s_l_client_parameters.html">SSLClientParameters</a>&#160;&#160;&#160;</td><td></td></tr>
<tr><td valign="top"><a class="el" href="class_s_s_l_client.html">SSLClient</a>&#160;&#160;&#160;</td><td></td><td></td></tr>
<tr><td></td><td></td><td></td></tr>
</td><td valign="top"><a class="el" href="class_s_s_l_client.html">SSLClient</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct_s_s_l_client_parameters.html">SSLClientParameters</a>&#160;&#160;&#160;</td><td></td></tr>
<tr><td></td><td valign="top"><a class="el" href="class_s_s_l_client_impl.html">SSLClientImpl</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="class_s_s_l_session.html">SSLSession</a>&#160;&#160;&#160;</td><td></td></tr>
<tr><td valign="top"><a class="el" href="structssl__pem__decode__state.html">ssl_pem_decode_state</a>&#160;&#160;&#160;</td><td></td><td></td><td></td></tr>
<tr><td></td><td></td><td></td><td></td></tr>
</table>
<div class="qindex"><a class="qindex" href="#letter_s">s</a></div>
</div><!-- contents -->

View file

@ -104,6 +104,10 @@ Files</h2></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:_s_s_l_client_parameters_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_s_l_client_parameters_8h.html">SSLClientParameters.h</a> <a href="_s_s_l_client_parameters_8h_source.html">[code]</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:_s_s_l_obj_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_s_l_obj_8cpp.html">SSLObj.cpp</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:_s_s_l_obj_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_s_l_obj_8h.html">SSLObj.h</a> <a href="_s_s_l_obj_8h_source.html">[code]</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:_s_s_l_session_8cpp"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_s_l_session_8cpp.html">SSLSession.cpp</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:_s_s_l_session_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_s_l_session_8h.html">SSLSession.h</a> <a href="_s_s_l_session_8h_source.html">[code]</a></td></tr>

View file

@ -7,6 +7,8 @@ var dir_68267d1309a1af8e8297ef4c3efbcdba =
[ "SSLClientParameters.h", "_s_s_l_client_parameters_8h.html", [
[ "SSLClientParameters", "struct_s_s_l_client_parameters.html", "struct_s_s_l_client_parameters" ]
] ],
[ "SSLObj.cpp", "_s_s_l_obj_8cpp.html", "_s_s_l_obj_8cpp" ],
[ "SSLObj.h", "_s_s_l_obj_8h.html", "_s_s_l_obj_8h" ],
[ "SSLSession.cpp", "_s_s_l_session_8cpp.html", null ],
[ "SSLSession.h", "_s_s_l_session_8h.html", [
[ "SSLSession", "class_s_s_l_session.html", "class_s_s_l_session" ]

View file

@ -106,10 +106,12 @@ $(document).ready(function(){initNavTree('files.html','');});
<tr id="row_2_2_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="_s_s_l_client_impl_8cpp.html" target="_self">SSLClientImpl.cpp</a></td><td class="desc"></td></tr>
<tr id="row_2_3_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="_s_s_l_client_impl_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_s_s_l_client_impl_8h.html" target="_self">SSLClientImpl.h</a></td><td class="desc"></td></tr>
<tr id="row_2_4_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="_s_s_l_client_parameters_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_s_s_l_client_parameters_8h.html" target="_self">SSLClientParameters.h</a></td><td class="desc"></td></tr>
<tr id="row_2_5_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="_s_s_l_session_8cpp.html" target="_self">SSLSession.cpp</a></td><td class="desc"></td></tr>
<tr id="row_2_6_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="_s_s_l_session_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_s_s_l_session_8h.html" target="_self">SSLSession.h</a></td><td class="desc"></td></tr>
<tr id="row_2_7_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="time__macros_8h_source.html"><span class="icondoc"></span></a><a class="el" href="time__macros_8h.html" target="_self">time_macros.h</a></td><td class="desc"></td></tr>
<tr id="row_2_8_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="_t_l_s12__only__profile_8c.html" target="_self">TLS12_only_profile.c</a></td><td class="desc"></td></tr>
<tr id="row_2_5_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="_s_s_l_obj_8cpp.html" target="_self">SSLObj.cpp</a></td><td class="desc"></td></tr>
<tr id="row_2_6_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="_s_s_l_obj_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_s_s_l_obj_8h.html" target="_self">SSLObj.h</a></td><td class="desc"></td></tr>
<tr id="row_2_7_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="_s_s_l_session_8cpp.html" target="_self">SSLSession.cpp</a></td><td class="desc"></td></tr>
<tr id="row_2_8_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="_s_s_l_session_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_s_s_l_session_8h.html" target="_self">SSLSession.h</a></td><td class="desc"></td></tr>
<tr id="row_2_9_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><a href="time__macros_8h_source.html"><span class="icondoc"></span></a><a class="el" href="time__macros_8h.html" target="_self">time_macros.h</a></td><td class="desc"></td></tr>
<tr id="row_2_10_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="_t_l_s12__only__profile_8c.html" target="_self">TLS12_only_profile.c</a></td><td class="desc"></td></tr>
</table>
</div><!-- directory -->
</div><!-- contents -->

View file

@ -113,7 +113,7 @@ $(document).ready(function(){initNavTree('functions.html','');});
: <a class="el" href="class_s_s_l_client.html#a4a2172aedfcc483ba2a256ad12148630">SSLClient&lt; C, SessionCache &gt;</a>
</li>
<li>connect_impl()
: <a class="el" href="class_s_s_l_client_impl.html#aa5c14ecf301c268306946c85825e565b">SSLClientImpl</a>
: <a class="el" href="class_s_s_l_client_impl.html#ae6c947ad92979ab99364428004abbeba">SSLClientImpl</a>
</li>
<li>connected()
: <a class="el" href="class_s_s_l_client.html#a25e4414ab0c9424d09592f9567a678dc">SSLClient&lt; C, SessionCache &gt;</a>
@ -144,7 +144,7 @@ $(document).ready(function(){initNavTree('functions.html','');});
<h3><a id="index_g"></a>- g -</h3><ul>
<li>get_arduino_client()
: <a class="el" href="class_s_s_l_client.html#a9c5001bdfa75ccc0d93cc60dd872b38a">SSLClient&lt; C, SessionCache &gt;</a>
, <a class="el" href="class_s_s_l_client_impl.html#a20dd9a9794b95719e6f3df8cb39126e3">SSLClientImpl</a>
, <a class="el" href="class_s_s_l_client_impl.html#ab1c8f30bd3669c15e07fa1522ede4336">SSLClientImpl</a>
</li>
<li>get_hostname()
: <a class="el" href="class_s_s_l_session.html#a825373c5ba1aa6c45e74dc8a72b21820">SSLSession</a>
@ -153,7 +153,7 @@ $(document).ready(function(){initNavTree('functions.html','');});
: <a class="el" href="class_s_s_l_session.html#a878e1e8788634c5c42778369fbf7bab0">SSLSession</a>
</li>
<li>get_session_array()
: <a class="el" href="class_s_s_l_client.html#a9e7769fed78825cf4723778f4b5aa3e9">SSLClient&lt; C, SessionCache &gt;</a>
: <a class="el" href="class_s_s_l_client.html#a18adfc074d6b8e996819d4beb4689cbd">SSLClient&lt; C, SessionCache &gt;</a>
, <a class="el" href="class_s_s_l_client_impl.html#a44cfafd6f5cdcaa5dbac22961ab3a58b">SSLClientImpl</a>
</li>
<li>get_session_impl()
@ -173,6 +173,9 @@ $(document).ready(function(){initNavTree('functions.html','');});
<h3><a id="index_i"></a>- i -</h3><ul>
<li>index
: <a class="el" href="structssl__pem__decode__state.html#a8abbaad636bfcf50ef38f529e3cfd5f3">ssl_pem_decode_state</a>
</li>
<li>is_valid_session()
: <a class="el" href="class_s_s_l_session.html#a0c36cee72cfa862b7d4b2f5c112d5076">SSLSession</a>
</li>
@ -263,9 +266,15 @@ $(document).ready(function(){initNavTree('functions.html','');});
<h3><a id="index_s"></a>- s -</h3><ul>
<li>set_mutual_impl()
: <a class="el" href="class_s_s_l_client_impl.html#a9dd694f8e0e65624b103dc781a7744af">SSLClientImpl</a>
</li>
<li>set_parameters()
: <a class="el" href="class_s_s_l_session.html#a2fa15ce0b7caae25dfb567954175257e">SSLSession</a>
</li>
<li>setMutualAuthParams()
: <a class="el" href="class_s_s_l_client.html#a16aa9765bd450dcbba21c598456f464f">SSLClient&lt; C, SessionCache &gt;</a>
</li>
<li>SSLClient()
: <a class="el" href="class_s_s_l_client.html#ae9a7509bc8a18f67e286547c19deb3c0">SSLClient&lt; C, SessionCache &gt;</a>
</li>
@ -291,6 +300,13 @@ $(document).ready(function(){initNavTree('functions.html','');});
</ul>
<h3><a id="index_v"></a>- v -</h3><ul>
<li>vect
: <a class="el" href="structssl__pem__decode__state.html#a95f2366376d5f958f9bc1e859b59bae9">ssl_pem_decode_state</a>
</li>
</ul>
<h3><a id="index_w"></a>- w -</h3><ul>
<li>write()
: <a class="el" href="class_s_s_l_client.html#a6b8ff53c10fe34aab1dc2561410f70bb">SSLClient&lt; C, SessionCache &gt;</a>

View file

@ -250,9 +250,15 @@ $(document).ready(function(){initNavTree('functions_func.html','');});
<h3><a id="index_s"></a>- s -</h3><ul>
<li>set_mutual_impl()
: <a class="el" href="class_s_s_l_client_impl.html#a9dd694f8e0e65624b103dc781a7744af">SSLClientImpl</a>
</li>
<li>set_parameters()
: <a class="el" href="class_s_s_l_session.html#a2fa15ce0b7caae25dfb567954175257e">SSLSession</a>
</li>
<li>setMutualAuthParams()
: <a class="el" href="class_s_s_l_client.html#a16aa9765bd450dcbba21c598456f464f">SSLClient&lt; C, SessionCache &gt;</a>
</li>
<li>SSLClient()
: <a class="el" href="class_s_s_l_client.html#ae9a7509bc8a18f67e286547c19deb3c0">SSLClient&lt; C, SessionCache &gt;</a>
</li>

View file

@ -97,6 +97,12 @@ $(document).ready(function(){initNavTree('functions_vars.html','');});
<li>ec_key
: <a class="el" href="struct_s_s_l_client_parameters.html#aca2dba04e30c8d7b962add0c353fc449">SSLClientParameters</a>
</li>
<li>index
: <a class="el" href="structssl__pem__decode__state.html#a8abbaad636bfcf50ef38f529e3cfd5f3">ssl_pem_decode_state</a>
</li>
<li>vect
: <a class="el" href="structssl__pem__decode__state.html#a95f2366376d5f958f9bc1e859b59bae9">ssl_pem_decode_state</a>
</li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->

View file

@ -98,7 +98,8 @@ $(document).ready(function(){initNavTree('hierarchy.html','');});
<tr id="row_1_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_1_" class="arrow" onclick="toggleFolder('1_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>Client</b></td><td class="desc"></td></tr>
<tr id="row_1_0_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_1_0_" class="arrow" onclick="toggleFolder('1_0_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_s_l_client_impl.html" target="_self">SSLClientImpl</a></td><td class="desc">Implementation code to be inherited by <a class="el" href="class_s_s_l_client.html" title="The main SSLClient class. Check out README.md for more info.">SSLClient</a> </td></tr>
<tr id="row_1_0_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_s_l_client.html" target="_self">SSLClient&lt; C, SessionCache &gt;</a></td><td class="desc">The main <a class="el" href="class_s_s_l_client.html" title="The main SSLClient class. Check out README.md for more info.">SSLClient</a> class. Check out <a class="el" href="_r_e_a_d_m_e_8md.html">README.md</a> for more info </td></tr>
<tr id="row_2_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_s_s_l_client_parameters.html" target="_self">SSLClientParameters</a></td><td class="desc">This struct stores data required for <a class="el" href="class_s_s_l_client.html" title="The main SSLClient class. Check out README.md for more info.">SSLClient</a> to use mutual authentication </td></tr>
<tr id="row_2_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structssl__pem__decode__state.html" target="_self">ssl_pem_decode_state</a></td><td class="desc"></td></tr>
<tr id="row_3_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_s_s_l_client_parameters.html" target="_self">SSLClientParameters</a></td><td class="desc">This struct stores data required for <a class="el" href="class_s_s_l_client.html" title="The main SSLClient class. Check out README.md for more info.">SSLClient</a> to use mutual authentication </td></tr>
</table>
</div><!-- directory -->
</div><!-- contents -->

View file

@ -8,5 +8,6 @@ var hierarchy =
[ "SSLClient< C, SessionCache >", "class_s_s_l_client.html", null ]
] ]
] ],
[ "ssl_pem_decode_state", "structssl__pem__decode__state.html", null ],
[ "SSLClientParameters", "struct_s_s_l_client_parameters.html", null ]
];

View file

@ -24,6 +24,11 @@ for the JavaScript code in this file
var menudata={children:[
{text:"Main Page",url:"index.html"},
{text:"Related Pages",url:"pages.html"},
{text:"Namespaces",url:"namespaces.html",children:[
{text:"Namespace List",url:"namespaces.html"},
{text:"Namespace Members",url:"namespacemembers.html",children:[
{text:"All",url:"namespacemembers.html"},
{text:"Functions",url:"namespacemembers_func.html"}]}]},
{text:"Classes",url:"annotated.html",children:[
{text:"Class List",url:"annotated.html"},
{text:"Class Index",url:"classes.html"},
@ -43,6 +48,7 @@ var menudata={children:[
{text:"r",url:"functions.html#index_r"},
{text:"s",url:"functions.html#index_s"},
{text:"t",url:"functions.html#index_t"},
{text:"v",url:"functions.html#index_v"},
{text:"w",url:"functions.html#index_w"}]},
{text:"Functions",url:"functions_func.html",children:[
{text:"a",url:"functions_func.html#index_a"},

View file

@ -0,0 +1,159 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SSLClient: SSLObj Namespace 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="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">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</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">SSLClient
&#160;<span id="projectnumber">v1.1.1</span>
</div>
<div id="projectbrief">Add TLS 1.2 functionality to any network library.</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</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">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('namespace_s_s_l_obj.html','');});
/* @license-end */
</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="summary">
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">SSLObj Namespace Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>This namespace works with raw DER byte arrays for use later with TLS mutual auth.
<a href="#details">More...</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a9a58d01c9073b90f2b42c655828aea6d"><td class="memItemLeft" align="right" valign="top">const std::vector&lt; unsigned char &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_s_l_obj.html#a9a58d01c9073b90f2b42c655828aea6d">make_vector_pem</a> (const char *data, const size_t len)</td></tr>
<tr class="memdesc:a9a58d01c9073b90f2b42c655828aea6d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a PEM buffer into a vector of raw DER bytes. <a href="#a9a58d01c9073b90f2b42c655828aea6d">More...</a><br /></td></tr>
<tr class="separator:a9a58d01c9073b90f2b42c655828aea6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>This namespace works with raw DER byte arrays for use later with TLS mutual auth. </p>
<p><a class="el" href="_s_s_l_obj_8h.html">SSLObj.h</a></p>
<p>This file contains a utility class to take PEM input and store it as a DER object for later use by BearSSL.This namespace was created to store some of the values stored in <a class="el" href="struct_s_s_l_client_parameters.html" title="This struct stores data required for SSLClient to use mutual authentication.">SSLClientParameters</a>, which allow BearSSL use client certificates when creating a TLS connection. Since most certificates are transmitted over the internet in PEM format, a certificate can be provided in PEM or DER format, and will be converted internally to DER format for later use. </p>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="a9a58d01c9073b90f2b42c655828aea6d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9a58d01c9073b90f2b42c655828aea6d">&#9670;&nbsp;</a></span>make_vector_pem()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const std::vector&lt; unsigned char &gt; SSLObj::make_vector_pem </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const size_t&#160;</td>
<td class="paramname"><em>len</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Convert a PEM buffer into a vector of raw DER bytes. </p>
<p>This function takes a PEM buffer (e.g. <code>----BEGIN CERTIFICATE...</code>) and converts it into a vector of raw bytes. The bytes given to this function must:</p><ul>
<li>Contain both the <code>-----BEGIN XXX-----</code> and <code>-----END XXX-----</code> strings. These are removed during processing.</li>
<li>Have a base64 encoded body</li>
<li>Only contain a single object (certificate, private key, etc.).</li>
</ul>
<dl class="section return"><dt>Returns</dt><dd>The raw bytes decoded from the PEM file. </dd></dl>
</div>
</div>
</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="namespace_s_s_l_obj.html">SSLObj</a></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.15 </li>
</ul>
</div>
</body>
</html>

View file

@ -0,0 +1,106 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SSLClient: Namespace Members</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">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</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">SSLClient
&#160;<span id="projectnumber">v1.1.1</span>
</div>
<div id="projectbrief">Add TLS 1.2 functionality to any network library.</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</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">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('namespacemembers.html','');});
/* @license-end */
</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="contents">
<div class="textblock">Here is a list of all namespace members with links to the namespace documentation for each member:</div><ul>
<li>make_vector_pem()
: <a class="el" href="namespace_s_s_l_obj.html#a9a58d01c9073b90f2b42c655828aea6d">SSLObj</a>
</li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li>
</ul>
</div>
</body>
</html>

View file

@ -0,0 +1,106 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SSLClient: Namespace Members</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">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</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">SSLClient
&#160;<span id="projectnumber">v1.1.1</span>
</div>
<div id="projectbrief">Add TLS 1.2 functionality to any network library.</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</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">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('namespacemembers_func.html','');});
/* @license-end */
</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="contents">
&#160;<ul>
<li>make_vector_pem()
: <a class="el" href="namespace_s_s_l_obj.html#a9a58d01c9073b90f2b42c655828aea6d">SSLObj</a>
</li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li>
</ul>
</div>
</body>
</html>

110
docs/html/namespaces.html Normal file
View file

@ -0,0 +1,110 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SSLClient: Namespace List</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">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</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">SSLClient
&#160;<span id="projectnumber">v1.1.1</span>
</div>
<div id="projectbrief">Add TLS 1.2 functionality to any network library.</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</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">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('namespaces.html','');});
/* @license-end */
</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">Namespace List</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock">Here is a list of all namespaces with brief descriptions:</div><div class="directory">
<table class="directory">
<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespace_s_s_l_obj.html" target="_self">SSLObj</a></td><td class="desc">This namespace works with raw DER byte arrays for use later with TLS mutual auth </td></tr>
</table>
</div><!-- directory -->
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li>
</ul>
</div>
</body>
</html>

View file

@ -0,0 +1,4 @@
var namespaces_dup =
[
[ "SSLObj", "namespace_s_s_l_obj.html", null ]
];

View file

@ -26,6 +26,13 @@ var NAVTREE =
[ "SSLClient", "index.html", [
[ "SSLClient - Arduino Library For SSL", "index.html", null ],
[ "Trust Anchors", "md__c_1__users__noah__documents__arduino_libraries__s_s_l_client__trust_anchors.html", null ],
[ "Namespaces", "namespaces.html", [
[ "Namespace List", "namespaces.html", "namespaces_dup" ],
[ "Namespace Members", "namespacemembers.html", [
[ "All", "namespacemembers.html", null ],
[ "Functions", "namespacemembers_func.html", null ]
] ]
] ],
[ "Classes", "annotated.html", [
[ "Class List", "annotated.html", "annotated_dup" ],
[ "Class Index", "classes.html", null ],

View file

@ -1,158 +1,170 @@
var NAVTREEINDEX0 =
{
"_s_s_l_client_8h.html":[3,0,2,1],
"_s_s_l_client_8h.html#a0e14869de8f634ff2fb63826ae583569":[3,0,2,1,1],
"_s_s_l_client_8h_source.html":[3,0,2,1],
"_s_s_l_client_impl_8cpp.html":[3,0,2,2],
"_s_s_l_client_impl_8cpp.html#ad193a2cc121e0d4614a1c21eb463fb56":[3,0,2,2,0],
"_s_s_l_client_impl_8h.html":[3,0,2,3],
"_s_s_l_client_impl_8h.html#a2c3e4bb40f36b262a5214e2da2bca9c5":[3,0,2,3,2],
"_s_s_l_client_impl_8h.html#a2c3e4bb40f36b262a5214e2da2bca9c5a1218c16a5bf50589e0c498983851612c":[3,0,2,3,2,0],
"_s_s_l_client_impl_8h.html#a2c3e4bb40f36b262a5214e2da2bca9c5a1d5f8248fac85f56b05d49c7cb53494b":[3,0,2,3,2,3],
"_s_s_l_client_impl_8h.html#a2c3e4bb40f36b262a5214e2da2bca9c5a1d9afd51e0012e791f099657797c9aa9":[3,0,2,3,2,4],
"_s_s_l_client_impl_8h.html#a2c3e4bb40f36b262a5214e2da2bca9c5aaa79045423a355885738cd239dff6c2b":[3,0,2,3,2,1],
"_s_s_l_client_impl_8h.html#a2c3e4bb40f36b262a5214e2da2bca9c5adec799caf92b4fe2b6d2b362136f6ef6":[3,0,2,3,2,6],
"_s_s_l_client_impl_8h.html#a2c3e4bb40f36b262a5214e2da2bca9c5afb90a695332a7c96044dc97c577ee3c3":[3,0,2,3,2,2],
"_s_s_l_client_impl_8h.html#a2c3e4bb40f36b262a5214e2da2bca9c5afd588a56dcccf4f6943defa7ab699afc":[3,0,2,3,2,5],
"_s_s_l_client_impl_8h.html#ab658e6d84759440dbf3c890446075395":[3,0,2,3,1],
"_s_s_l_client_impl_8h.html#ab658e6d84759440dbf3c890446075395a86c8fdfc38831619d5ed73dff5b0911d":[3,0,2,3,1,2],
"_s_s_l_client_impl_8h.html#ab658e6d84759440dbf3c890446075395a8c0bb62be3d0e6bfe5ed2f7ebbed3d91":[3,0,2,3,1,3],
"_s_s_l_client_impl_8h.html#ab658e6d84759440dbf3c890446075395ad3f9f0591dcabc4fac1222c462bf17ec":[3,0,2,3,1,1],
"_s_s_l_client_impl_8h.html#ab658e6d84759440dbf3c890446075395af16e73d8cce9a2c987bde5afe5524d7f":[3,0,2,3,1,0],
"_s_s_l_client_impl_8h_source.html":[3,0,2,3],
"_s_s_l_client_parameters_8h.html":[3,0,2,4],
"_s_s_l_client_parameters_8h_source.html":[3,0,2,4],
"_s_s_l_session_8cpp.html":[3,0,2,5],
"_s_s_l_session_8h.html":[3,0,2,6],
"_s_s_l_session_8h_source.html":[3,0,2,6],
"_t_l_s12__only__profile_8c.html":[3,0,2,8],
"_t_l_s12__only__profile_8c.html#a32c8112a1c37ba21a05952eeefc435f3":[3,0,2,8,0],
"annotated.html":[2,0],
"cert_8h.html":[3,0,1,0],
"cert_8h.html#ae2e26a4e8e97b0f15c18ba1ace062948":[3,0,1,0,0],
"cert_8h_source.html":[3,0,1,0],
"class_s_s_l_client.html":[2,0,0],
"class_s_s_l_client.html#a18adfc074d6b8e996819d4beb4689cbd":[2,0,0,10],
"class_s_s_l_client.html#a25e4414ab0c9424d09592f9567a678dc":[2,0,0,5],
"class_s_s_l_client.html#a2d378fbb7b8f15a1691746572f9d95b1":[2,0,0,15],
"class_s_s_l_client.html#a2d71f00d6634092f50c5262ad25cdacd":[2,0,0,13],
"class_s_s_l_client.html#a2d8bf9b891151bc5b0b865d70cf9c086":[2,0,0,12],
"class_s_s_l_client.html#a2ee6a3134d07ca09cf61ee04d32c3d44":[2,0,0,6],
"class_s_s_l_client.html#a31742867b00bd8d130637af0935bacbd":[2,0,0,20],
"class_s_s_l_client.html#a353c875d17a85dbb7bfe10de155f3b52":[2,0,0,8],
"class_s_s_l_client.html#a4a2172aedfcc483ba2a256ad12148630":[2,0,0,3],
"class_s_s_l_client.html#a505bfb6831a45aebf58d84e3b89d4cfc":[2,0,0,18],
"class_s_s_l_client.html#a563c5f9829757075bf16742cffa4cf73":[2,0,0,14],
"class_s_s_l_client.html#a5974a5f8722a752f121af4fac498bb22":[2,0,0,24],
"class_s_s_l_client.html#a5b626703a24089dbb0480a9b6ddf348c":[2,0,0,25],
"class_s_s_l_client.html#a5d13fd2f32ee2ea65a1f3820f758e77e":[2,0,0,2],
"class_s_s_l_client.html#a5f40f8f4d26d21e14276c3e8162b62b9":[2,0,0,19],
"class_s_s_l_client.html#a6b8ff53c10fe34aab1dc2561410f70bb":[2,0,0,27],
"class_s_s_l_client.html#a6bcb7579ebc051c097acb794b95771a9":[2,0,0,28],
"class_s_s_l_client.html#a824b599264f893e1b206a9100bc52ee1":[2,0,0,16],
"class_s_s_l_client.html#a91c63e35f31652c20faa5b9be95984bf":[2,0,0,4],
"class_s_s_l_client.html#a9c5001bdfa75ccc0d93cc60dd872b38a":[2,0,0,7],
"class_s_s_l_client.html#a9e7769fed78825cf4723778f4b5aa3e9":[2,0,0,9],
"class_s_s_l_client.html#ad30db47248d78df7c12dedfb27f06529":[2,0,0,26],
"class_s_s_l_client.html#ad7b20a2ac220d346a8047db77d97723d":[2,0,0,1],
"class_s_s_l_client.html#adab82ba09345fa070712d3124af30e1b":[2,0,0,17],
"class_s_s_l_client.html#ae9a7509bc8a18f67e286547c19deb3c0":[2,0,0,0],
"class_s_s_l_client.html#aedf2746cc35da596faf8322776c2118e":[2,0,0,21],
"class_s_s_l_client.html#af76a0df76834e0d0999dbf44c7c0a174":[2,0,0,23],
"class_s_s_l_client.html#afd0d4d2c98433d60897d8828d8047d41":[2,0,0,11],
"class_s_s_l_client.html#afd6d7ae798c05cf566b2eb5651dba795":[2,0,0,22],
"class_s_s_l_client_impl.html":[2,0,1],
"class_s_s_l_client_impl.html#a1b90e7df3a77eea5efb955cc15a17f7d":[2,0,1,21],
"class_s_s_l_client_impl.html#a20dd9a9794b95719e6f3df8cb39126e3":[2,0,1,7],
"class_s_s_l_client_impl.html#a21ab78a0917f74ae5383d688e1548788":[2,0,1,6],
"class_s_s_l_client_impl.html#a231b7b1bb2182cda1ed6e9d5ebf66afe":[2,0,1,22],
"class_s_s_l_client_impl.html#a2b0b9043c8252871272bf6ba199ab67b":[2,0,1,0],
"class_s_s_l_client_impl.html#a2bfb55bcde46d8d77a46bfe0f577bf3f":[2,0,1,20],
"class_s_s_l_client_impl.html#a2cf492a714cf787e54a17bb47cda43ed":[2,0,1,17],
"class_s_s_l_client_impl.html#a3b4cb1e9e510955078b83c9f84c0e18c":[2,0,1,15],
"class_s_s_l_client_impl.html#a44cfafd6f5cdcaa5dbac22961ab3a58b":[2,0,1,9],
"class_s_s_l_client_impl.html#a45a1967029784a2f0f3edc7f75a00117":[2,0,1,16],
"class_s_s_l_client_impl.html#a45f26385ee1975b12265943efb1ff0d5":[2,0,1,13],
"class_s_s_l_client_impl.html#a6baed094969874fb9d2bea3a00ecbee1":[2,0,1,25],
"class_s_s_l_client_impl.html#a6e701597178b81f10d0db671b81ab075":[2,0,1,19],
"class_s_s_l_client_impl.html#a807656f814f24cf6cd711e429b716c4d":[2,0,1,27],
"class_s_s_l_client_impl.html#a81eb5ede3a894f281ae586d463b624e6":[2,0,1,26],
"class_s_s_l_client_impl.html#a8314c7dab1d923db5624f8075a53e6ea":[2,0,1,1],
"class_s_s_l_client_impl.html#a8e2385522ec04b1ce70871d4de23db6b":[2,0,1,12],
"class_s_s_l_client_impl.html#a93cdb32491fc08b035e40f840ff2e8f5":[2,0,1,24],
"class_s_s_l_client_impl.html#a957984fa392550a7df86f758e9b14bfb":[2,0,1,5],
"class_s_s_l_client_impl.html#a9ee82ad492f2297bd7cd0835c0d4556f":[2,0,1,18],
"class_s_s_l_client_impl.html#aa5c14ecf301c268306946c85825e565b":[2,0,1,3],
"class_s_s_l_client_impl.html#ab1c8f30bd3669c15e07fa1522ede4336":[2,0,1,8],
"class_s_s_l_client_impl.html#ab4e38d4319ec504395d67d2ab21a639e":[2,0,1,11],
"class_s_s_l_client_impl.html#abe33c793ec37f11087651cf4e586569b":[2,0,1,2],
"class_s_s_l_client_impl.html#ace6652307ba028d67c7ddbc4103fa9b4":[2,0,1,10],
"class_s_s_l_client_impl.html#ada595ed8f11673a9180ef0b762949c83":[2,0,1,14],
"class_s_s_l_client_impl.html#ae6c947ad92979ab99364428004abbeba":[2,0,1,4],
"class_s_s_l_client_impl.html#ae97adc55212c1aa96880aac28dd71387":[2,0,1,23],
"class_s_s_l_session.html":[2,0,3],
"class_s_s_l_session.html#a0c36cee72cfa862b7d4b2f5c112d5076":[2,0,3,4],
"class_s_s_l_session.html#a2fa15ce0b7caae25dfb567954175257e":[2,0,3,6],
"class_s_s_l_session.html#a3305941fa615f7134526b718917716ee":[2,0,3,1],
"class_s_s_l_session.html#a825373c5ba1aa6c45e74dc8a72b21820":[2,0,3,2],
"class_s_s_l_session.html#a878e1e8788634c5c42778369fbf7bab0":[2,0,3,3],
"class_s_s_l_session.html#abb3f7bbe70e3a59f9ce492c55507f36f":[2,0,3,5],
"class_s_s_l_session.html#acbe6549b55d50541d09a16f770e65afc":[2,0,3,7],
"class_s_s_l_session.html#ae05648200cea66577f024d5d09a6fcbb":[2,0,3,0],
"classes.html":[2,1],
"dir_386349f6a9bc1e2cd0767d257d5e5b91.html":[3,0,0,1],
"dir_68267d1309a1af8e8297ef4c3efbcdba.html":[3,0,2],
"dir_9c42dc81377249a918256dbb9cfb2167.html":[3,0,0,0],
"dir_d28a4824dc47e487b107a5db32ef43c4.html":[3,0,0],
"dir_dfc5a9f91fbfb9426c406a3f10131a54.html":[3,0,1],
"ec__prime__fast__256_8c.html":[3,0,2,0],
"ec__prime__fast__256_8c.html#aedcd6aae4367c3fdfe7db296b4da85ab":[3,0,2,0,0],
"files.html":[3,0],
"functions.html":[2,3,0],
"functions_func.html":[2,3,1],
"functions_vars.html":[2,3,2],
"globals.html":[3,1,0],
"globals_defs.html":[3,1,5],
"globals_enum.html":[3,1,3],
"globals_eval.html":[3,1,4],
"globals_func.html":[3,1,1],
"globals_vars.html":[3,1,2],
"hierarchy.html":[2,2],
"_s_s_l_client_8h.html":[4,0,2,1],
"_s_s_l_client_8h.html#a0e14869de8f634ff2fb63826ae583569":[4,0,2,1,1],
"_s_s_l_client_8h_source.html":[4,0,2,1],
"_s_s_l_client_impl_8cpp.html":[4,0,2,2],
"_s_s_l_client_impl_8cpp.html#ad193a2cc121e0d4614a1c21eb463fb56":[4,0,2,2,0],
"_s_s_l_client_impl_8h.html":[4,0,2,3],
"_s_s_l_client_impl_8h.html#a2c3e4bb40f36b262a5214e2da2bca9c5":[4,0,2,3,2],
"_s_s_l_client_impl_8h.html#a2c3e4bb40f36b262a5214e2da2bca9c5a1218c16a5bf50589e0c498983851612c":[4,0,2,3,2,0],
"_s_s_l_client_impl_8h.html#a2c3e4bb40f36b262a5214e2da2bca9c5a1d5f8248fac85f56b05d49c7cb53494b":[4,0,2,3,2,3],
"_s_s_l_client_impl_8h.html#a2c3e4bb40f36b262a5214e2da2bca9c5a1d9afd51e0012e791f099657797c9aa9":[4,0,2,3,2,4],
"_s_s_l_client_impl_8h.html#a2c3e4bb40f36b262a5214e2da2bca9c5aaa79045423a355885738cd239dff6c2b":[4,0,2,3,2,1],
"_s_s_l_client_impl_8h.html#a2c3e4bb40f36b262a5214e2da2bca9c5adec799caf92b4fe2b6d2b362136f6ef6":[4,0,2,3,2,6],
"_s_s_l_client_impl_8h.html#a2c3e4bb40f36b262a5214e2da2bca9c5afb90a695332a7c96044dc97c577ee3c3":[4,0,2,3,2,2],
"_s_s_l_client_impl_8h.html#a2c3e4bb40f36b262a5214e2da2bca9c5afd588a56dcccf4f6943defa7ab699afc":[4,0,2,3,2,5],
"_s_s_l_client_impl_8h.html#ab658e6d84759440dbf3c890446075395":[4,0,2,3,1],
"_s_s_l_client_impl_8h.html#ab658e6d84759440dbf3c890446075395a86c8fdfc38831619d5ed73dff5b0911d":[4,0,2,3,1,2],
"_s_s_l_client_impl_8h.html#ab658e6d84759440dbf3c890446075395a8c0bb62be3d0e6bfe5ed2f7ebbed3d91":[4,0,2,3,1,3],
"_s_s_l_client_impl_8h.html#ab658e6d84759440dbf3c890446075395ad3f9f0591dcabc4fac1222c462bf17ec":[4,0,2,3,1,1],
"_s_s_l_client_impl_8h.html#ab658e6d84759440dbf3c890446075395af16e73d8cce9a2c987bde5afe5524d7f":[4,0,2,3,1,0],
"_s_s_l_client_impl_8h_source.html":[4,0,2,3],
"_s_s_l_client_parameters_8h.html":[4,0,2,4],
"_s_s_l_client_parameters_8h_source.html":[4,0,2,4],
"_s_s_l_obj_8cpp.html":[4,0,2,5],
"_s_s_l_obj_8h.html":[4,0,2,6],
"_s_s_l_obj_8h.html#a9a58d01c9073b90f2b42c655828aea6d":[4,0,2,6,0],
"_s_s_l_obj_8h_source.html":[4,0,2,6],
"_s_s_l_session_8cpp.html":[4,0,2,7],
"_s_s_l_session_8h.html":[4,0,2,8],
"_s_s_l_session_8h_source.html":[4,0,2,8],
"_t_l_s12__only__profile_8c.html":[4,0,2,10],
"_t_l_s12__only__profile_8c.html#a32c8112a1c37ba21a05952eeefc435f3":[4,0,2,10,0],
"annotated.html":[3,0],
"cert_8h.html":[4,0,1,0],
"cert_8h.html#ae2e26a4e8e97b0f15c18ba1ace062948":[4,0,1,0,0],
"cert_8h_source.html":[4,0,1,0],
"class_s_s_l_client.html":[3,0,1],
"class_s_s_l_client.html#a16aa9765bd450dcbba21c598456f464f":[3,0,1,25],
"class_s_s_l_client.html#a18adfc074d6b8e996819d4beb4689cbd":[3,0,1,9],
"class_s_s_l_client.html#a25e4414ab0c9424d09592f9567a678dc":[3,0,1,4],
"class_s_s_l_client.html#a2d378fbb7b8f15a1691746572f9d95b1":[3,0,1,14],
"class_s_s_l_client.html#a2d71f00d6634092f50c5262ad25cdacd":[3,0,1,12],
"class_s_s_l_client.html#a2d8bf9b891151bc5b0b865d70cf9c086":[3,0,1,11],
"class_s_s_l_client.html#a2ee6a3134d07ca09cf61ee04d32c3d44":[3,0,1,5],
"class_s_s_l_client.html#a31742867b00bd8d130637af0935bacbd":[3,0,1,19],
"class_s_s_l_client.html#a353c875d17a85dbb7bfe10de155f3b52":[3,0,1,7],
"class_s_s_l_client.html#a4a2172aedfcc483ba2a256ad12148630":[3,0,1,2],
"class_s_s_l_client.html#a505bfb6831a45aebf58d84e3b89d4cfc":[3,0,1,17],
"class_s_s_l_client.html#a563c5f9829757075bf16742cffa4cf73":[3,0,1,13],
"class_s_s_l_client.html#a5974a5f8722a752f121af4fac498bb22":[3,0,1,23],
"class_s_s_l_client.html#a5b626703a24089dbb0480a9b6ddf348c":[3,0,1,24],
"class_s_s_l_client.html#a5d13fd2f32ee2ea65a1f3820f758e77e":[3,0,1,1],
"class_s_s_l_client.html#a5f40f8f4d26d21e14276c3e8162b62b9":[3,0,1,18],
"class_s_s_l_client.html#a6b8ff53c10fe34aab1dc2561410f70bb":[3,0,1,27],
"class_s_s_l_client.html#a6bcb7579ebc051c097acb794b95771a9":[3,0,1,28],
"class_s_s_l_client.html#a824b599264f893e1b206a9100bc52ee1":[3,0,1,15],
"class_s_s_l_client.html#a91c63e35f31652c20faa5b9be95984bf":[3,0,1,3],
"class_s_s_l_client.html#a9c5001bdfa75ccc0d93cc60dd872b38a":[3,0,1,6],
"class_s_s_l_client.html#a9e7769fed78825cf4723778f4b5aa3e9":[3,0,1,8],
"class_s_s_l_client.html#ad30db47248d78df7c12dedfb27f06529":[3,0,1,26],
"class_s_s_l_client.html#adab82ba09345fa070712d3124af30e1b":[3,0,1,16],
"class_s_s_l_client.html#ae9a7509bc8a18f67e286547c19deb3c0":[3,0,1,0],
"class_s_s_l_client.html#aedf2746cc35da596faf8322776c2118e":[3,0,1,20],
"class_s_s_l_client.html#af76a0df76834e0d0999dbf44c7c0a174":[3,0,1,22],
"class_s_s_l_client.html#afd0d4d2c98433d60897d8828d8047d41":[3,0,1,10],
"class_s_s_l_client.html#afd6d7ae798c05cf566b2eb5651dba795":[3,0,1,21],
"class_s_s_l_client_impl.html":[3,0,2],
"class_s_s_l_client_impl.html#a1b90e7df3a77eea5efb955cc15a17f7d":[3,0,2,21],
"class_s_s_l_client_impl.html#a20dd9a9794b95719e6f3df8cb39126e3":[3,0,2,7],
"class_s_s_l_client_impl.html#a21ab78a0917f74ae5383d688e1548788":[3,0,2,6],
"class_s_s_l_client_impl.html#a231b7b1bb2182cda1ed6e9d5ebf66afe":[3,0,2,22],
"class_s_s_l_client_impl.html#a2b0b9043c8252871272bf6ba199ab67b":[3,0,2,0],
"class_s_s_l_client_impl.html#a2bfb55bcde46d8d77a46bfe0f577bf3f":[3,0,2,20],
"class_s_s_l_client_impl.html#a2cf492a714cf787e54a17bb47cda43ed":[3,0,2,17],
"class_s_s_l_client_impl.html#a3b4cb1e9e510955078b83c9f84c0e18c":[3,0,2,15],
"class_s_s_l_client_impl.html#a44cfafd6f5cdcaa5dbac22961ab3a58b":[3,0,2,9],
"class_s_s_l_client_impl.html#a45a1967029784a2f0f3edc7f75a00117":[3,0,2,16],
"class_s_s_l_client_impl.html#a45f26385ee1975b12265943efb1ff0d5":[3,0,2,13],
"class_s_s_l_client_impl.html#a6baed094969874fb9d2bea3a00ecbee1":[3,0,2,25],
"class_s_s_l_client_impl.html#a6e701597178b81f10d0db671b81ab075":[3,0,2,19],
"class_s_s_l_client_impl.html#a807656f814f24cf6cd711e429b716c4d":[3,0,2,28],
"class_s_s_l_client_impl.html#a81eb5ede3a894f281ae586d463b624e6":[3,0,2,27],
"class_s_s_l_client_impl.html#a8314c7dab1d923db5624f8075a53e6ea":[3,0,2,1],
"class_s_s_l_client_impl.html#a8e2385522ec04b1ce70871d4de23db6b":[3,0,2,12],
"class_s_s_l_client_impl.html#a93cdb32491fc08b035e40f840ff2e8f5":[3,0,2,24],
"class_s_s_l_client_impl.html#a957984fa392550a7df86f758e9b14bfb":[3,0,2,5],
"class_s_s_l_client_impl.html#a9dd694f8e0e65624b103dc781a7744af":[3,0,2,26],
"class_s_s_l_client_impl.html#a9ee82ad492f2297bd7cd0835c0d4556f":[3,0,2,18],
"class_s_s_l_client_impl.html#aa5c14ecf301c268306946c85825e565b":[3,0,2,3],
"class_s_s_l_client_impl.html#ab1c8f30bd3669c15e07fa1522ede4336":[3,0,2,8],
"class_s_s_l_client_impl.html#ab4e38d4319ec504395d67d2ab21a639e":[3,0,2,11],
"class_s_s_l_client_impl.html#abe33c793ec37f11087651cf4e586569b":[3,0,2,2],
"class_s_s_l_client_impl.html#ace6652307ba028d67c7ddbc4103fa9b4":[3,0,2,10],
"class_s_s_l_client_impl.html#ada595ed8f11673a9180ef0b762949c83":[3,0,2,14],
"class_s_s_l_client_impl.html#ae6c947ad92979ab99364428004abbeba":[3,0,2,4],
"class_s_s_l_client_impl.html#ae97adc55212c1aa96880aac28dd71387":[3,0,2,23],
"class_s_s_l_session.html":[3,0,4],
"class_s_s_l_session.html#a0c36cee72cfa862b7d4b2f5c112d5076":[3,0,4,4],
"class_s_s_l_session.html#a2fa15ce0b7caae25dfb567954175257e":[3,0,4,6],
"class_s_s_l_session.html#a3305941fa615f7134526b718917716ee":[3,0,4,1],
"class_s_s_l_session.html#a825373c5ba1aa6c45e74dc8a72b21820":[3,0,4,2],
"class_s_s_l_session.html#a878e1e8788634c5c42778369fbf7bab0":[3,0,4,3],
"class_s_s_l_session.html#abb3f7bbe70e3a59f9ce492c55507f36f":[3,0,4,5],
"class_s_s_l_session.html#acbe6549b55d50541d09a16f770e65afc":[3,0,4,7],
"class_s_s_l_session.html#ae05648200cea66577f024d5d09a6fcbb":[3,0,4,0],
"classes.html":[3,1],
"dir_386349f6a9bc1e2cd0767d257d5e5b91.html":[4,0,0,1],
"dir_68267d1309a1af8e8297ef4c3efbcdba.html":[4,0,2],
"dir_9c42dc81377249a918256dbb9cfb2167.html":[4,0,0,0],
"dir_d28a4824dc47e487b107a5db32ef43c4.html":[4,0,0],
"dir_dfc5a9f91fbfb9426c406a3f10131a54.html":[4,0,1],
"ec__prime__fast__256_8c.html":[4,0,2,0],
"ec__prime__fast__256_8c.html#aedcd6aae4367c3fdfe7db296b4da85ab":[4,0,2,0,0],
"files.html":[4,0],
"functions.html":[3,3,0],
"functions_func.html":[3,3,1],
"functions_vars.html":[3,3,2],
"globals.html":[4,1,0],
"globals_defs.html":[4,1,5],
"globals_enum.html":[4,1,3],
"globals_eval.html":[4,1,4],
"globals_func.html":[4,1,1],
"globals_vars.html":[4,1,2],
"hierarchy.html":[3,2],
"index.html":[],
"index.html":[0],
"md__c_1__users__noah__documents__arduino_libraries__s_s_l_client__trust_anchors.html":[1],
"namespace_s_s_l_obj.html":[2,0,0],
"namespacemembers.html":[2,1,0],
"namespacemembers_func.html":[2,1,1],
"namespaces.html":[2,0],
"pages.html":[],
"struct_s_s_l_client_parameters.html":[2,0,2],
"struct_s_s_l_client_parameters.html#a3e0440790d1acdee221b8ef6be6def95":[2,0,2,1],
"struct_s_s_l_client_parameters.html#aa523f407ac673da95bf651617fbf94b2":[2,0,2,0],
"struct_s_s_l_client_parameters.html#aca2dba04e30c8d7b962add0c353fc449":[2,0,2,2],
"time__macros_8h.html":[3,0,2,7],
"time__macros_8h.html#a04e76e262f0920441e5f0c5552e83487":[3,0,2,7,19],
"time__macros_8h.html#a243cf438274412bbecf4b8d5eeb02ccb":[3,0,2,7,14],
"time__macros_8h.html#a2488d1ddab7e5fa119da3421462231c4":[3,0,2,7,1],
"time__macros_8h.html#a2af3d1d741ae2b49627adf56bbc95dc3":[3,0,2,7,20],
"time__macros_8h.html#a2d540510d5860d7f190d13124956bc57":[3,0,2,7,16],
"time__macros_8h.html#a38ac93dd8bfe385ff915a82c92bbfc97":[3,0,2,7,4],
"time__macros_8h.html#a3aaee30ddedb3f6675aac341a66e39e2":[3,0,2,7,15],
"time__macros_8h.html#a4dbe4cf7c879a2cdac386ce72c5e5994":[3,0,2,7,13],
"time__macros_8h.html#a56482fcc86a55713dee595c2092ed376":[3,0,2,7,5],
"time__macros_8h.html#a5ab60a7e3e1b6e0a919b3a37bc0d4b97":[3,0,2,7,8],
"time__macros_8h.html#a7f2cdee2eebbccd45c179a50a0bbabcf":[3,0,2,7,0],
"time__macros_8h.html#a868143e0521daf07b25a2f3947cf54a3":[3,0,2,7,6],
"time__macros_8h.html#a8cd8e04105fec7cd442d078c303e46b9":[3,0,2,7,18],
"time__macros_8h.html#a9da779a8ca64782ea49babce14122d34":[3,0,2,7,12],
"time__macros_8h.html#aad01b5fb233c0091aff2a837a8de32f4":[3,0,2,7,11],
"time__macros_8h.html#ab3592442029a102b388fafeadc4a6ab8":[3,0,2,7,2],
"time__macros_8h.html#ab6c76862964ff7e543fd9d5807b2fa79":[3,0,2,7,7],
"time__macros_8h.html#ac47b302f1b8d2a7a9c035c417247be76":[3,0,2,7,17],
"time__macros_8h.html#ac8f6b75d9e04634818984ba400d0dee1":[3,0,2,7,3],
"time__macros_8h.html#ae0574ced3f997b97d357c1cb68000e3a":[3,0,2,7,9],
"time__macros_8h.html#ae90924c33a05839b3eb1426472f40eb3":[3,0,2,7,10],
"time__macros_8h_source.html":[3,0,2,7],
"trust__anchors_8h.html":[3,0,0,0,0],
"trust__anchors_8h.html#ae2e26a4e8e97b0f15c18ba1ace062948":[3,0,0,0,0,0],
"trust__anchors_8h_source.html":[3,0,0,0,0],
"trustanchors_8h.html":[3,0,0,1,0],
"trustanchors_8h.html#ae2e26a4e8e97b0f15c18ba1ace062948":[3,0,0,1,0,0],
"trustanchors_8h_source.html":[3,0,0,1,0]
"struct_s_s_l_client_parameters.html":[3,0,3],
"struct_s_s_l_client_parameters.html#a3e0440790d1acdee221b8ef6be6def95":[3,0,3,1],
"struct_s_s_l_client_parameters.html#aa523f407ac673da95bf651617fbf94b2":[3,0,3,0],
"struct_s_s_l_client_parameters.html#aca2dba04e30c8d7b962add0c353fc449":[3,0,3,2],
"structssl__pem__decode__state.html":[3,0,0],
"structssl__pem__decode__state.html#a8abbaad636bfcf50ef38f529e3cfd5f3":[3,0,0,0],
"structssl__pem__decode__state.html#a95f2366376d5f958f9bc1e859b59bae9":[3,0,0,1],
"time__macros_8h.html":[4,0,2,9],
"time__macros_8h.html#a04e76e262f0920441e5f0c5552e83487":[4,0,2,9,19],
"time__macros_8h.html#a243cf438274412bbecf4b8d5eeb02ccb":[4,0,2,9,14],
"time__macros_8h.html#a2488d1ddab7e5fa119da3421462231c4":[4,0,2,9,1],
"time__macros_8h.html#a2af3d1d741ae2b49627adf56bbc95dc3":[4,0,2,9,20],
"time__macros_8h.html#a2d540510d5860d7f190d13124956bc57":[4,0,2,9,16],
"time__macros_8h.html#a38ac93dd8bfe385ff915a82c92bbfc97":[4,0,2,9,4],
"time__macros_8h.html#a3aaee30ddedb3f6675aac341a66e39e2":[4,0,2,9,15],
"time__macros_8h.html#a4dbe4cf7c879a2cdac386ce72c5e5994":[4,0,2,9,13],
"time__macros_8h.html#a56482fcc86a55713dee595c2092ed376":[4,0,2,9,5],
"time__macros_8h.html#a5ab60a7e3e1b6e0a919b3a37bc0d4b97":[4,0,2,9,8],
"time__macros_8h.html#a7f2cdee2eebbccd45c179a50a0bbabcf":[4,0,2,9,0],
"time__macros_8h.html#a868143e0521daf07b25a2f3947cf54a3":[4,0,2,9,6],
"time__macros_8h.html#a8cd8e04105fec7cd442d078c303e46b9":[4,0,2,9,18],
"time__macros_8h.html#a9da779a8ca64782ea49babce14122d34":[4,0,2,9,12],
"time__macros_8h.html#aad01b5fb233c0091aff2a837a8de32f4":[4,0,2,9,11],
"time__macros_8h.html#ab3592442029a102b388fafeadc4a6ab8":[4,0,2,9,2],
"time__macros_8h.html#ab6c76862964ff7e543fd9d5807b2fa79":[4,0,2,9,7],
"time__macros_8h.html#ac47b302f1b8d2a7a9c035c417247be76":[4,0,2,9,17],
"time__macros_8h.html#ac8f6b75d9e04634818984ba400d0dee1":[4,0,2,9,3],
"time__macros_8h.html#ae0574ced3f997b97d357c1cb68000e3a":[4,0,2,9,9],
"time__macros_8h.html#ae90924c33a05839b3eb1426472f40eb3":[4,0,2,9,10],
"time__macros_8h_source.html":[4,0,2,9],
"trust__anchors_8h.html":[4,0,0,0,0],
"trust__anchors_8h.html#ae2e26a4e8e97b0f15c18ba1ace062948":[4,0,0,0,0,0],
"trust__anchors_8h_source.html":[4,0,0,0,0],
"trustanchors_8h.html":[4,0,0,1,0],
"trustanchors_8h.html#ae2e26a4e8e97b0f15c18ba1ace062948":[4,0,0,1,0,0],
"trustanchors_8h_source.html":[4,0,0,1,0]
};

View file

@ -1,5 +1,4 @@
var searchData=
[
['write',['write',['../class_s_s_l_client.html#a6b8ff53c10fe34aab1dc2561410f70bb',1,'SSLClient::write(uint8_t b) override'],['../class_s_s_l_client.html#a6bcb7579ebc051c097acb794b95771a9',1,'SSLClient::write(const uint8_t *buf, size_t size) override']]],
['write_5fimpl',['write_impl',['../class_s_s_l_client_impl.html#a807656f814f24cf6cd711e429b716c4d',1,'SSLClientImpl']]]
['vect',['vect',['../structssl__pem__decode__state.html#a95f2366376d5f958f9bc1e859b59bae9',1,'ssl_pem_decode_state']]]
];

View file

@ -0,0 +1,30 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html><head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="all_12.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript"><!--
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
--></script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript"><!--
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
/* @license-end */
--></script>
</div>
</body>
</html>

View file

@ -0,0 +1,5 @@
var searchData=
[
['write',['write',['../class_s_s_l_client.html#a6b8ff53c10fe34aab1dc2561410f70bb',1,'SSLClient::write(uint8_t b) override'],['../class_s_s_l_client.html#a6bcb7579ebc051c097acb794b95771a9',1,'SSLClient::write(const uint8_t *buf, size_t size) override']]],
['write_5fimpl',['write_impl',['../class_s_s_l_client_impl.html#a807656f814f24cf6cd711e429b716c4d',1,'SSLClientImpl']]]
];

View file

@ -1,4 +1,5 @@
var searchData=
[
['index',['index',['../structssl__pem__decode__state.html#a8abbaad636bfcf50ef38f529e3cfd5f3',1,'ssl_pem_decode_state']]],
['is_5fvalid_5fsession',['is_valid_session',['../class_s_s_l_session.html#a0c36cee72cfa862b7d4b2f5c112d5076',1,'SSLSession']]]
];

View file

@ -6,5 +6,6 @@ var searchData=
['m_5fprint_5fbr_5ferror',['m_print_br_error',['../class_s_s_l_client_impl.html#a2cf492a714cf787e54a17bb47cda43ed',1,'SSLClientImpl']]],
['m_5fprint_5fprefix',['m_print_prefix',['../class_s_s_l_client_impl.html#a9ee82ad492f2297bd7cd0835c0d4556f',1,'SSLClientImpl']]],
['m_5fprint_5fssl_5ferror',['m_print_ssl_error',['../class_s_s_l_client_impl.html#a6e701597178b81f10d0db671b81ab075',1,'SSLClientImpl']]],
['m_5fwarn',['m_warn',['../class_s_s_l_client_impl.html#a2bfb55bcde46d8d77a46bfe0f577bf3f',1,'SSLClientImpl']]]
['m_5fwarn',['m_warn',['../class_s_s_l_client_impl.html#a2bfb55bcde46d8d77a46bfe0f577bf3f',1,'SSLClientImpl']]],
['make_5fvector_5fpem',['make_vector_pem',['../namespace_s_s_l_obj.html#a9a58d01c9073b90f2b42c655828aea6d',1,'SSLObj']]]
];

View file

@ -5,7 +5,9 @@ var searchData=
['sec_5fper_5fhour',['SEC_PER_HOUR',['../time__macros_8h.html#a2d540510d5860d7f190d13124956bc57',1,'time_macros.h']]],
['sec_5fper_5fmin',['SEC_PER_MIN',['../time__macros_8h.html#ac47b302f1b8d2a7a9c035c417247be76',1,'time_macros.h']]],
['sec_5fper_5fyear',['SEC_PER_YEAR',['../time__macros_8h.html#a8cd8e04105fec7cd442d078c303e46b9',1,'time_macros.h']]],
['set_5fmutual_5fimpl',['set_mutual_impl',['../class_s_s_l_client_impl.html#a9dd694f8e0e65624b103dc781a7744af',1,'SSLClientImpl']]],
['set_5fparameters',['set_parameters',['../class_s_s_l_session.html#a2fa15ce0b7caae25dfb567954175257e',1,'SSLSession']]],
['setmutualauthparams',['setMutualAuthParams',['../class_s_s_l_client.html#a16aa9765bd450dcbba21c598456f464f',1,'SSLClient']]],
['ssl_5fbr_5fconnect_5ffail',['SSL_BR_CONNECT_FAIL',['../_s_s_l_client_impl_8h.html#a2c3e4bb40f36b262a5214e2da2bca9c5afb90a695332a7c96044dc97c577ee3c3',1,'SSLClientImpl.h']]],
['ssl_5fbr_5fwrite_5ferror',['SSL_BR_WRITE_ERROR',['../_s_s_l_client_impl_8h.html#a2c3e4bb40f36b262a5214e2da2bca9c5a1d9afd51e0012e791f099657797c9aa9',1,'SSLClientImpl.h']]],
['ssl_5fclient_5fconnect_5ffail',['SSL_CLIENT_CONNECT_FAIL',['../_s_s_l_client_impl_8h.html#a2c3e4bb40f36b262a5214e2da2bca9c5aaa79045423a355885738cd239dff6c2b',1,'SSLClientImpl.h']]],
@ -16,8 +18,9 @@ var searchData=
['ssl_5fnone',['SSL_NONE',['../_s_s_l_client_impl_8h.html#ab658e6d84759440dbf3c890446075395af16e73d8cce9a2c987bde5afe5524d7f',1,'SSLClientImpl.h']]],
['ssl_5fok',['SSL_OK',['../_s_s_l_client_impl_8h.html#a2c3e4bb40f36b262a5214e2da2bca9c5a1218c16a5bf50589e0c498983851612c',1,'SSLClientImpl.h']]],
['ssl_5fout_5fof_5fmemory',['SSL_OUT_OF_MEMORY',['../_s_s_l_client_impl_8h.html#a2c3e4bb40f36b262a5214e2da2bca9c5adec799caf92b4fe2b6d2b362136f6ef6',1,'SSLClientImpl.h']]],
['ssl_5fpem_5fdecode_5fstate',['ssl_pem_decode_state',['../structssl__pem__decode__state.html',1,'']]],
['ssl_5fwarn',['SSL_WARN',['../_s_s_l_client_impl_8h.html#ab658e6d84759440dbf3c890446075395a86c8fdfc38831619d5ed73dff5b0911d',1,'SSLClientImpl.h']]],
['sslclient',['SSLClient',['../class_s_s_l_client.html',1,'SSLClient&lt; C, SessionCache &gt;'],['../class_s_s_l_client.html#ae9a7509bc8a18f67e286547c19deb3c0',1,'SSLClient::SSLClient(const C &amp;client, const br_x509_trust_anchor *trust_anchors, const size_t trust_anchors_num, const int analog_pin, const DebugLevel debug=SSL_WARN)'],['../class_s_s_l_client.html#ad7b20a2ac220d346a8047db77d97723d',1,'SSLClient::SSLClient(const C &amp;client, const br_x509_trust_anchor *trust_anchors, const size_t trust_anchors_num, const int analog_pin, const DebugLevel debug, const SSLClientParameters *mutual_auth_params)']]],
['sslclient',['SSLClient',['../class_s_s_l_client.html',1,'SSLClient&lt; C, SessionCache &gt;'],['../class_s_s_l_client.html#ae9a7509bc8a18f67e286547c19deb3c0',1,'SSLClient::SSLClient()']]],
['sslclient_2eh',['SSLClient.h',['../_s_s_l_client_8h.html',1,'']]],
['sslclient_5fh_5f',['SSLClient_H_',['../_s_s_l_client_8h.html#a0e14869de8f634ff2fb63826ae583569',1,'SSLClient.h']]],
['sslclientimpl',['SSLClientImpl',['../class_s_s_l_client_impl.html',1,'SSLClientImpl'],['../class_s_s_l_client_impl.html#a2b0b9043c8252871272bf6ba199ab67b',1,'SSLClientImpl::SSLClientImpl(const br_x509_trust_anchor *trust_anchors, const size_t trust_anchors_num, const int analog_pin, const DebugLevel debug)'],['../class_s_s_l_client_impl.html#a8314c7dab1d923db5624f8075a53e6ea',1,'SSLClientImpl::SSLClientImpl(const br_x509_trust_anchor *trust_anchors, const size_t trust_anchors_num, const int analog_pin, const DebugLevel debug, const SSLClientParameters *mutual_auth_params)']]],
@ -25,6 +28,9 @@ var searchData=
['sslclientimpl_2eh',['SSLClientImpl.h',['../_s_s_l_client_impl_8h.html',1,'']]],
['sslclientparameters',['SSLClientParameters',['../struct_s_s_l_client_parameters.html',1,'']]],
['sslclientparameters_2eh',['SSLClientParameters.h',['../_s_s_l_client_parameters_8h.html',1,'']]],
['sslobj',['SSLObj',['../namespace_s_s_l_obj.html',1,'']]],
['sslobj_2ecpp',['SSLObj.cpp',['../_s_s_l_obj_8cpp.html',1,'']]],
['sslobj_2eh',['SSLObj.h',['../_s_s_l_obj_8h.html',1,'']]],
['sslsession',['SSLSession',['../class_s_s_l_session.html',1,'SSLSession'],['../class_s_s_l_session.html#ae05648200cea66577f024d5d09a6fcbb',1,'SSLSession::SSLSession()']]],
['sslsession_2ecpp',['SSLSession.cpp',['../_s_s_l_session_8cpp.html',1,'']]],
['sslsession_2eh',['SSLSession.h',['../_s_s_l_session_8h.html',1,'']]],

View file

@ -1,5 +1,6 @@
var searchData=
[
['ssl_5fpem_5fdecode_5fstate',['ssl_pem_decode_state',['../structssl__pem__decode__state.html',1,'']]],
['sslclient',['SSLClient',['../class_s_s_l_client.html',1,'']]],
['sslclientimpl',['SSLClientImpl',['../class_s_s_l_client_impl.html',1,'']]],
['sslclientparameters',['SSLClientParameters',['../struct_s_s_l_client_parameters.html',1,'']]],

View file

@ -4,6 +4,8 @@ var searchData=
['sslclientimpl_2ecpp',['SSLClientImpl.cpp',['../_s_s_l_client_impl_8cpp.html',1,'']]],
['sslclientimpl_2eh',['SSLClientImpl.h',['../_s_s_l_client_impl_8h.html',1,'']]],
['sslclientparameters_2eh',['SSLClientParameters.h',['../_s_s_l_client_parameters_8h.html',1,'']]],
['sslobj_2ecpp',['SSLObj.cpp',['../_s_s_l_obj_8cpp.html',1,'']]],
['sslobj_2eh',['SSLObj.h',['../_s_s_l_obj_8h.html',1,'']]],
['sslsession_2ecpp',['SSLSession.cpp',['../_s_s_l_session_8cpp.html',1,'']]],
['sslsession_2eh',['SSLSession.h',['../_s_s_l_session_8h.html',1,'']]]
];

View file

@ -6,5 +6,6 @@ var searchData=
['m_5fprint_5fbr_5ferror',['m_print_br_error',['../class_s_s_l_client_impl.html#a2cf492a714cf787e54a17bb47cda43ed',1,'SSLClientImpl']]],
['m_5fprint_5fprefix',['m_print_prefix',['../class_s_s_l_client_impl.html#a9ee82ad492f2297bd7cd0835c0d4556f',1,'SSLClientImpl']]],
['m_5fprint_5fssl_5ferror',['m_print_ssl_error',['../class_s_s_l_client_impl.html#a6e701597178b81f10d0db671b81ab075',1,'SSLClientImpl']]],
['m_5fwarn',['m_warn',['../class_s_s_l_client_impl.html#a2bfb55bcde46d8d77a46bfe0f577bf3f',1,'SSLClientImpl']]]
['m_5fwarn',['m_warn',['../class_s_s_l_client_impl.html#a2bfb55bcde46d8d77a46bfe0f577bf3f',1,'SSLClientImpl']]],
['make_5fvector_5fpem',['make_vector_pem',['../namespace_s_s_l_obj.html#a9a58d01c9073b90f2b42c655828aea6d',1,'SSLObj']]]
];

View file

@ -1,7 +1,9 @@
var searchData=
[
['set_5fmutual_5fimpl',['set_mutual_impl',['../class_s_s_l_client_impl.html#a9dd694f8e0e65624b103dc781a7744af',1,'SSLClientImpl']]],
['set_5fparameters',['set_parameters',['../class_s_s_l_session.html#a2fa15ce0b7caae25dfb567954175257e',1,'SSLSession']]],
['sslclient',['SSLClient',['../class_s_s_l_client.html#ae9a7509bc8a18f67e286547c19deb3c0',1,'SSLClient::SSLClient(const C &amp;client, const br_x509_trust_anchor *trust_anchors, const size_t trust_anchors_num, const int analog_pin, const DebugLevel debug=SSL_WARN)'],['../class_s_s_l_client.html#ad7b20a2ac220d346a8047db77d97723d',1,'SSLClient::SSLClient(const C &amp;client, const br_x509_trust_anchor *trust_anchors, const size_t trust_anchors_num, const int analog_pin, const DebugLevel debug, const SSLClientParameters *mutual_auth_params)']]],
['setmutualauthparams',['setMutualAuthParams',['../class_s_s_l_client.html#a16aa9765bd450dcbba21c598456f464f',1,'SSLClient']]],
['sslclient',['SSLClient',['../class_s_s_l_client.html#ae9a7509bc8a18f67e286547c19deb3c0',1,'SSLClient']]],
['sslclientimpl',['SSLClientImpl',['../class_s_s_l_client_impl.html#a2b0b9043c8252871272bf6ba199ab67b',1,'SSLClientImpl::SSLClientImpl(const br_x509_trust_anchor *trust_anchors, const size_t trust_anchors_num, const int analog_pin, const DebugLevel debug)'],['../class_s_s_l_client_impl.html#a8314c7dab1d923db5624f8075a53e6ea',1,'SSLClientImpl::SSLClientImpl(const br_x509_trust_anchor *trust_anchors, const size_t trust_anchors_num, const int analog_pin, const DebugLevel debug, const SSLClientParameters *mutual_auth_params)']]],
['sslsession',['SSLSession',['../class_s_s_l_session.html#ae05648200cea66577f024d5d09a6fcbb',1,'SSLSession']]],
['stop',['stop',['../class_s_s_l_client.html#ad30db47248d78df7c12dedfb27f06529',1,'SSLClient']]],

View file

@ -0,0 +1,30 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html><head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="namespaces_0.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript"><!--
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
--></script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript"><!--
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
/* @license-end */
--></script>
</div>
</body>
</html>

View file

@ -0,0 +1,4 @@
var searchData=
[
['sslobj',['SSLObj',['../namespace_s_s_l_obj.html',1,'']]]
];

View file

@ -1,39 +1,42 @@
var indexSectionsWithContent =
{
0: "_abcdefgilmoprstuw",
0: "_abcdefgilmoprstuvw",
1: "s",
2: "cerst",
3: "abcfgilmoprstw",
4: "_bce",
5: "de",
6: "s",
7: "_cgpstu",
8: "st"
2: "s",
3: "cerst",
4: "abcfgilmoprstw",
5: "_bceiv",
6: "de",
7: "s",
8: "_cgpstu",
9: "st"
};
var indexSectionNames =
{
0: "all",
1: "classes",
2: "files",
3: "functions",
4: "variables",
5: "enums",
6: "enumvalues",
7: "defines",
8: "pages"
2: "namespaces",
3: "files",
4: "functions",
5: "variables",
6: "enums",
7: "enumvalues",
8: "defines",
9: "pages"
};
var indexSectionLabels =
{
0: "All",
1: "Classes",
2: "Files",
3: "Functions",
4: "Variables",
5: "Enumerations",
6: "Enumerator",
7: "Macros",
8: "Pages"
2: "Namespaces",
3: "Files",
4: "Functions",
5: "Variables",
6: "Enumerations",
7: "Enumerator",
8: "Macros",
9: "Pages"
};

View file

@ -0,0 +1,30 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html><head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="variables_4.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript"><!--
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
--></script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript"><!--
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
/* @license-end */
--></script>
</div>
</body>
</html>

View file

@ -0,0 +1,4 @@
var searchData=
[
['index',['index',['../structssl__pem__decode__state.html#a8abbaad636bfcf50ef38f529e3cfd5f3',1,'ssl_pem_decode_state']]]
];

View file

@ -0,0 +1,30 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html><head><title></title>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<link rel="stylesheet" type="text/css" href="search.css"/>
<script type="text/javascript" src="variables_5.js"></script>
<script type="text/javascript" src="search.js"></script>
</head>
<body class="SRPage">
<div id="SRIndex">
<div class="SRStatus" id="Loading">Loading...</div>
<div id="SRResults"></div>
<script type="text/javascript"><!--
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
createResults();
/* @license-end */
--></script>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
<script type="text/javascript"><!--
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
document.getElementById("Loading").style.display="none";
document.getElementById("NoMatches").style.display="none";
var searchResults = new SearchResults("searchResults");
searchResults.Search();
/* @license-end */
--></script>
</div>
</body>
</html>

View file

@ -0,0 +1,4 @@
var searchData=
[
['vect',['vect',['../structssl__pem__decode__state.html#a95f2366376d5f958f9bc1e859b59bae9',1,'ssl_pem_decode_state']]]
];

View file

@ -0,0 +1,110 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SSLClient: Member List</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">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</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">SSLClient
&#160;<span id="projectnumber">v1.1.1</span>
</div>
<div id="projectbrief">Add TLS 1.2 functionality to any network library.</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</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">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('structssl__pem__decode__state.html','');});
/* @license-end */
</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">ssl_pem_decode_state Member List</div> </div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="structssl__pem__decode__state.html">ssl_pem_decode_state</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="structssl__pem__decode__state.html#a8abbaad636bfcf50ef38f529e3cfd5f3">index</a></td><td class="entry"><a class="el" href="structssl__pem__decode__state.html">ssl_pem_decode_state</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="structssl__pem__decode__state.html#a95f2366376d5f958f9bc1e859b59bae9">vect</a></td><td class="entry"><a class="el" href="structssl__pem__decode__state.html">ssl_pem_decode_state</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li>
</ul>
</div>
</body>
</html>

View file

@ -0,0 +1,149 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SSLClient: ssl_pem_decode_state 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="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">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</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">SSLClient
&#160;<span id="projectnumber">v1.1.1</span>
</div>
<div id="projectbrief">Add TLS 1.2 functionality to any network library.</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</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">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('structssl__pem__decode__state.html','');});
/* @license-end */
</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="summary">
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="structssl__pem__decode__state-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">ssl_pem_decode_state Struct Reference</div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a95f2366376d5f958f9bc1e859b59bae9"><td class="memItemLeft" align="right" valign="top">std::vector&lt; unsigned char &gt; *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structssl__pem__decode__state.html#a95f2366376d5f958f9bc1e859b59bae9">vect</a></td></tr>
<tr class="separator:a95f2366376d5f958f9bc1e859b59bae9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8abbaad636bfcf50ef38f529e3cfd5f3"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structssl__pem__decode__state.html#a8abbaad636bfcf50ef38f529e3cfd5f3">index</a> = 0</td></tr>
<tr class="separator:a8abbaad636bfcf50ef38f529e3cfd5f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a8abbaad636bfcf50ef38f529e3cfd5f3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8abbaad636bfcf50ef38f529e3cfd5f3">&#9670;&nbsp;</a></span>index</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">size_t ssl_pem_decode_state::index = 0</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a95f2366376d5f958f9bc1e859b59bae9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a95f2366376d5f958f9bc1e859b59bae9">&#9670;&nbsp;</a></span>vect</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;unsigned char&gt;* ssl_pem_decode_state::vect</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li>C:/Users/Noah/Documents/Arduino/libraries/SSLClient/src/<a class="el" href="_s_s_l_obj_8cpp.html">SSLObj.cpp</a></li>
</ul>
</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="structssl__pem__decode__state.html">ssl_pem_decode_state</a></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.15 </li>
</ul>
</div>
</body>
</html>

View file

@ -0,0 +1,5 @@
var structssl__pem__decode__state =
[
[ "index", "structssl__pem__decode__state.html#a8abbaad636bfcf50ef38f529e3cfd5f3", null ],
[ "vect", "structssl__pem__decode__state.html#a95f2366376d5f958f9bc1e859b59bae9", null ]
];

View file

@ -12,7 +12,7 @@ struct ssl_pem_decode_state {
size_t index = 0;
};
static void ssl_pem_decode(void *dest_ctx, const void *src, size_t len) {
static void ssl_pem_decode_callback(void *dest_ctx, const void *src, size_t len) {
ssl_pem_decode_state* ctx = static_cast<ssl_pem_decode_state*>(dest_ctx);
for (size_t i = 0; i < len; i++) ctx->vect->emplace_back(static_cast<const unsigned char*>(src)[i]);
// update index
@ -31,7 +31,7 @@ const std::vector<unsigned char> SSLObj::make_vector_pem(const char* data, const
state.vect = &temp;
state.index = 0;
// set the byte reciever
br_pem_decoder_setdest(&pctx, &ssl_pem_decode, &state);
br_pem_decoder_setdest(&pctx, &ssl_pem_decode_callback, &state);
// start decoding!
int br_state = 0;
size_t index = 0;
@ -53,13 +53,3 @@ const std::vector<unsigned char> SSLObj::make_vector_pem(const char* data, const
// else we're good!
return temp;
}
const std::vector<unsigned char> SSLObj::make_vector_der(const char* data, const size_t len) {
if (data == nullptr || len == 0) return {};
// create a temporary vector
std::vector<unsigned char> temp(len);
// copy the elements over
for (size_t i = 0; i < len; i++) temp[i] = data[i];
// return the new SSLObj
return temp;
}

View file

@ -41,13 +41,23 @@
* which allow BearSSL use client certificates when creating a TLS connection. Since
* most certificates are transmitted over the internet in PEM format, a certificate can
* be provided in PEM or DER format, and will be converted internally to DER format for
* later use. A PEM file provided to this class MUST CONTAIN the `----BEGIN ... -----`
* header in order to be parsed correctly.
* later use.
*/
namespace SSLObj {
/**
* @brief Convert a PEM buffer into a vector of raw DER bytes
*
* This function takes a PEM buffer (e.g. `----BEGIN CERTIFICATE...`) and converts
* it into a vector of raw bytes. The bytes given to this function must:
* * Contain both the `-----BEGIN XXX-----` and `-----END XXX-----` strings. These are
* removed during processing.
* * Have a base64 encoded body
* * Only contain a single object (certificate, private key, etc.).
*
* @returns The raw bytes decoded from the PEM file.
*/
const std::vector<unsigned char> make_vector_pem(const char* data, const size_t len);
const std::vector<unsigned char> make_vector_der(const char* data, const size_t len);
}
#endif