This structure is used by an application to set the linger socket option and specify the length of time to wait for unsent data before a socket is closed.
At a Glance
Header file: | Winsock.h |
Windows CE versions: | 1.0 and later |
Syntax
struct linger {
u_short l_onoff;
u_short l_linger;
};
Members
l_onoff
Integer that indicates if the linger option is turned on
l_linger
Integer that specifies the time, in seconds, to wait for unsent data before a socket is closed.
Remarks
To enable SO_LINGER, the application should set l_onoff to a nonzero value, set l_linger to zero or the desired timeout (in seconds), and call setsockopt. To enable SO_DONTLINGER (that is, disable SO_LINGER) l_onoff should be set to zero and setsockopt should be called. Note that enabling SO_LINGER with a nonzero timeout on a nonblocking socket is not recommended.
Enabling SO_LINGER also disables SO_DONTLINGER, and vice versa. Note that if SO_DONTLINGER is DISABLED (that is, SO_LINGER is ENABLED) then no timeout value is specified. In this case, the time-out used is implementation dependent. If a previous time-out has been established for a socket (by enabling SO_LINGER), then this time-out value should be reinstated by the service provider.
See Also