• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<html>
2<head>
3<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
4<title>ssl::context</title>
5<link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css">
6<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
7<link rel="home" href="../../boost_asio.html" title="Boost.Asio">
8<link rel="up" href="../reference.html" title="Reference">
9<link rel="prev" href="spawn/overload7.html" title="spawn (7 of 7 overloads)">
10<link rel="next" href="ssl__context/add_certificate_authority.html" title="ssl::context::add_certificate_authority">
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="spawn/overload7.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.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="ssl__context/add_certificate_authority.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
24</div>
25<div class="section">
26<div class="titlepage"><div><div><h3 class="title">
27<a name="boost_asio.reference.ssl__context"></a><a class="link" href="ssl__context.html" title="ssl::context">ssl::context</a>
28</h3></div></div></div>
29<pre class="programlisting">class context :
30  public ssl::context_base,
31  noncopyable
32</pre>
33<h5>
34<a name="boost_asio.reference.ssl__context.h0"></a>
35        <span class="phrase"><a name="boost_asio.reference.ssl__context.types"></a></span><a class="link" href="ssl__context.html#boost_asio.reference.ssl__context.types">Types</a>
36      </h5>
37<div class="informaltable"><table class="table">
38<colgroup>
39<col>
40<col>
41</colgroup>
42<thead><tr>
43<th>
44                <p>
45                  Name
46                </p>
47              </th>
48<th>
49                <p>
50                  Description
51                </p>
52              </th>
53</tr></thead>
54<tbody>
55<tr>
56<td>
57                <p>
58                  <a class="link" href="ssl__context/file_format.html" title="ssl::context::file_format"><span class="bold"><strong>file_format</strong></span></a>
59                </p>
60              </td>
61<td>
62                <p>
63                  File format types.
64                </p>
65              </td>
66</tr>
67<tr>
68<td>
69                <p>
70                  <a class="link" href="ssl__context/method.html" title="ssl::context::method"><span class="bold"><strong>method</strong></span></a>
71                </p>
72              </td>
73<td>
74                <p>
75                  Different methods supported by a context.
76                </p>
77              </td>
78</tr>
79<tr>
80<td>
81                <p>
82                  <a class="link" href="ssl__context/native_handle_type.html" title="ssl::context::native_handle_type"><span class="bold"><strong>native_handle_type</strong></span></a>
83                </p>
84              </td>
85<td>
86                <p>
87                  The native handle type of the SSL context.
88                </p>
89              </td>
90</tr>
91<tr>
92<td>
93                <p>
94                  <a class="link" href="ssl__context/options.html" title="ssl::context::options"><span class="bold"><strong>options</strong></span></a>
95                </p>
96              </td>
97<td>
98                <p>
99                  Bitmask type for SSL options.
100                </p>
101              </td>
102</tr>
103<tr>
104<td>
105                <p>
106                  <a class="link" href="ssl__context/password_purpose.html" title="ssl::context::password_purpose"><span class="bold"><strong>password_purpose</strong></span></a>
107                </p>
108              </td>
109<td>
110                <p>
111                  Purpose of PEM password.
112                </p>
113              </td>
114</tr>
115</tbody>
116</table></div>
117<h5>
118<a name="boost_asio.reference.ssl__context.h1"></a>
119        <span class="phrase"><a name="boost_asio.reference.ssl__context.member_functions"></a></span><a class="link" href="ssl__context.html#boost_asio.reference.ssl__context.member_functions">Member
120        Functions</a>
121      </h5>
122<div class="informaltable"><table class="table">
123<colgroup>
124<col>
125<col>
126</colgroup>
127<thead><tr>
128<th>
129                <p>
130                  Name
131                </p>
132              </th>
133<th>
134                <p>
135                  Description
136                </p>
137              </th>
138</tr></thead>
139<tbody>
140<tr>
141<td>
142                <p>
143                  <a class="link" href="ssl__context/add_certificate_authority.html" title="ssl::context::add_certificate_authority"><span class="bold"><strong>add_certificate_authority</strong></span></a>
144                </p>
145              </td>
146<td>
147                <p>
148                  Add certification authority for performing verification.
149                </p>
150              </td>
151</tr>
152<tr>
153<td>
154                <p>
155                  <a class="link" href="ssl__context/add_verify_path.html" title="ssl::context::add_verify_path"><span class="bold"><strong>add_verify_path</strong></span></a>
156                </p>
157              </td>
158<td>
159                <p>
160                  Add a directory containing certificate authority files to be used
161                  for performing verification.
162                </p>
163              </td>
164</tr>
165<tr>
166<td>
167                <p>
168                  <a class="link" href="ssl__context/clear_options.html" title="ssl::context::clear_options"><span class="bold"><strong>clear_options</strong></span></a>
169                </p>
170              </td>
171<td>
172                <p>
173                  Clear options on the context.
174                </p>
175              </td>
176</tr>
177<tr>
178<td>
179                <p>
180                  <a class="link" href="ssl__context/context.html" title="ssl::context::context"><span class="bold"><strong>context</strong></span></a> <span class="silver">[constructor]</span>
181                </p>
182              </td>
183<td>
184                <p>
185                  Constructor. <br> <span class="silver"> —</span><br> Construct to take ownership of a native
186                  handle. <br> <span class="silver"> —</span><br> Move-construct a context from another.
187                </p>
188              </td>
189</tr>
190<tr>
191<td>
192                <p>
193                  <a class="link" href="ssl__context/load_verify_file.html" title="ssl::context::load_verify_file"><span class="bold"><strong>load_verify_file</strong></span></a>
194                </p>
195              </td>
196<td>
197                <p>
198                  Load a certification authority file for performing verification.
199                </p>
200              </td>
201</tr>
202<tr>
203<td>
204                <p>
205                  <a class="link" href="ssl__context/native_handle.html" title="ssl::context::native_handle"><span class="bold"><strong>native_handle</strong></span></a>
206                </p>
207              </td>
208<td>
209                <p>
210                  Get the underlying implementation in the native type.
211                </p>
212              </td>
213</tr>
214<tr>
215<td>
216                <p>
217                  <a class="link" href="ssl__context/operator_eq_.html" title="ssl::context::operator="><span class="bold"><strong>operator=</strong></span></a>
218                </p>
219              </td>
220<td>
221                <p>
222                  Move-assign a context from another.
223                </p>
224              </td>
225</tr>
226<tr>
227<td>
228                <p>
229                  <a class="link" href="ssl__context/set_default_verify_paths.html" title="ssl::context::set_default_verify_paths"><span class="bold"><strong>set_default_verify_paths</strong></span></a>
230                </p>
231              </td>
232<td>
233                <p>
234                  Configures the context to use the default directories for finding
235                  certification authority certificates.
236                </p>
237              </td>
238</tr>
239<tr>
240<td>
241                <p>
242                  <a class="link" href="ssl__context/set_options.html" title="ssl::context::set_options"><span class="bold"><strong>set_options</strong></span></a>
243                </p>
244              </td>
245<td>
246                <p>
247                  Set options on the context.
248                </p>
249              </td>
250</tr>
251<tr>
252<td>
253                <p>
254                  <a class="link" href="ssl__context/set_password_callback.html" title="ssl::context::set_password_callback"><span class="bold"><strong>set_password_callback</strong></span></a>
255                </p>
256              </td>
257<td>
258                <p>
259                  Set the password callback.
260                </p>
261              </td>
262</tr>
263<tr>
264<td>
265                <p>
266                  <a class="link" href="ssl__context/set_verify_callback.html" title="ssl::context::set_verify_callback"><span class="bold"><strong>set_verify_callback</strong></span></a>
267                </p>
268              </td>
269<td>
270                <p>
271                  Set the callback used to verify peer certificates.
272                </p>
273              </td>
274</tr>
275<tr>
276<td>
277                <p>
278                  <a class="link" href="ssl__context/set_verify_depth.html" title="ssl::context::set_verify_depth"><span class="bold"><strong>set_verify_depth</strong></span></a>
279                </p>
280              </td>
281<td>
282                <p>
283                  Set the peer verification depth.
284                </p>
285              </td>
286</tr>
287<tr>
288<td>
289                <p>
290                  <a class="link" href="ssl__context/set_verify_mode.html" title="ssl::context::set_verify_mode"><span class="bold"><strong>set_verify_mode</strong></span></a>
291                </p>
292              </td>
293<td>
294                <p>
295                  Set the peer verification mode.
296                </p>
297              </td>
298</tr>
299<tr>
300<td>
301                <p>
302                  <a class="link" href="ssl__context/use_certificate.html" title="ssl::context::use_certificate"><span class="bold"><strong>use_certificate</strong></span></a>
303                </p>
304              </td>
305<td>
306                <p>
307                  Use a certificate from a memory buffer.
308                </p>
309              </td>
310</tr>
311<tr>
312<td>
313                <p>
314                  <a class="link" href="ssl__context/use_certificate_chain.html" title="ssl::context::use_certificate_chain"><span class="bold"><strong>use_certificate_chain</strong></span></a>
315                </p>
316              </td>
317<td>
318                <p>
319                  Use a certificate chain from a memory buffer.
320                </p>
321              </td>
322</tr>
323<tr>
324<td>
325                <p>
326                  <a class="link" href="ssl__context/use_certificate_chain_file.html" title="ssl::context::use_certificate_chain_file"><span class="bold"><strong>use_certificate_chain_file</strong></span></a>
327                </p>
328              </td>
329<td>
330                <p>
331                  Use a certificate chain from a file.
332                </p>
333              </td>
334</tr>
335<tr>
336<td>
337                <p>
338                  <a class="link" href="ssl__context/use_certificate_file.html" title="ssl::context::use_certificate_file"><span class="bold"><strong>use_certificate_file</strong></span></a>
339                </p>
340              </td>
341<td>
342                <p>
343                  Use a certificate from a file.
344                </p>
345              </td>
346</tr>
347<tr>
348<td>
349                <p>
350                  <a class="link" href="ssl__context/use_private_key.html" title="ssl::context::use_private_key"><span class="bold"><strong>use_private_key</strong></span></a>
351                </p>
352              </td>
353<td>
354                <p>
355                  Use a private key from a memory buffer.
356                </p>
357              </td>
358</tr>
359<tr>
360<td>
361                <p>
362                  <a class="link" href="ssl__context/use_private_key_file.html" title="ssl::context::use_private_key_file"><span class="bold"><strong>use_private_key_file</strong></span></a>
363                </p>
364              </td>
365<td>
366                <p>
367                  Use a private key from a file.
368                </p>
369              </td>
370</tr>
371<tr>
372<td>
373                <p>
374                  <a class="link" href="ssl__context/use_rsa_private_key.html" title="ssl::context::use_rsa_private_key"><span class="bold"><strong>use_rsa_private_key</strong></span></a>
375                </p>
376              </td>
377<td>
378                <p>
379                  Use an RSA private key from a memory buffer.
380                </p>
381              </td>
382</tr>
383<tr>
384<td>
385                <p>
386                  <a class="link" href="ssl__context/use_rsa_private_key_file.html" title="ssl::context::use_rsa_private_key_file"><span class="bold"><strong>use_rsa_private_key_file</strong></span></a>
387                </p>
388              </td>
389<td>
390                <p>
391                  Use an RSA private key from a file.
392                </p>
393              </td>
394</tr>
395<tr>
396<td>
397                <p>
398                  <a class="link" href="ssl__context/use_tmp_dh.html" title="ssl::context::use_tmp_dh"><span class="bold"><strong>use_tmp_dh</strong></span></a>
399                </p>
400              </td>
401<td>
402                <p>
403                  Use the specified memory buffer to obtain the temporary Diffie-Hellman
404                  parameters.
405                </p>
406              </td>
407</tr>
408<tr>
409<td>
410                <p>
411                  <a class="link" href="ssl__context/use_tmp_dh_file.html" title="ssl::context::use_tmp_dh_file"><span class="bold"><strong>use_tmp_dh_file</strong></span></a>
412                </p>
413              </td>
414<td>
415                <p>
416                  Use the specified file to obtain the temporary Diffie-Hellman parameters.
417                </p>
418              </td>
419</tr>
420<tr>
421<td>
422                <p>
423                  <a class="link" href="ssl__context/_context.html" title="ssl::context::~context"><span class="bold"><strong>~context</strong></span></a> <span class="silver">[destructor]</span>
424                </p>
425              </td>
426<td>
427                <p>
428                  Destructor.
429                </p>
430              </td>
431</tr>
432</tbody>
433</table></div>
434<h5>
435<a name="boost_asio.reference.ssl__context.h2"></a>
436        <span class="phrase"><a name="boost_asio.reference.ssl__context.data_members"></a></span><a class="link" href="ssl__context.html#boost_asio.reference.ssl__context.data_members">Data
437        Members</a>
438      </h5>
439<div class="informaltable"><table class="table">
440<colgroup>
441<col>
442<col>
443</colgroup>
444<thead><tr>
445<th>
446                <p>
447                  Name
448                </p>
449              </th>
450<th>
451                <p>
452                  Description
453                </p>
454              </th>
455</tr></thead>
456<tbody>
457<tr>
458<td>
459                <p>
460                  <a class="link" href="ssl__context/default_workarounds.html" title="ssl::context::default_workarounds"><span class="bold"><strong>default_workarounds</strong></span></a> <span class="silver">[static]</span>
461                </p>
462              </td>
463<td>
464                <p>
465                  Implement various bug workarounds.
466                </p>
467              </td>
468</tr>
469<tr>
470<td>
471                <p>
472                  <a class="link" href="ssl__context/no_compression.html" title="ssl::context::no_compression"><span class="bold"><strong>no_compression</strong></span></a> <span class="silver">[static]</span>
473                </p>
474              </td>
475<td>
476                <p>
477                  Disable compression. Compression is disabled by default.
478                </p>
479              </td>
480</tr>
481<tr>
482<td>
483                <p>
484                  <a class="link" href="ssl__context/no_sslv2.html" title="ssl::context::no_sslv2"><span class="bold"><strong>no_sslv2</strong></span></a> <span class="silver">[static]</span>
485                </p>
486              </td>
487<td>
488                <p>
489                  Disable SSL v2.
490                </p>
491              </td>
492</tr>
493<tr>
494<td>
495                <p>
496                  <a class="link" href="ssl__context/no_sslv3.html" title="ssl::context::no_sslv3"><span class="bold"><strong>no_sslv3</strong></span></a> <span class="silver">[static]</span>
497                </p>
498              </td>
499<td>
500                <p>
501                  Disable SSL v3.
502                </p>
503              </td>
504</tr>
505<tr>
506<td>
507                <p>
508                  <a class="link" href="ssl__context/no_tlsv1.html" title="ssl::context::no_tlsv1"><span class="bold"><strong>no_tlsv1</strong></span></a> <span class="silver">[static]</span>
509                </p>
510              </td>
511<td>
512                <p>
513                  Disable TLS v1.
514                </p>
515              </td>
516</tr>
517<tr>
518<td>
519                <p>
520                  <a class="link" href="ssl__context/no_tlsv1_1.html" title="ssl::context::no_tlsv1_1"><span class="bold"><strong>no_tlsv1_1</strong></span></a> <span class="silver">[static]</span>
521                </p>
522              </td>
523<td>
524                <p>
525                  Disable TLS v1.1.
526                </p>
527              </td>
528</tr>
529<tr>
530<td>
531                <p>
532                  <a class="link" href="ssl__context/no_tlsv1_2.html" title="ssl::context::no_tlsv1_2"><span class="bold"><strong>no_tlsv1_2</strong></span></a> <span class="silver">[static]</span>
533                </p>
534              </td>
535<td>
536                <p>
537                  Disable TLS v1.2.
538                </p>
539              </td>
540</tr>
541<tr>
542<td>
543                <p>
544                  <a class="link" href="ssl__context/no_tlsv1_3.html" title="ssl::context::no_tlsv1_3"><span class="bold"><strong>no_tlsv1_3</strong></span></a> <span class="silver">[static]</span>
545                </p>
546              </td>
547<td>
548                <p>
549                  Disable TLS v1.3.
550                </p>
551              </td>
552</tr>
553<tr>
554<td>
555                <p>
556                  <a class="link" href="ssl__context/single_dh_use.html" title="ssl::context::single_dh_use"><span class="bold"><strong>single_dh_use</strong></span></a> <span class="silver">[static]</span>
557                </p>
558              </td>
559<td>
560                <p>
561                  Always create a new key when using tmp_dh parameters.
562                </p>
563              </td>
564</tr>
565</tbody>
566</table></div>
567<h5>
568<a name="boost_asio.reference.ssl__context.h3"></a>
569        <span class="phrase"><a name="boost_asio.reference.ssl__context.requirements"></a></span><a class="link" href="ssl__context.html#boost_asio.reference.ssl__context.requirements">Requirements</a>
570      </h5>
571<p>
572        <span class="emphasis"><em>Header: </em></span><code class="literal">boost/asio/ssl/context.hpp</code>
573      </p>
574<p>
575        <span class="emphasis"><em>Convenience header: </em></span><code class="literal">boost/asio/ssl.hpp</code>
576      </p>
577</div>
578<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
579<td align="left"></td>
580<td align="right"><div class="copyright-footer">Copyright © 2003-2020 Christopher M.
581      Kohlhoff<p>
582        Distributed under the Boost Software License, Version 1.0. (See accompanying
583        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>)
584      </p>
585</div></td>
586</tr></table>
587<hr>
588<div class="spirit-nav">
589<a accesskey="p" href="spawn/overload7.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.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="ssl__context/add_certificate_authority.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
590</div>
591</body>
592</html>
593