1.7 KiB
PRSocketOptionData
Type for structure used with {ref}PR_GetSocketOption and
{ref}PR_SetSocketOption to specify options for file descriptors that
represent sockets.
Syntax
#include <prio.h>
typedef struct PRSocketOptionData
{
PRSockOption option;
union
{
PRUintn ip_ttl;
PRUintn mcast_ttl;
PRUintn tos;
PRBool non_blocking;
PRBool reuse_addr;
PRBool keep_alive;
PRBool mcast_loopback;
PRBool no_delay;
PRSize max_segment;
PRSize recv_buffer_size;
PRSize send_buffer_size;
PRLinger linger;
PRMcastRequest add_member;
PRMcastRequest drop_member;
PRNetAddr mcast_if;
} value;
} PRSocketOptionData;
Fields
The structure has the following fields:
ip_ttl-
IP time-to-live.
mcast_ttl-
IP multicast time-to-live.
tos-
IP type-of-service and precedence.
non_blocking-
Nonblocking (network) I/O.
reuse_addr-
Allow local address reuse.
keep_alive-
Periodically test whether connection is still alive.
mcast_loopback-
IP multicast loopback.
no_delay-
Disable Nagle algorithm. Don't delay send to coalesce packets.
max_segment-
TCP maximum segment size.
recv_buffer_size-
Receive buffer size.
send_buffer_size-
Send buffer size.
linger-
Time to linger on close if data are present in socket send buffer.
add_member-
Join an IP multicast group.
drop_member-
Leave an IP multicast group.
mcast_if-
IP multicast interface address.
Description
{ref}PRSocketOptionData is a name-value pair for a socket option. The
option field (of enumeration type {ref}PRSockOption) specifies the
name of the socket option, and the value field (a union of all
possible values) specifies the value of the option.