|
virtual void | _deleter () |
|
const tls_socket_source_implementation_information & | implementation_information () const noexcept |
| Returns implementation information about this byte socket source.
|
|
byte_io_multiplexer * | multiplexer () const noexcept |
| Returns the i/o multiplexer for this byte socket handle source. All handles created from this source will have this multiplexer set upon them.
|
|
result< check_for_any_completed_io_statistics > | check_for_any_completed_io (deadline d=std::chrono::seconds(0), size_t max_completions=(size_t) -1) noexcept |
| Convenience indirect to multiplexer()->check_for_any_completed_io()
|
|
virtual result< tls_socket_handle_ptr > | connecting_socket (ip::family family, byte_socket_handle::mode _mode=byte_socket_handle::mode::write, byte_socket_handle::caching _caching=byte_socket_handle::caching::all, byte_socket_handle::flag flags=byte_socket_handle::flag::none) noexcept=0 |
| Returns a pointer to a new tls_socket_handle instance, which may be a recycled instance recently deleted.
|
|
result< tls_socket_handle_ptr > | multiplexable_connecting_socket (ip::family family, byte_socket_handle::mode _mode=byte_socket_handle::mode::write, byte_socket_handle::caching _caching=byte_socket_handle::caching::all, byte_socket_handle::flag flags=byte_socket_handle::flag::multiplexable) noexcept |
| Convenience function defaulting flag::multiplexable set.
|
|
virtual result< listening_tls_socket_handle_ptr > | listening_socket (ip::family family, byte_socket_handle::mode _mode=byte_socket_handle::mode::write, byte_socket_handle::caching _caching=byte_socket_handle::caching::all, byte_socket_handle::flag flags=byte_socket_handle::flag::none) noexcept=0 |
| Returns a pointer to a new listening_tls_socket_handle instance, which may be a recycled instance recently deleted.
|
|
result< listening_tls_socket_handle_ptr > | multiplexable_listening_socket (ip::family family, byte_socket_handle::mode _mode=byte_socket_handle::mode::write, byte_socket_handle::caching _caching=byte_socket_handle::caching::all, byte_socket_handle::flag flags=byte_socket_handle::flag::multiplexable) noexcept |
| Convenience function defaulting flag::multiplexable set.
|
|
virtual result< tls_socket_handle_ptr > | wrap (byte_socket_handle *transport) noexcept=0 |
|
virtual result< listening_tls_socket_handle_ptr > | wrap (listening_byte_socket_handle *listening) noexcept=0 |
|
A source of tls_socket_handle
and listening_tls_socket_handle
and possibly a byte_io_multiplexer
to multiplex i/o on multiple socket instances at the same time.
- Warning
- This is deprecated and scheduled for removal in 2025.
The socket handles returned by this source may be very different implementations to the kernel socket handles returned by byte_socket_handle::byte_socket()
– they may have all virtual functions overridden AND a custom i/o multiplexer set, plus RTTI may show an internal derived type from the public types.
However, they may still be a valid kernel socket handle e.g. a TLS implementation may act upon a base kernel socket handle. If so, is_kernel_handle()
will be true, and then poll()
will work on these handles same as a plain socket handle.