129 explicit operator auto()
const noexcept {
return xtd::enum_collection<xtd::net::sockets::socket_option_name> {{
xtd::net::sockets::socket_option_name::debug,
"debug"}, {
xtd::net::sockets::socket_option_name::accept_connection,
"accept_connection"}, {
xtd::net::sockets::socket_option_name::reuse_address,
"reuse_address"}, {
xtd::net::sockets::socket_option_name::keep_alive,
"keep_alive"}, {
xtd::net::sockets::socket_option_name::dont_route,
"dont_route"}, {
xtd::net::sockets::socket_option_name::broadcast,
"broadcast"}, {
xtd::net::sockets::socket_option_name::use_loopback,
"use_loopback"}, {
xtd::net::sockets::socket_option_name::linger,
"linger"}, {
xtd::net::sockets::socket_option_name::out_of_band_inline,
"out_of_band_inline"}, {
xtd::net::sockets::socket_option_name::dont_linger,
"dont_linger"}, {
xtd::net::sockets::socket_option_name::exclusive_address_use,
"exclusive_address_use"}, {
xtd::net::sockets::socket_option_name::send_buffer,
"send_buffer"}, {
xtd::net::sockets::socket_option_name::receive_buffer,
"receive_buffer"}, {
xtd::net::sockets::socket_option_name::send_low_water,
"send_low_water"}, {
xtd::net::sockets::socket_option_name::receive_low_water,
"receive_low_water"}, {
xtd::net::sockets::socket_option_name::send_timeout,
"send_timeout"}, {
xtd::net::sockets::socket_option_name::receive_timeout,
"receive_timeout"}, {
xtd::net::sockets::socket_option_name::error,
"error"}, {
xtd::net::sockets::socket_option_name::type,
"type"}, {
xtd::net::sockets::socket_option_name::max_connections,
"max_connections"}, {
xtd::net::sockets::socket_option_name::type_of_service,
"type_of_service"}, {
xtd::net::sockets::socket_option_name::multicast_interface,
"multicast_interface"}, {
xtd::net::sockets::socket_option_name::multicast_time_to_live,
"multicast_time_to_live"}, {
xtd::net::sockets::socket_option_name::multicast_loopback,
"multicast_loopback"}, {
xtd::net::sockets::socket_option_name::add_membership,
"add_membership"}, {
xtd::net::sockets::socket_option_name::drop_membership,
"drop_membership"}, {
xtd::net::sockets::socket_option_name::block_source,
"block_source"}, {
xtd::net::sockets::socket_option_name::unblock_source,
"unblock_source"}, {
xtd::net::sockets::socket_option_name::packet_information,
"packet_information"}, {
xtd::net::sockets::socket_option_name::hop_limit,
"hop_limit"}, {
xtd::net::sockets::socket_option_name::ip_protection_level,
"ip_protection_level"}, {
xtd::net::sockets::socket_option_name::ip_v6_only,
"ip_v6_only"}, {
xtd::net::sockets::socket_option_name::checksum_coverage,
"checksum_coverage"}, {
xtd::net::sockets::socket_option_name::update_accept_context,
"update_accept_context"}, {
xtd::net::sockets::socket_option_name::update_connect_context,
"update_connect_context"}};}
Contains enum_ and enum_ut_ keywords.
std::vector< std::pair< enum_t, xtd::string > > enum_collection
Represents a pair of an enum_t value and a string of an enum of type enum_t.
Definition enum_collection.hpp:24
socket_option_name
Defines configuration option names.
Definition socket_option_name.hpp:31
ip_protection_level
A value that enables restriction of an IPv6 socket to a specified scope, such as addresses with the s...
Definition ip_protection_level.hpp:31
@ max_connections
Not supported; will throw a xtd::net::sockets::socket_exception exception if used.
Definition socket_option_name.hpp:71
@ receive_timeout
Receive a time-out. This option applies only to synchronous methods; it has no effect on asynchronous...
Definition socket_option_name.hpp:65
@ update_connect_context
Updates a connected socket's properties by using those of an existing socket. This is equivalent to u...
Definition socket_option_name.hpp:121
@ dont_linger
Close the socket gracefully without lingering.
Definition socket_option_name.hpp:51
@ multicast_interface
Sets the interface for outgoing multicast packets.
Definition socket_option_name.hpp:81
@ add_source_membership
Join a source group.
Definition socket_option_name.hpp:93
@ hop_limit
Specifies the maximum number of router hops for an Internet Protocol version 6 (IPv6) packet....
Definition socket_option_name.hpp:103
@ exclusive_address_use
Enables a socket to be bound for exclusive access.
Definition socket_option_name.hpp:53
@ header_included
Indicates that the application provides the IP header for outgoing datagrams.
Definition socket_option_name.hpp:75
@ no_checksum
Send UDP datagrams with checksum set to zero.
Definition socket_option_name.hpp:115
@ type
Gets the socket type.
Definition socket_option_name.hpp:69
@ type_of_service
Change the IP header type of the service field.
Definition socket_option_name.hpp:77
@ block_source
Block data from a source.
Definition socket_option_name.hpp:97
@ update_accept_context
Updates an accepted socket's properties by using those of an existing socket. This is equivalent to u...
Definition socket_option_name.hpp:119
@ drop_source_membership
Drop a source group.
Definition socket_option_name.hpp:95
@ expedited
Use expedited data as defined in RFC-1222. This option can be set only once; after it is set,...
Definition socket_option_name.hpp:113
@ packet_information
Return information about received packets.
Definition socket_option_name.hpp:101
@ use_loopback
Bypass hardware when possible.
Definition socket_option_name.hpp:45
@ ip_time_to_live
Sets the IP header Time-to-Live field.
Definition socket_option_name.hpp:79
@ send_buffer
Specifies the total per-socket buffer space reserved for sends. This is unrelated to the maximum mess...
Definition socket_option_name.hpp:55
@ reuse_address
Allows the socket to be bound to an address that is already in use.
Definition socket_option_name.hpp:37
@ bsd_urgent
Use urgent data as defined in RFC-1222. This option can be set only once; after it is set,...
Definition socket_option_name.hpp:111
@ multicast_time_to_live
An IP multicast Time to Live.
Definition socket_option_name.hpp:83
@ send_timeout
Send a time-out. This option applies only to synchronous methods; it has no effect on asynchronous me...
Definition socket_option_name.hpp:63
@ debug
Record debugging information.
Definition socket_option_name.hpp:33
@ no_delay
Disables the Nagle algorithm for send coalescing.
Definition socket_option_name.hpp:109
@ ip_protection_level
Enables restriction of a IPv6 socket to a specified scope, such as addresses with the same link local...
Definition socket_option_name.hpp:105
@ ip_options
Specifies the IP options to be inserted into outgoing datagrams.
Definition socket_option_name.hpp:73
@ dont_route
Do not route; send the packet directly to the interface addresses.
Definition socket_option_name.hpp:41
@ broadcast
Permit sending broadcast messages on the socket.
Definition socket_option_name.hpp:43
@ multicast_loopback
An IP multicast loopback.
Definition socket_option_name.hpp:85
@ out_of_band_inline
Receives out-of-band data in the normal data stream.
Definition socket_option_name.hpp:49
@ keep_alive
Use keep-alive.
Definition socket_option_name.hpp:39
@ add_membership
Add an IP group membership.
Definition socket_option_name.hpp:87
@ send_low_water
Specifies the low water mark for xtd::net::sockets::socket::send operations.
Definition socket_option_name.hpp:59
@ error
Gets the error status and clear.
Definition socket_option_name.hpp:67
@ ip_v6_only
Indicates if a socket created for the AF_INET6 address family is restricted to IPv6 communications on...
Definition socket_option_name.hpp:107
@ accept_connection
The socket is listening.
Definition socket_option_name.hpp:35
@ checksum_coverage
Sets or get the UDP checksum coverage.
Definition socket_option_name.hpp:117
@ dont_fragment
Do not fragment IP datagrams.
Definition socket_option_name.hpp:91
@ drop_membership
Drop an IP group membership.
Definition socket_option_name.hpp:89
@ unblock_source
Unblock a previously blocked source.
Definition socket_option_name.hpp:99
@ receive_low_water
Specifies the low water mark for xtd::net::sockets::socket::receive operations.
Definition socket_option_name.hpp:61
@ linger
Linger on close if unsent data is present.
Definition socket_option_name.hpp:47
@ receive_buffer
Specifies the total per-socket buffer space reserved for receives. This is unrelated to the maximum m...
Definition socket_option_name.hpp:57
@ dont_route
Send without using routing tables.
Definition socket_flags.hpp:38
@ broadcast
Indicates a broadcast packet.
Definition socket_flags.hpp:46
@ multicast_interface
Sets the interface used for outgoing multicast packets. The interface is identified by its index....
Definition io_control_code.hpp:82
The xtd::net::sockets namespace provides a managed implementation of the Berkeley Sockets interface f...
Definition address_family.hpp:16
The xtd::net namespace provides a simple programming interface for many of the protocols used on netw...
Definition cookie_exception.hpp:10
The xtd namespace contains all fundamental classes to access Hardware, Os, System,...
Definition abstract_object.hpp:8
Provides the registration struct for enumerations.
Definition enum_register.hpp:38