A type X meets the SettableSocketOption requirements if it satisfies the requirements listed below.
In the table below, a denotes a (possibly const) value of type X, p denotes a (possibly const) value of a type that meets the Protocol ([socket.reqmts.protocol]) requirements, and u denotes an identifier.
expression | type | assertion/note pre/post-conditions |
a.level(p) | int | Returns a value suitable for passing as the level argument to POSIX setsockopt (or equivalent). |
a.name(p) | int | Returns a value suitable for passing as the option_name argument to POSIX setsockopt (or equivalent). |
a.data(p) | const void* | Returns a pointer suitable for passing as the option_value argument to POSIX setsockopt (or equivalent). |
a.size(p) | size_t | Returns a value suitable for passing as the option_len argument to POSIX setsockopt (or equivalent), after appropriate integer conversion has been performed. |