diff options
| author | zms123456 <[email protected]> | 2024-09-14 05:30:24 +0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2024-09-13 17:30:24 -0400 |
| commit | fb02e7934db9c6fe75df9c6fb7064b4132934845 (patch) | |
| tree | 897cbf538a7f368b8020434dcdc9913dd302a408 | |
| parent | 49c39d4a8d0b7bf6ba2f56bda34f00fe898aca09 (diff) | |
[component][net]add more socket flag
| -rw-r--r-- | components/lwp/lwp_sys_socket.h | 8 | ||||
| -rw-r--r-- | components/lwp/lwp_syscall.c | 17 |
2 files changed, 25 insertions, 0 deletions
diff --git a/components/lwp/lwp_sys_socket.h b/components/lwp/lwp_sys_socket.h index 28a0887203..7f1fc457da 100644 --- a/components/lwp/lwp_sys_socket.h +++ b/components/lwp/lwp_sys_socket.h @@ -41,6 +41,10 @@ #define INTF_SO_SNDBUF 7 #define INTF_SO_SNDLOWAT 19 #define INTF_SO_RCVLOWAT 18 +#define INTF_SO_BINDTODEVICE 25 +#define INTF_SO_TIMESTAMPNS 35 +#define INTF_SO_TIMESTAMPING 37 +#define INTF_SO_SELECT_ERR_QUEUE 45 #define IMPL_SO_BROADCAST 0x0020 #define IMPL_SO_KEEPALIVE 0x0008 @@ -59,6 +63,10 @@ #define IMPL_SO_SNDBUF 0x1001 #define IMPL_SO_SNDLOWAT 0x1003 #define IMPL_SO_RCVLOWAT 0x1004 +#define IMPL_SO_BINDTODEVICE 0x100b +#define IMPL_SO_TIMESTAMPNS INTF_SO_TIMESTAMPNS +#define IMPL_SO_TIMESTAMPING INTF_SO_TIMESTAMPING +#define IMPL_SO_SELECT_ERR_QUEUE INTF_SO_SELECT_ERR_QUEUE /* IPPROTO_IP option names */ #define INTF_IP_TTL 2 diff --git a/components/lwp/lwp_syscall.c b/components/lwp/lwp_syscall.c index 57ea57cf4f..d64af4455a 100644 --- a/components/lwp/lwp_syscall.c +++ b/components/lwp/lwp_syscall.c @@ -198,6 +198,18 @@ void lwp_cleanup(struct rt_thread *tid); case INTF_SO_NO_CHECK: *optname = IMPL_SO_NO_CHECK; break; + case INTF_SO_BINDTODEVICE: + *optname = IMPL_SO_BINDTODEVICE; + break; + case INTF_SO_TIMESTAMPNS: + *optname = IMPL_SO_TIMESTAMPNS; + break; + case INTF_SO_TIMESTAMPING: + *optname = IMPL_SO_TIMESTAMPING; + break; + case INTF_SO_SELECT_ERR_QUEUE: + *optname = IMPL_SO_SELECT_ERR_QUEUE; + break; /* * SO_DONTLINGER (*level = ((int)(~SO_LINGER))), @@ -3126,6 +3138,11 @@ static int netflags_muslc_2_lwip(int flags) { flgs |= MSG_MORE; } + if (flags & MSG_ERRQUEUE) + { + flgs |= MSG_ERRQUEUE; + } + return flgs; } |
