mirror of
https://github.com/espressif/esp-protocols.git
synced 2025-11-03 16:11:37 +01:00
212 lines
9.0 KiB
HTML
212 lines
9.0 KiB
HTML
<!DOCTYPE html>
|
|
<html class="writer-html5" lang="en" >
|
|
<head>
|
|
<meta charset="utf-8" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
|
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
<title>ASIO port - ESP32 - — ESP-Protocols latest documentation</title>
|
|
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
|
|
<link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
|
|
<link rel="stylesheet" href="_static/copybutton.css" type="text/css" />
|
|
<link rel="stylesheet" href="_static/theme_overrides.css" type="text/css" />
|
|
<!--[if lt IE 9]>
|
|
<script src="_static/js/html5shiv.min.js"></script>
|
|
<![endif]-->
|
|
|
|
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
|
|
<script src="_static/jquery.js"></script>
|
|
<script src="_static/underscore.js"></script>
|
|
<script src="_static/doctools.js"></script>
|
|
<script src="_static/clipboard.min.js"></script>
|
|
<script src="_static/copybutton.js"></script>
|
|
<script src="_static/js/theme.js"></script>
|
|
|
|
|
|
|
|
|
|
<script type="text/javascript">
|
|
DOCUMENTATION_OPTIONS.PAGENAME = 'index';
|
|
DOCUMENTATION_OPTIONS.PROJECT_SLUG = 'esp-idf';
|
|
DOCUMENTATION_OPTIONS.LATEST_BRANCH_NAME = 'master';
|
|
DOCUMENTATION_OPTIONS.VERSIONS_URL = 'https://github.com/espressif/esp-protocols/docs/docs_versions.js';
|
|
DOCUMENTATION_OPTIONS.LANGUAGES = ["en", "zh_CN"];
|
|
DOCUMENTATION_OPTIONS.IDF_TARGET = 'esp32';
|
|
DOCUMENTATION_OPTIONS.HAS_IDF_TARGETS = ["esp32"]
|
|
DOCUMENTATION_OPTIONS.RELEASE = 'latest';
|
|
</script>
|
|
|
|
<script type="text/javascript" src="https://github.com/espressif/esp-protocols/docs/docs_versions.js"></script>
|
|
<link rel="index" title="Index" href="genindex.html" />
|
|
<link rel="search" title="Search" href="search.html" />
|
|
</head>
|
|
|
|
<body class="wy-body-for-nav">
|
|
<div class="wy-grid-for-nav">
|
|
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
|
|
<div class="wy-side-scroll">
|
|
<div class="wy-side-nav-search" >
|
|
<a href="#" class="icon icon-home"> ESP-Protocols
|
|
<img src="_static/espressif-logo.svg" class="logo" alt="Logo"/>
|
|
</a>
|
|
|
|
|
|
<div class="selectors">
|
|
<select id="target-select" style="width: 150px;" hidden>
|
|
<option value="" disabled selected>Choose target...</option>
|
|
</select>
|
|
</div>
|
|
|
|
|
|
<div class="selectors">
|
|
<select id="version-select" style="width: 150px;" hidden>
|
|
<option value="" disabled selected>Choose version...</option>
|
|
</select>
|
|
</div>
|
|
|
|
|
|
<div role="search">
|
|
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
|
|
<input type="text" name="q" placeholder="Search docs" />
|
|
<input type="hidden" name="check_keywords" value="yes" />
|
|
<input type="hidden" name="area" value="default" />
|
|
</form>
|
|
</div>
|
|
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
|
|
<!-- Local TOC -->
|
|
<div class="local-toc"><ul>
|
|
<li><a class="reference internal" href="#">ASIO port</a><ul>
|
|
<li><a class="reference internal" href="#overview">Overview</a><ul>
|
|
<li><a class="reference internal" href="#asio-documentation">ASIO documentation</a></li>
|
|
<li><a class="reference internal" href="#supported-features">Supported features</a></li>
|
|
</ul>
|
|
</li>
|
|
<li><a class="reference internal" href="#application-example">Application Example</a></li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</nav>
|
|
|
|
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
|
|
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
|
|
<a href="#">ESP-Protocols</a>
|
|
</nav>
|
|
|
|
<div class="wy-nav-content">
|
|
<div class="rst-content">
|
|
<div role="navigation" aria-label="Page navigation">
|
|
<ul class="wy-breadcrumbs">
|
|
<li><a href="#" class="icon icon-home"></a> »</li>
|
|
<li>ASIO port</li>
|
|
<li class="wy-breadcrumbs-aside">
|
|
<a href="https://github.com/espressif/esp-protocols/blob/a96f17d/docs/en/index.rst" class="fa fa-github"> Edit on GitHub</a>
|
|
</li>
|
|
</ul>
|
|
<hr/>
|
|
</div>
|
|
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
|
|
<div itemprop="articleBody">
|
|
|
|
<section id="asio-port">
|
|
<h1>ASIO port<a class="headerlink" href="#asio-port" title="Permalink to this headline"></a></h1>
|
|
<section id="overview">
|
|
<h2>Overview<a class="headerlink" href="#overview" title="Permalink to this headline"></a></h2>
|
|
<p>Asio is a cross-platform C++ library, see <a class="reference external" href="https://think-async.com/Asio/">https://think-async.com/Asio/</a>. It provides a consistent asynchronous model using a modern C++ approach.</p>
|
|
<section id="asio-documentation">
|
|
<h3>ASIO documentation<a class="headerlink" href="#asio-documentation" title="Permalink to this headline"></a></h3>
|
|
<p>Please refer to the original asio documentation at <a class="reference external" href="https://think-async.com/Asio/Documentation">https://think-async.com/Asio/Documentation</a>.
|
|
Asio also comes with a number of examples which could be find under Documentation/Examples on that web site.</p>
|
|
</section>
|
|
<section id="supported-features">
|
|
<h3>Supported features<a class="headerlink" href="#supported-features" title="Permalink to this headline"></a></h3>
|
|
<p>ESP platform port currently supports only network asynchronous socket operations; does not support serial port.
|
|
SSL/TLS support is disabled by default and could be enabled in component configuration menu by choosing TLS library from</p>
|
|
<ul class="simple">
|
|
<li><p>mbedTLS with OpenSSL translation layer (default option)</p></li>
|
|
<li><p>wolfSSL</p></li>
|
|
</ul>
|
|
<p>SSL support is very basic at this stage and it does include following features:</p>
|
|
<ul class="simple">
|
|
<li><p>Verification callbacks</p></li>
|
|
<li><p>DH property files</p></li>
|
|
<li><p>Certificates/private keys file APIs</p></li>
|
|
</ul>
|
|
<p>Internal asio settings for ESP include</p>
|
|
<ul class="simple">
|
|
<li><p>EXCEPTIONS are enabled in ASIO if enabled in menuconfig</p></li>
|
|
<li><p>TYPEID is enabled in ASIO if enabled in menuconfig</p></li>
|
|
</ul>
|
|
</section>
|
|
</section>
|
|
<section id="application-example">
|
|
<h2>Application Example<a class="headerlink" href="#application-example" title="Permalink to this headline"></a></h2>
|
|
<p>ESP examples are based on standard asio <a class="reference external" href="https://github.com/espressif/esp-protocols/tree/a96f17d/examples/../examples">examples </a>:</p>
|
|
<ul class="simple">
|
|
<li><p><a class="reference external" href="https://github.com/espressif/esp-protocols/tree/a96f17d/examples/../examples/udp_echo_server">udp_echo_server </a></p></li>
|
|
<li><p><a class="reference external" href="https://github.com/espressif/esp-protocols/tree/a96f17d/examples/../examples/tcp_echo_server">tcp_echo_server </a></p></li>
|
|
<li><p><a class="reference external" href="https://github.com/espressif/esp-protocols/tree/a96f17d/examples/../examples/asio_chat">asio_chat </a></p></li>
|
|
<li><p><a class="reference external" href="https://github.com/espressif/esp-protocols/tree/a96f17d/examples/../examples/ssl_client_server">ssl_client_server </a></p></li>
|
|
</ul>
|
|
<p>Please refer to the specific example README.md for details</p>
|
|
</section>
|
|
</section>
|
|
|
|
|
|
</div>
|
|
</div>
|
|
<footer>
|
|
|
|
<hr/>
|
|
|
|
<div role="contentinfo">
|
|
<p>© Copyright 2016 - 2022, Espressif Systems (Shanghai) Co., Ltd.</p>
|
|
</div>
|
|
|
|
<ul class="footer">
|
|
<li>
|
|
|
|
|
|
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/espressif/sphinx_idf_theme">theme</a> based on <a href="https://github.com/readthedocs/sphinx_rtd_theme">Read the Docs Sphinx Theme</a>.
|
|
</li>
|
|
<li class="footer-aside">
|
|
<a href="./esp-idf-en-master-esp32.pdf" class="fa fa-file-pdf-o"> Download PDF</a>
|
|
</li>
|
|
|
|
</ul>
|
|
|
|
</footer>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
</div>
|
|
|
|
<script>
|
|
jQuery(function () {
|
|
SphinxRtdTheme.Navigation.enable(true);
|
|
});
|
|
</script>
|
|
|
|
</body>
|
|
</html><script type=text/javascript>
|
|
window.onload =(function() {
|
|
var myAnchor = document.getElementById('version-select');
|
|
var mySpan = document.createElement('input');
|
|
mySpan.setAttribute('type', 'text');
|
|
mySpan.setAttribute('maxLength', '10');
|
|
mySpan.value = 'latest';
|
|
mySpan.setAttribute('disabled', true);
|
|
myAnchor.parentNode.replaceChild(mySpan, myAnchor);
|
|
|
|
var myAnchor = document.getElementById('target-select');
|
|
var mySpan = document.createElement('input');
|
|
mySpan.setAttribute('type', 'text');
|
|
mySpan.setAttribute('maxLength', '10');
|
|
mySpan.value = 'all targets';
|
|
mySpan.setAttribute('disabled', true);
|
|
myAnchor.parentNode.replaceChild(mySpan, myAnchor);
|
|
|
|
})();
|
|
</script>
|