Lines Matching refs:optval

57 static int mptcp_get_int_option(struct mptcp_sock *msk, sockptr_t optval,  in mptcp_get_int_option()  argument
63 if (copy_from_sockptr(val, optval, sizeof(*val))) in mptcp_get_int_option()
123 sockptr_t optval = KERNEL_SOCKPTR(&val); in mptcp_sol_socket_intval() local
128 optval, sizeof(val)); in mptcp_sol_socket_intval()
147 sockptr_t optval = KERNEL_SOCKPTR(&val); in mptcp_setsockopt_sol_socket_tstamp() local
153 optval, sizeof(val)); in mptcp_setsockopt_sol_socket_tstamp()
171 sockptr_t optval, in mptcp_setsockopt_sol_socket_int() argument
176 ret = mptcp_get_int_option(msk, optval, optlen, &val); in mptcp_setsockopt_sol_socket_int()
207 sockptr_t optval, in mptcp_setsockopt_sol_socket_timestamping() argument
216 if (copy_from_sockptr(&timestamping, optval, in mptcp_setsockopt_sol_socket_timestamping()
222 if (copy_from_sockptr(&timestamping.flags, optval, sizeof(int))) in mptcp_setsockopt_sol_socket_timestamping()
249 static int mptcp_setsockopt_sol_socket_linger(struct mptcp_sock *msk, sockptr_t optval, in mptcp_setsockopt_sol_socket_linger() argument
261 if (copy_from_sockptr(&ling, optval, sizeof(ling))) in mptcp_setsockopt_sol_socket_linger()
291 sockptr_t optval, unsigned int optlen) in mptcp_setsockopt_sol_socket() argument
309 ret = sock_setsockopt(ssock, SOL_SOCKET, optname, optval, optlen); in mptcp_setsockopt_sol_socket()
335 return mptcp_setsockopt_sol_socket_int(msk, optname, optval, in mptcp_setsockopt_sol_socket()
340 optval, optlen); in mptcp_setsockopt_sol_socket()
342 return mptcp_setsockopt_sol_socket_linger(msk, optval, optlen); in mptcp_setsockopt_sol_socket()
352 return sock_setsockopt(sk->sk_socket, SOL_SOCKET, optname, optval, optlen); in mptcp_setsockopt_sol_socket()
387 sockptr_t optval, unsigned int optlen) in mptcp_setsockopt_v6() argument
404 ret = tcp_setsockopt(ssock->sk, SOL_IPV6, optname, optval, optlen); in mptcp_setsockopt_v6()
578 static int mptcp_setsockopt_sol_tcp_congestion(struct mptcp_sock *msk, sockptr_t optval, in mptcp_setsockopt_sol_tcp_congestion() argument
590 ret = strncpy_from_sockptr(name, optval, in mptcp_setsockopt_sol_tcp_congestion()
621 static int mptcp_setsockopt_sol_tcp_cork(struct mptcp_sock *msk, sockptr_t optval, in mptcp_setsockopt_sol_tcp_cork() argument
631 if (copy_from_sockptr(&val, optval, sizeof(val))) in mptcp_setsockopt_sol_tcp_cork()
651 static int mptcp_setsockopt_sol_tcp_nodelay(struct mptcp_sock *msk, sockptr_t optval, in mptcp_setsockopt_sol_tcp_nodelay() argument
661 if (copy_from_sockptr(&val, optval, sizeof(val))) in mptcp_setsockopt_sol_tcp_nodelay()
682 sockptr_t optval, unsigned int optlen) in mptcp_setsockopt_sol_ip_set_transparent() argument
689 err = ip_setsockopt(sk, SOL_IP, optname, optval, optlen); in mptcp_setsockopt_sol_ip_set_transparent()
722 sockptr_t optval, unsigned int optlen) in mptcp_setsockopt_v4_set_tos() argument
728 err = ip_setsockopt(sk, SOL_IP, optname, optval, optlen); in mptcp_setsockopt_v4_set_tos()
747 sockptr_t optval, unsigned int optlen) in mptcp_setsockopt_v4() argument
752 return mptcp_setsockopt_sol_ip_set_transparent(msk, optname, optval, optlen); in mptcp_setsockopt_v4()
754 return mptcp_setsockopt_v4_set_tos(msk, optname, optval, optlen); in mptcp_setsockopt_v4()
761 sockptr_t optval, unsigned int optlen) in mptcp_setsockopt_first_sf_only() argument
773 ret = tcp_setsockopt(sock->sk, level, optname, optval, optlen); in mptcp_setsockopt_first_sf_only()
781 sockptr_t optval, unsigned int optlen) in mptcp_setsockopt_sol_tcp() argument
788 ret = mptcp_get_int_option(msk, optval, optlen, &val); in mptcp_setsockopt_sol_tcp()
801 return mptcp_setsockopt_sol_tcp_congestion(msk, optval, optlen); in mptcp_setsockopt_sol_tcp()
803 return mptcp_setsockopt_sol_tcp_cork(msk, optval, optlen); in mptcp_setsockopt_sol_tcp()
805 return mptcp_setsockopt_sol_tcp_nodelay(msk, optval, optlen); in mptcp_setsockopt_sol_tcp()
808 mptcp_setsockopt_first_sf_only(msk, SOL_TCP, optname, optval, optlen); in mptcp_setsockopt_sol_tcp()
815 optval, optlen); in mptcp_setsockopt_sol_tcp()
822 sockptr_t optval, unsigned int optlen) in mptcp_setsockopt() argument
830 return mptcp_setsockopt_sol_socket(msk, optname, optval, optlen); in mptcp_setsockopt()
845 return tcp_setsockopt(ssk, level, optname, optval, optlen); in mptcp_setsockopt()
848 return mptcp_setsockopt_v4(msk, optname, optval, optlen); in mptcp_setsockopt()
851 return mptcp_setsockopt_v6(msk, optname, optval, optlen); in mptcp_setsockopt()
854 return mptcp_setsockopt_sol_tcp(msk, optname, optval, optlen); in mptcp_setsockopt()
860 char __user *optval, int __user *optlen) in mptcp_getsockopt_first_sf_only() argument
870 ret = tcp_getsockopt(ssk, level, optname, optval, optlen); in mptcp_getsockopt_first_sf_only()
878 ret = tcp_getsockopt(ssock->sk, level, optname, optval, optlen); in mptcp_getsockopt_first_sf_only()
915 static int mptcp_getsockopt_info(struct mptcp_sock *msk, char __user *optval, int __user *optlen) in mptcp_getsockopt_info() argument
930 if (copy_to_user(optval, &m_info, len)) in mptcp_getsockopt_info()
937 char __user *optval, in mptcp_put_subflow_data() argument
951 if (copy_to_user(optval, sfd, copylen)) in mptcp_put_subflow_data()
958 char __user *optval, int __user *optlen) in mptcp_get_subflow_data() argument
976 if (copy_from_user(sfd, optval, copylen)) in mptcp_get_subflow_data()
994 static int mptcp_getsockopt_tcpinfo(struct mptcp_sock *msk, char __user *optval, in mptcp_getsockopt_tcpinfo() argument
1004 len = mptcp_get_subflow_data(&sfd, optval, optlen); in mptcp_getsockopt_tcpinfo()
1012 infoptr = optval + sfd.size_subflow_data; in mptcp_getsockopt_tcpinfo()
1041 if (mptcp_put_subflow_data(&sfd, optval, copied, optlen)) in mptcp_getsockopt_tcpinfo()
1086 static int mptcp_getsockopt_subflow_addrs(struct mptcp_sock *msk, char __user *optval, in mptcp_getsockopt_subflow_addrs() argument
1096 len = mptcp_get_subflow_data(&sfd, optval, optlen); in mptcp_getsockopt_subflow_addrs()
1104 addrptr = optval + sfd.size_subflow_data; in mptcp_getsockopt_subflow_addrs()
1133 if (mptcp_put_subflow_data(&sfd, optval, copied, optlen)) in mptcp_getsockopt_subflow_addrs()
1139 static int mptcp_put_int_option(struct mptcp_sock *msk, char __user *optval, in mptcp_put_int_option() argument
1155 if (copy_to_user(optval, &ucval, 1)) in mptcp_put_int_option()
1161 if (copy_to_user(optval, &val, len)) in mptcp_put_int_option()
1169 char __user *optval, int __user *optlen) in mptcp_getsockopt_sol_tcp() argument
1182 optval, optlen); in mptcp_getsockopt_sol_tcp()
1184 return mptcp_put_int_option(msk, optval, optlen, msk->recvmsg_inq); in mptcp_getsockopt_sol_tcp()
1186 return mptcp_put_int_option(msk, optval, optlen, msk->cork); in mptcp_getsockopt_sol_tcp()
1188 return mptcp_put_int_option(msk, optval, optlen, msk->nodelay); in mptcp_getsockopt_sol_tcp()
1194 char __user *optval, int __user *optlen) in mptcp_getsockopt_v4() argument
1200 return mptcp_put_int_option(msk, optval, optlen, inet_sk(sk)->tos); in mptcp_getsockopt_v4()
1207 char __user *optval, int __user *optlen) in mptcp_getsockopt_sol_mptcp() argument
1211 return mptcp_getsockopt_info(msk, optval, optlen); in mptcp_getsockopt_sol_mptcp()
1213 return mptcp_getsockopt_tcpinfo(msk, optval, optlen); in mptcp_getsockopt_sol_mptcp()
1215 return mptcp_getsockopt_subflow_addrs(msk, optval, optlen); in mptcp_getsockopt_sol_mptcp()
1222 char __user *optval, int __user *option) in mptcp_getsockopt() argument
1239 return tcp_getsockopt(ssk, level, optname, optval, option); in mptcp_getsockopt()
1242 return mptcp_getsockopt_v4(msk, optname, optval, option); in mptcp_getsockopt()
1244 return mptcp_getsockopt_sol_tcp(msk, optname, optval, option); in mptcp_getsockopt()
1246 return mptcp_getsockopt_sol_mptcp(msk, optname, optval, option); in mptcp_getsockopt()