Reference | Class Hierarchy | Class Index | Member Index |
Public Types | |
enum | shutdown_type { shutdown_receive = implementation_defined, shutdown_send = implementation_defined, shutdown_both = implementation_defined } |
Different ways a socket may be shutdown. More... | |
typedef int | message_flags |
Bitmask type for flags that can be passed to send and receive operations. | |
typedef implementation_defined | broadcast |
Socket option to permit sending of broadcast messages. | |
typedef implementation_defined | debug |
Socket option to enable socket-level debugging. | |
typedef implementation_defined | do_not_route |
Socket option to prevent routing, use local interfaces only. | |
typedef implementation_defined | keep_alive |
Socket option to send keep-alives. | |
typedef implementation_defined | send_buffer_size |
Socket option for the send buffer size of a socket. | |
typedef implementation_defined | send_low_watermark |
Socket option for the send low watermark. | |
typedef implementation_defined | receive_buffer_size |
Socket option for the receive buffer size of a socket. | |
typedef implementation_defined | receive_low_watermark |
Socket option for the receive low watermark. | |
typedef implementation_defined | reuse_address |
Socket option to allow the socket to be bound to an address that is already in use. | |
typedef implementation_defined | linger |
Socket option to specify whether the socket lingers on close if unsent data is present. | |
typedef implementation_defined | enable_connection_aborted |
Socket option to report aborted connections on accept. | |
typedef implementation_defined | non_blocking_io |
IO control command to set the blocking mode of the socket. | |
typedef implementation_defined | bytes_readable |
IO control command to get the amount of data that can be read without blocking. | |
Static Public Attributes | |
static const int | message_peek = implementation_defined |
Peek at incoming data without removing it from the input queue. | |
static const int | message_out_of_band = implementation_defined |
Process out-of-band data. | |
static const int | message_do_not_route = implementation_defined |
Specify that the data should not be subject to routing. | |
static const int | max_connections = implementation_defined |
The maximum length of the queue of pending incoming connections. | |
Protected Member Functions | |
~socket_base () | |
Protected destructor to prevent deletion through this type. |
typedef int asio::socket_base::message_flags |
Bitmask type for flags that can be passed to send and receive operations.
typedef implementation_defined asio::socket_base::broadcast |
Socket option to permit sending of broadcast messages.
Implements the SOL_SOCKET/SO_BROADCAST socket option.
asio::ip::udp::socket socket(io_service); ... asio::socket_base::broadcast option(true); socket.set_option(option);
asio::ip::udp::socket socket(io_service); ... asio::socket_base::broadcast option; socket.get_option(option); bool is_set = option.value();
typedef implementation_defined asio::socket_base::debug |
Socket option to enable socket-level debugging.
Implements the SOL_SOCKET/SO_DEBUG socket option.
asio::ip::tcp::socket socket(io_service); ... asio::socket_base::debug option(true); socket.set_option(option);
asio::ip::tcp::socket socket(io_service); ... asio::socket_base::debug option; socket.get_option(option); bool is_set = option.value();
typedef implementation_defined asio::socket_base::do_not_route |
Socket option to prevent routing, use local interfaces only.
Implements the SOL_SOCKET/SO_DONTROUTE socket option.
asio::ip::udp::socket socket(io_service); ... asio::socket_base::do_not_route option(true); socket.set_option(option);
asio::ip::udp::socket socket(io_service); ... asio::socket_base::do_not_route option; socket.get_option(option); bool is_set = option.value();
typedef implementation_defined asio::socket_base::keep_alive |
Socket option to send keep-alives.
Implements the SOL_SOCKET/SO_KEEPALIVE socket option.
asio::ip::tcp::socket socket(io_service); ... asio::socket_base::keep_alive option(true); socket.set_option(option);
asio::ip::tcp::socket socket(io_service); ... asio::socket_base::keep_alive option; socket.get_option(option); bool is_set = option.value();
typedef implementation_defined asio::socket_base::send_buffer_size |
Socket option for the send buffer size of a socket.
Implements the SOL_SOCKET/SO_SNDBUF socket option.
asio::ip::tcp::socket socket(io_service); ... asio::socket_base::send_buffer_size option(8192); socket.set_option(option);
asio::ip::tcp::socket socket(io_service); ... asio::socket_base::send_buffer_size option; socket.get_option(option); int size = option.value();
typedef implementation_defined asio::socket_base::send_low_watermark |
Socket option for the send low watermark.
Implements the SOL_SOCKET/SO_SNDLOWAT socket option.
asio::ip::tcp::socket socket(io_service); ... asio::socket_base::send_low_watermark option(1024); socket.set_option(option);
asio::ip::tcp::socket socket(io_service); ... asio::socket_base::send_low_watermark option; socket.get_option(option); int size = option.value();
typedef implementation_defined asio::socket_base::receive_buffer_size |
Socket option for the receive buffer size of a socket.
Implements the SOL_SOCKET/SO_RCVBUF socket option.
asio::ip::tcp::socket socket(io_service); ... asio::socket_base::receive_buffer_size option(8192); socket.set_option(option);
asio::ip::tcp::socket socket(io_service); ... asio::socket_base::receive_buffer_size option; socket.get_option(option); int size = option.value();
typedef implementation_defined asio::socket_base::receive_low_watermark |
Socket option for the receive low watermark.
Implements the SOL_SOCKET/SO_RCVLOWAT socket option.
asio::ip::tcp::socket socket(io_service); ... asio::socket_base::receive_low_watermark option(1024); socket.set_option(option);
asio::ip::tcp::socket socket(io_service); ... asio::socket_base::receive_low_watermark option; socket.get_option(option); int size = option.value();
typedef implementation_defined asio::socket_base::reuse_address |
Socket option to allow the socket to be bound to an address that is already in use.
Implements the SOL_SOCKET/SO_REUSEADDR socket option.
asio::ip::tcp::acceptor acceptor(io_service); ... asio::socket_base::reuse_address option(true); acceptor.set_option(option);
asio::ip::tcp::acceptor acceptor(io_service); ... asio::socket_base::reuse_address option; acceptor.get_option(option); bool is_set = option.value();
typedef implementation_defined asio::socket_base::linger |
Socket option to specify whether the socket lingers on close if unsent data is present.
Implements the SOL_SOCKET/SO_LINGER socket option.
asio::ip::tcp::socket socket(io_service); ... asio::socket_base::linger option(true, 30); socket.set_option(option);
asio::ip::tcp::socket socket(io_service); ... asio::socket_base::linger option; socket.get_option(option); bool is_set = option.enabled(); unsigned short timeout = option.timeout();
typedef implementation_defined asio::socket_base::enable_connection_aborted |
Socket option to report aborted connections on accept.
Implements a custom socket option that determines whether or not an accept operation is permitted to fail with asio::error::connection_aborted. By default the option is false.
asio::ip::tcp::acceptor acceptor(io_service); ... asio::socket_base::enable_connection_aborted option(true); acceptor.set_option(option);
asio::ip::tcp::acceptor acceptor(io_service); ... asio::socket_base::enable_connection_aborted option; acceptor.get_option(option); bool is_set = option.value();
typedef implementation_defined asio::socket_base::non_blocking_io |
IO control command to set the blocking mode of the socket.
Implements the FIONBIO IO control command.
asio::ip::tcp::socket socket(io_service); ... asio::socket_base::non_blocking_io command(true); socket.io_control(command);
typedef implementation_defined asio::socket_base::bytes_readable |
IO control command to get the amount of data that can be read without blocking.
Implements the FIONREAD IO control command.
asio::ip::tcp::socket socket(io_service); ... asio::socket_base::bytes_readable command(true); socket.io_control(command); std::size_t bytes_readable = command.get();
asio::socket_base::~socket_base | ( | ) | [protected] |
Protected destructor to prevent deletion through this type.
const int asio::socket_base::message_peek = implementation_defined [static] |
Peek at incoming data without removing it from the input queue.
const int asio::socket_base::message_out_of_band = implementation_defined [static] |
Process out-of-band data.
const int asio::socket_base::message_do_not_route = implementation_defined [static] |
Specify that the data should not be subject to routing.
const int asio::socket_base::max_connections = implementation_defined [static] |
The maximum length of the queue of pending incoming connections.