xtd 0.2.0
Loading...
Searching...
No Matches

◆ socket_option_name

Defines configuration option names.

socket_option_name
Defines configuration option names.
Definition socket_option_name.h:31
Header
#include <xtd/net/sockets/socket_option_name>
Namespace
xtd::net::sockets
Library
xtd.core
Remarks
The xtd::net::sockets::socket_option_name enumeration defines the name of each xtd::net::sockets::socket configuration option. Sockets can be configured with the xtd::net::sockets::socket::set_socket_option method.
Enumerator
debug 

Record debugging information.

accept_connection 

The socket is listening.

reuse_address 

Allows the socket to be bound to an address that is already in use.

keep_alive 

Use keep-alive.

dont_route 

Do not route; send the packet directly to the interface addresses.

broadcast 

Permit sending broadcast messages on the socket.

use_loopback 

Bypass hardware when possible.

linger 

Linger on close if unsent data is present.

out_of_band_inline 

Receives out-of-band data in the normal data stream.

dont_linger 

Close the socket gracefully without lingering.

exclusive_address_use 

Enables a socket to be bound for exclusive access.

send_buffer 

Specifies the total per-socket buffer space reserved for sends. This is unrelated to the maximum message size or the size of a TCP window.

receive_buffer 

Specifies the total per-socket buffer space reserved for receives. This is unrelated to the maximum message size or the size of a TCP window.

send_low_water 

Specifies the low water mark for xtd::net::sockets::socket::send operations.

receive_low_water 

Specifies the low water mark for xtd::net::sockets::socket::receive operations.

send_timeout 

Send a time-out. This option applies only to synchronous methods; it has no effect on asynchronous methods such as the xtd::net::sockets::socket::begin_send method.

receive_timeout 

Receive a time-out. This option applies only to synchronous methods; it has no effect on asynchronous methods such as the xtd::net::sockets::socket::begin_send method.

error 

Gets the error status and clear.

type 

Gets the socket type.

max_connections 

Not supported; will throw a xtd::net::sockets::socket_exception exception if used.

ip_options 

Specifies the IP options to be inserted into outgoing datagrams.

header_included 

Indicates that the application provides the IP header for outgoing datagrams.

type_of_service 

Change the IP header type of the service field.

ip_time_to_live 

Sets the IP header Time-to-Live field.

multicast_interface 

Sets the interface for outgoing multicast packets.

multicast_time_to_live 

An IP multicast Time to Live.

multicast_loopback 

An IP multicast loopback.

add_membership 

Add an IP group membership.

drop_membership 

Drop an IP group membership.

dont_fragment 

Do not fragment IP datagrams.

add_source_membership 

Join a source group.

drop_source_membership 

Drop a source group.

block_source 

Block data from a source.

unblock_source 

Unblock a previously blocked source.

packet_information 

Return information about received packets.

hop_limit 

Specifies the maximum number of router hops for an Internet Protocol version 6 (IPv6) packet. This is similar to Time to Live (TTL) for Internet Protocol version 4.

ip_protection_level 

Enables restriction of a IPv6 socket to a specified scope, such as addresses with the same link local or site local prefix.This socket option enables applications to place access restrictions on IPv6 sockets. Such restrictions enable an application running on a private LAN to simply and robustly harden itself against external attacks. This socket option widens or narrows the scope of a listening socket, enabling unrestricted access from public and private users when appropriate, or restricting access only to the same site, as required. This socket option has defined protection levels specified in the xtd::net::sockets::ip_protection_level enumeration.

ip_v6_only 

Indicates if a socket created for the AF_INET6 address family is restricted to IPv6 communications only. Sockets created for the AF_INET6 address family may be used for both IPv6 and IPv4 communications. Some applications may want to restrict their use of a socket created for the AF_INET6 address family to IPv6 communications only. When this value is non-zero (the default on Windows), a socket created for the AF_INET6 address family can be used to send and receive IPv6 packets only. When this value is zero, a socket created for the AF_INET6 address family can be used to send and receive packets to and from an IPv6 address or an IPv4 address. Note that the ability to interact with an IPv4 address requires the use of IPv4 mapped addresses. This socket option is supported on Windows Vista or later.

no_delay 

Disables the Nagle algorithm for send coalescing.

bsd_urgent 

Use urgent data as defined in RFC-1222. This option can be set only once; after it is set, it cannot be turned off.

expedited 

Use expedited data as defined in RFC-1222. This option can be set only once; after it is set, it cannot be turned off.

no_checksum 

Send UDP datagrams with checksum set to zero.

checksum_coverage 

Sets or get the UDP checksum coverage.

update_accept_context 

Updates an accepted socket's properties by using those of an existing socket. This is equivalent to using the Winsock2 SO_UPDATE_ACCEPT_CONTEXT socket option and is supported only on connection-oriented sockets.

update_connect_context 

Updates a connected socket's properties by using those of an existing socket. This is equivalent to using the Winsock2 SO_UPDATE_CONNECT_CONTEXT socket option and is supported only on connection-oriented sockets.