Lines Matching refs:optlen

78 	if (IPCB(skb)->opt.optlen == 0)  in ip_cmsg_recv_opts()
81 put_cmsg(msg, SOL_IP, IP_RECVOPTS, IPCB(skb)->opt.optlen, in ip_cmsg_recv_opts()
92 if (IPCB(skb)->opt.optlen == 0) in ip_cmsg_recv_retopts()
101 put_cmsg(msg, SOL_IP, IP_RETOPTS, opt->optlen, opt->__data); in ip_cmsg_recv_retopts()
701 sockptr_t optval, int optlen) in copy_group_source_from_sockptr() argument
706 if (optlen != sizeof(gr32)) in copy_group_source_from_sockptr()
714 if (optlen != sizeof(*greqs)) in copy_group_source_from_sockptr()
724 sockptr_t optval, int optlen) in do_mcast_group_source() argument
731 err = copy_group_source_from_sockptr(&greqs, optval, optlen); in do_mcast_group_source()
771 static int ip_set_mcast_msfilter(struct sock *sk, sockptr_t optval, int optlen) in ip_set_mcast_msfilter() argument
776 if (optlen < GROUP_FILTER_SIZE(0)) in ip_set_mcast_msfilter()
778 if (optlen > READ_ONCE(sysctl_optmem_max)) in ip_set_mcast_msfilter()
781 gsf = memdup_sockptr(optval, optlen); in ip_set_mcast_msfilter()
792 if (GROUP_FILTER_SIZE(gsf->gf_numsrc) > optlen) in ip_set_mcast_msfilter()
804 int optlen) in compat_ip_set_mcast_msfilter() argument
812 if (optlen < size0) in compat_ip_set_mcast_msfilter()
814 if (optlen > READ_ONCE(sysctl_optmem_max) - 4) in compat_ip_set_mcast_msfilter()
817 p = kmalloc(optlen + 4, GFP_KERNEL); in compat_ip_set_mcast_msfilter()
823 if (copy_from_sockptr(gf32, optval, optlen)) in compat_ip_set_mcast_msfilter()
833 if (offsetof(struct compat_group_filter, gf_slist_flex[n]) > optlen) in compat_ip_set_mcast_msfilter()
848 sockptr_t optval, int optlen) in ip_mcast_join_leave() argument
854 if (optlen < sizeof(struct group_req)) in ip_mcast_join_leave()
870 sockptr_t optval, int optlen) in compat_ip_mcast_join_leave() argument
876 if (optlen < sizeof(struct compat_group_req)) in compat_ip_mcast_join_leave()
895 sockptr_t optval, unsigned int optlen) in do_ip_setsockopt() argument
929 if (optlen >= sizeof(int)) { in do_ip_setsockopt()
932 } else if (optlen >= sizeof(char)) { in do_ip_setsockopt()
946 return ip_mroute_setsockopt(sk, optname, optval, optlen); in do_ip_setsockopt()
987 if (optlen < 1) in do_ip_setsockopt()
997 if (optlen < 1) in do_ip_setsockopt()
1002 if (optlen < 1) in do_ip_setsockopt()
1012 if (optlen < 1) in do_ip_setsockopt()
1025 if (optlen < 1) in do_ip_setsockopt()
1032 if (optlen < 1) in do_ip_setsockopt()
1054 if (optlen > 40) in do_ip_setsockopt()
1056 err = ip_options_get(sock_net(sk), &opt, optval, optlen); in do_ip_setsockopt()
1070 icsk->icsk_ext_hdr_len -= old->opt.optlen; in do_ip_setsockopt()
1072 icsk->icsk_ext_hdr_len += opt->opt.optlen; in do_ip_setsockopt()
1107 if (optlen < 1) in do_ip_setsockopt()
1121 if (optlen != sizeof(int)) in do_ip_setsockopt()
1159 if (optlen < sizeof(struct in_addr)) in do_ip_setsockopt()
1163 if (optlen >= sizeof(struct ip_mreqn)) { in do_ip_setsockopt()
1168 if (optlen >= sizeof(struct ip_mreq)) { in do_ip_setsockopt()
1172 } else if (optlen >= sizeof(struct in_addr)) { in do_ip_setsockopt()
1222 if (optlen < sizeof(struct ip_mreq)) in do_ip_setsockopt()
1225 if (optlen >= sizeof(struct ip_mreqn)) { in do_ip_setsockopt()
1245 if (optlen < IP_MSFILTER_SIZE(0)) in do_ip_setsockopt()
1247 if (optlen > READ_ONCE(sysctl_optmem_max)) { in do_ip_setsockopt()
1251 msf = memdup_sockptr(optval, optlen); in do_ip_setsockopt()
1263 if (IP_MSFILTER_SIZE(msf->imsf_numsrc) > optlen) { in do_ip_setsockopt()
1280 if (optlen != sizeof(struct ip_mreq_source)) in do_ip_setsockopt()
1314 optlen); in do_ip_setsockopt()
1316 err = ip_mcast_join_leave(sk, optname, optval, optlen); in do_ip_setsockopt()
1322 err = do_mcast_group_source(sk, optname, optval, optlen); in do_ip_setsockopt()
1326 err = compat_ip_set_mcast_msfilter(sk, optval, optlen); in do_ip_setsockopt()
1328 err = ip_set_mcast_msfilter(sk, optval, optlen); in do_ip_setsockopt()
1335 err = xfrm_user_policy(sk, optname, optval, optlen); in do_ip_setsockopt()
1343 if (optlen != sizeof(__u32)) in do_ip_setsockopt()
1410 unsigned int optlen) in ip_setsockopt() argument
1417 err = do_ip_setsockopt(sk, level, optname, optval, optlen); in ip_setsockopt()
1421 err = bpfilter_ip_set_sockopt(sk, optname, optval, optlen); in ip_setsockopt()
1429 err = nf_setsockopt(sk, PF_INET, optname, optval, optlen); in ip_setsockopt()
1451 sockptr_t optlen, int len) in ip_get_mcast_msfilter() argument
1471 if (copy_to_sockptr(optlen, &gsf_size, sizeof(int)) || in ip_get_mcast_msfilter()
1478 sockptr_t optlen, int len) in compat_ip_get_mcast_msfilter() argument
1503 if (copy_to_sockptr(optlen, &len, sizeof(int)) || in compat_ip_get_mcast_msfilter()
1513 sockptr_t optval, sockptr_t optlen) in do_ip_getsockopt() argument
1524 return ip_mroute_getsockopt(sk, optname, optval, optlen); in do_ip_getsockopt()
1526 if (copy_from_sockptr(&len, optlen, sizeof(int))) in do_ip_getsockopt()
1610 opt->optlen = 0; in do_ip_getsockopt()
1614 inet_opt->opt.optlen); in do_ip_getsockopt()
1617 if (opt->optlen == 0) { in do_ip_getsockopt()
1619 return copy_to_sockptr(optlen, &len, sizeof(int)); in do_ip_getsockopt()
1624 len = min_t(unsigned int, len, opt->optlen); in do_ip_getsockopt()
1625 if (copy_to_sockptr(optlen, &len, sizeof(int))) in do_ip_getsockopt()
1665 if (copy_to_sockptr(optlen, &len, sizeof(int))) in do_ip_getsockopt()
1683 err = ip_mc_msfget(sk, &msf, optval, optlen); in do_ip_getsockopt()
1688 err = compat_ip_get_mcast_msfilter(sk, optval, optlen, in do_ip_getsockopt()
1691 err = ip_get_mcast_msfilter(sk, optval, optlen, len); in do_ip_getsockopt()
1729 return copy_to_sockptr(optlen, &len, sizeof(int)); in do_ip_getsockopt()
1746 if (copy_to_sockptr(optlen, &len, sizeof(int))) in do_ip_getsockopt()
1752 if (copy_to_sockptr(optlen, &len, sizeof(int))) in do_ip_getsockopt()
1767 int optname, char __user *optval, int __user *optlen) in ip_getsockopt() argument
1772 USER_SOCKPTR(optval), USER_SOCKPTR(optlen)); in ip_getsockopt()
1777 err = bpfilter_ip_get_sockopt(sk, optname, optval, optlen); in ip_getsockopt()
1785 if (get_user(len, optlen)) in ip_getsockopt()
1790 err = put_user(len, optlen); in ip_getsockopt()