]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | [/ |
2 | / Copyright (c) 2003-2016 Christopher M. Kohlhoff (chris at kohlhoff dot com) | |
3 | / | |
4 | / Distributed under the Boost Software License, Version 1.0. (See accompanying | |
5 | / file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) | |
6 | /] | |
7 | ||
8 | [section:GettableSocketOption Gettable socket option requirements] | |
9 | ||
10 | In the table below, `X` denotes a socket option class, `a` denotes a value of | |
11 | `X`, `p` denotes a value that meets the [link boost_asio.reference.Protocol | |
12 | protocol] requirements, and `u` denotes an identifier. | |
13 | ||
14 | [table GettableSocketOption requirements | |
15 | [[expression] [type] [assertion/note\npre/post-conditions]] | |
16 | [ | |
17 | [`a.level(p);`] | |
18 | [`int`] | |
19 | [ | |
20 | Returns a value suitable for passing as the /level/ argument to __POSIX__ | |
21 | __getsockopt__ (or equivalent). | |
22 | ] | |
23 | ] | |
24 | [ | |
25 | [`a.name(p);`] | |
26 | [`int`] | |
27 | [ | |
28 | Returns a value suitable for passing as the /option_name/ argument to | |
29 | __POSIX__ __getsockopt__ (or equivalent). | |
30 | ] | |
31 | ] | |
32 | [ | |
33 | [`a.data(p);`] | |
34 | [a pointer, convertible to `void*`] | |
35 | [ | |
36 | Returns a pointer suitable for passing as the /option_value/ argument to | |
37 | __POSIX__ __getsockopt__ (or equivalent). | |
38 | ] | |
39 | ] | |
40 | [ | |
41 | [`a.size(p);`] | |
42 | [`size_t`] | |
43 | [ | |
44 | Returns a value suitable for passing as the /option_len/ argument to | |
45 | __POSIX__ __getsockopt__ (or equivalent), after appropriate | |
46 | integer conversion has been performed. | |
47 | ] | |
48 | ] | |
49 | [ | |
50 | [`a.resize(p, s);`] | |
51 | [] | |
52 | [ | |
53 | post: `a.size(p) == s`.\n | |
54 | Passed the value contained in the /option_len/ argument to __POSIX__ | |
55 | __getsockopt__ (or equivalent) after successful completion of the | |
56 | function. Permitted to throw an exception if the socket option object `a` | |
57 | does not support the specified size. | |
58 | ] | |
59 | ] | |
60 | ] | |
61 | ||
62 | [endsect] |