mirror of
https://github.com/apache/nuttx.git
synced 2026-10-02 11:48:02 +00:00
UDP linger timeout will be wrongly converted to UINT_MAX by _SO_TIMEOUT() when it is set to 0,
net/socket/socket.h:
|
| # define _SO_TIMEOUT(t) ((t) ? (t) * MSEC_PER_DSEC : UINT_MAX)
net/udp/udp_close.c:
|
| if (_SO_GETOPT(conn->sconn.s_options, SO_LINGER))
| {
| timeout = _SO_TIMEOUT(conn->sconn.s_linger);
| }
this change will correct this behavior, if the linger is set to 0, the timeout value should be 0
Signed-off-by: chao an <anchao@xiaomi.com>
|
||
|---|---|---|
| .. | ||
| Kconfig | ||
| Make.defs | ||
| udp.h | ||
| udp_callback.c | ||
| udp_close.c | ||
| udp_conn.c | ||
| udp_devpoll.c | ||
| udp_finddev.c | ||
| udp_input.c | ||
| udp_ioctl.c | ||
| udp_ipselect.c | ||
| udp_netpoll.c | ||
| udp_notifier.c | ||
| udp_recvfrom.c | ||
| udp_send.c | ||
| udp_sendto_buffered.c | ||
| udp_sendto_unbuffered.c | ||
| udp_setsockopt.c | ||
| udp_txdrain.c | ||
| udp_wrbuffer.c | ||
| udp_wrbuffer_dump.c | ||