diff options
author | Paolo Abeni <pabeni@redhat.com> | 2024-03-01 18:43:45 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2024-03-04 11:50:28 +0100 |
commit | a74762675f700a5473ebe54a671a0788a5b23cc9 (patch) | |
tree | b73d04f611d565d3fa9b874528f3c22e62be3b05 /net/mptcp/sockopt.c | |
parent | mptcp: cleanup writer wake-up (diff) | |
download | linux-a74762675f700a5473ebe54a671a0788a5b23cc9.tar.xz linux-a74762675f700a5473ebe54a671a0788a5b23cc9.zip |
mptcp: avoid some duplicate code in socket option handling
The mptcp_get_int_option() helper is needless open-coded in a
couple of places, replace the duplicate code with the helper
call.
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Reviewed-by: Mat Martineau <martineau@kernel.org>
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to '')
-rw-r--r-- | net/mptcp/sockopt.c | 20 |
1 files changed, 8 insertions, 12 deletions
diff --git a/net/mptcp/sockopt.c b/net/mptcp/sockopt.c index da37e4541a5d..ac37f6c5e2ed 100644 --- a/net/mptcp/sockopt.c +++ b/net/mptcp/sockopt.c @@ -629,13 +629,11 @@ static int mptcp_setsockopt_sol_tcp_cork(struct mptcp_sock *msk, sockptr_t optva { struct mptcp_subflow_context *subflow; struct sock *sk = (struct sock *)msk; - int val; - - if (optlen < sizeof(int)) - return -EINVAL; + int val, ret; - if (copy_from_sockptr(&val, optval, sizeof(val))) - return -EFAULT; + ret = mptcp_get_int_option(msk, optval, optlen, &val); + if (ret) + return ret; lock_sock(sk); sockopt_seq_inc(msk); @@ -659,13 +657,11 @@ static int mptcp_setsockopt_sol_tcp_nodelay(struct mptcp_sock *msk, sockptr_t op { struct mptcp_subflow_context *subflow; struct sock *sk = (struct sock *)msk; - int val; - - if (optlen < sizeof(int)) - return -EINVAL; + int val, ret; - if (copy_from_sockptr(&val, optval, sizeof(val))) - return -EFAULT; + ret = mptcp_get_int_option(msk, optval, optlen, &val); + if (ret) + return ret; lock_sock(sk); sockopt_seq_inc(msk); |