1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
PRSockOption
============
Enumeration type used in the ``option`` field of :ref:`PRSocketOptionData`
to form the name portion of a name-value pair.
Syntax
------
.. code::
#include <prio.h>
typedef enum PRSockOption {
PR_SockOpt_Nonblocking,
PR_SockOpt_Linger,
PR_SockOpt_Reuseaddr,
PR_SockOpt_Keepalive,
PR_SockOpt_RecvBufferSize,
PR_SockOpt_SendBufferSize,
PR_SockOpt_IpTimeToLive,
PR_SockOpt_IpTypeOfService,
PR_SockOpt_AddMember,
PR_SockOpt_DropMember,
PR_SockOpt_McastInterface,
PR_SockOpt_McastTimeToLive,
PR_SockOpt_McastLoopback,
PR_SockOpt_NoDelay,
PR_SockOpt_MaxSegment,
PR_SockOpt_Last
} PRSockOption;
Enumerators
~~~~~~~~~~~
The enumeration has the following enumerators:
``PR_SockOpt_Nonblocking``
Nonblocking I/O.
``PR_SockOpt_Linger``
Time to linger on close if data is present in the socket send buffer.
``PR_SockOpt_Reuseaddr``
Allow local address reuse.
``PR_SockOpt_Keepalive``
Periodically test whether connection is still alive.
``PR_SockOpt_RecvBufferSize``
Receive buffer size.
``PR_SockOpt_SendBufferSize``
Send buffer size.
``PR_SockOpt_IpTimeToLive``
IP time-to-live.
``PR_SockOpt_IpTypeOfService``
IP type-of-service and precedence.
``PR_SockOpt_AddMember``
Join an IP multicast group.
``PR_SockOpt_DropMember``
Leave an IP multicast group.
``PR_SockOpt_McastInterface``
IP multicast interface address.
``PR_SockOpt_McastTimeToLive``
IP multicast time-to-live.
``PR_SockOpt_McastLoopback``
IP multicast loopback.
``PR_SockOpt_NoDelay``
Disable Nagle algorithm. Don't delay send to coalesce packets.
``PR_SockOpt_MaxSegment``
Maximum segment size.
``PR_SockOpt_Last``
Always one greater than the maximum valid socket option numerator.
Description
-----------
The :ref:`PRSockOption` enumeration consists of all the socket options
supported by NSPR. The ``option`` field of :ref:`PRSocketOptionData` should
be set to an enumerator of type :ref:`PRSockOption`.
|