summaryrefslogtreecommitdiff
path: root/doc/html/boost_asio/reference/ssl__stream/async_handshake/overload2.html
blob: aa4cc871cb1ad17540bc8958c53df080e42b8b0d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>ssl::stream::async_handshake (2 of 2 overloads)</title>
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../../../boost_asio.html" title="Boost.Asio">
<link rel="up" href="../async_handshake.html" title="ssl::stream::async_handshake">
<link rel="prev" href="overload1.html" title="ssl::stream::async_handshake (1 of 2 overloads)">
<link rel="next" href="../async_read_some.html" title="ssl::stream::async_read_some">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="overload1.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../async_handshake.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../boost_asio.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../async_read_some.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h5 class="title">
<a name="boost_asio.reference.ssl__stream.async_handshake.overload2"></a><a class="link" href="overload2.html" title="ssl::stream::async_handshake (2 of 2 overloads)">ssl::stream::async_handshake
          (2 of 2 overloads)</a>
</h5></div></div></div>
<p>
            Start an asynchronous SSL handshake.
          </p>
<pre class="programlisting">template&lt;
    typename <a class="link" href="../../ConstBufferSequence.html" title="Constant buffer sequence requirements">ConstBufferSequence</a>,
    typename <a class="link" href="../../BufferedHandshakeHandler.html" title="Buffered handshake handler requirements">BufferedHandshakeHandler</a>&gt;
<a class="link" href="../../asynchronous_operations.html#boost_asio.reference.asynchronous_operations.automatic_deduction_of_initiating_function_return_type"><span class="emphasis"><em>DEDUCED</em></span></a> async_handshake(
    handshake_type type,
    const ConstBufferSequence &amp; buffers,
    BufferedHandshakeHandler &amp;&amp; handler);
</pre>
<p>
            This function is used to asynchronously perform an SSL handshake on the
            stream. This function call always returns immediately.
          </p>
<h6>
<a name="boost_asio.reference.ssl__stream.async_handshake.overload2.h0"></a>
            <span class="phrase"><a name="boost_asio.reference.ssl__stream.async_handshake.overload2.parameters"></a></span><a class="link" href="overload2.html#boost_asio.reference.ssl__stream.async_handshake.overload2.parameters">Parameters</a>
          </h6>
<div class="variablelist">
<p class="title"><b></b></p>
<dl class="variablelist">
<dt><span class="term">type</span></dt>
<dd><p>
                  The type of handshaking to be performed, i.e. as a client or as
                  a server.
                </p></dd>
<dt><span class="term">buffers</span></dt>
<dd><p>
                  The buffered data to be reused for the handshake. Although the
                  buffers object may be copied as necessary, ownership of the underlying
                  buffers is retained by the caller, which must guarantee that they
                  remain valid until the handler is called.
                </p></dd>
<dt><span class="term">handler</span></dt>
<dd>
<p>
                  The handler to be called when the handshake operation completes.
                  Copies will be made of the handler as required. The equivalent
                  function signature of the handler must be:
</p>
<pre class="programlisting">void handler(
  const boost::system::error_code&amp; error, // Result of operation.
  std::size_t bytes_transferred // Amount of buffers used in handshake.
);
</pre>
<p>
                </p>
</dd>
</dl>
</div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003-2019 Christopher M. Kohlhoff<p>
        Distributed under the Boost Software License, Version 1.0. (See accompanying
        file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
      </p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="overload1.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../async_handshake.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../boost_asio.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../async_read_some.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>