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