Lines Matching refs:optlen
140 sockptr_t optval, int optlen) in copy_group_source_from_sockptr() argument
145 if (optlen < sizeof(gr32)) in copy_group_source_from_sockptr()
153 if (optlen < sizeof(*greqs)) in copy_group_source_from_sockptr()
163 sockptr_t optval, int optlen) in do_ipv6_mcast_group_source() argument
169 ret = copy_group_source_from_sockptr(&greqs, optval, optlen); in do_ipv6_mcast_group_source()
204 int optlen) in ipv6_set_mcast_msfilter() argument
209 if (optlen < GROUP_FILTER_SIZE(0)) in ipv6_set_mcast_msfilter()
211 if (optlen > READ_ONCE(sysctl_optmem_max)) in ipv6_set_mcast_msfilter()
214 gsf = memdup_sockptr(optval, optlen); in ipv6_set_mcast_msfilter()
225 if (GROUP_FILTER_SIZE(gsf->gf_numsrc) > optlen) in ipv6_set_mcast_msfilter()
235 int optlen) in compat_ipv6_set_mcast_msfilter() argument
243 if (optlen < size0) in compat_ipv6_set_mcast_msfilter()
245 if (optlen > READ_ONCE(sysctl_optmem_max) - 4) in compat_ipv6_set_mcast_msfilter()
248 p = kmalloc(optlen + 4, GFP_KERNEL); in compat_ipv6_set_mcast_msfilter()
254 if (copy_from_sockptr(gf32, optval, optlen)) in compat_ipv6_set_mcast_msfilter()
264 if (offsetof(struct compat_group_filter, gf_slist_flex[n]) > optlen) in compat_ipv6_set_mcast_msfilter()
279 sockptr_t optval, int optlen) in ipv6_mcast_join_leave() argument
284 if (optlen < sizeof(greq)) in ipv6_mcast_join_leave()
299 sockptr_t optval, int optlen) in compat_ipv6_mcast_join_leave() argument
304 if (optlen < sizeof(gr32)) in compat_ipv6_mcast_join_leave()
319 int optlen) in ipv6_set_opt_hdr() argument
334 if (optlen > 0) { in ipv6_set_opt_hdr()
337 if (optlen < sizeof(struct ipv6_opt_hdr) || in ipv6_set_opt_hdr()
338 optlen & 0x7 || in ipv6_set_opt_hdr()
339 optlen > 8 * 255) in ipv6_set_opt_hdr()
342 new = memdup_sockptr(optval, optlen); in ipv6_set_opt_hdr()
345 if (unlikely(ipv6_optlen(new) > optlen)) { in ipv6_set_opt_hdr()
373 if (!seg6_validate_srh(srh, optlen, false)) in ipv6_set_opt_hdr()
393 sockptr_t optval, unsigned int optlen) in do_ipv6_setsockopt() argument
404 if (optlen >= sizeof(int)) { in do_ipv6_setsockopt()
414 return ip6_mroute_setsockopt(sk, optname, optval, optlen); in do_ipv6_setsockopt()
429 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
517 if (optlen < sizeof(int) || in do_ipv6_setsockopt()
525 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
532 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
539 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
546 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
553 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
560 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
567 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
574 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
581 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
588 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
595 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
607 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
614 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
621 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
633 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
641 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
649 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
659 retv = ipv6_set_opt_hdr(sk, optname, optval, optlen); in do_ipv6_setsockopt()
666 if (optlen == 0) in do_ipv6_setsockopt()
668 else if (optlen < sizeof(struct in6_pktinfo) || in do_ipv6_setsockopt()
696 if (optlen == 0) in do_ipv6_setsockopt()
703 if (optlen > 64*1024) in do_ipv6_setsockopt()
706 opt = sock_kmalloc(sk, sizeof(*opt) + optlen, GFP_KERNEL); in do_ipv6_setsockopt()
713 opt->tot_len = sizeof(*opt) + optlen; in do_ipv6_setsockopt()
715 if (copy_from_sockptr(opt + 1, optval, optlen)) in do_ipv6_setsockopt()
718 msg.msg_controllen = optlen; in do_ipv6_setsockopt()
736 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
747 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
756 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
769 if (optlen != sizeof(int)) in do_ipv6_setsockopt()
797 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
829 if (optlen < sizeof(struct ipv6_mreq)) in do_ipv6_setsockopt()
851 if (optlen < sizeof(struct ipv6_mreq)) in do_ipv6_setsockopt()
865 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
875 optlen); in do_ipv6_setsockopt()
878 optlen); in do_ipv6_setsockopt()
884 retv = do_ipv6_mcast_group_source(sk, optname, optval, optlen); in do_ipv6_setsockopt()
889 optlen); in do_ipv6_setsockopt()
891 retv = ipv6_set_mcast_msfilter(sk, optval, optlen); in do_ipv6_setsockopt()
894 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
899 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
905 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
913 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
921 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
929 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
935 retv = ipv6_flowlabel_opt(sk, optval, optlen); in do_ipv6_setsockopt()
942 retv = xfrm_user_policy(sk, optname, optval, optlen); in do_ipv6_setsockopt()
946 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
951 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
972 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
996 unsigned int optlen) in ipv6_setsockopt() argument
1001 return udp_prot.setsockopt(sk, level, optname, optval, optlen); in ipv6_setsockopt()
1006 err = do_ipv6_setsockopt(sk, level, optname, optval, optlen); in ipv6_setsockopt()
1011 err = nf_setsockopt(sk, PF_INET6, optname, optval, optlen); in ipv6_setsockopt()
1052 int __user *optlen, int len) in ipv6_get_msfilter() argument
1072 if (put_user(GROUP_FILTER_SIZE(num), optlen) || in ipv6_get_msfilter()
1081 int __user *optlen) in compat_ipv6_get_msfilter() argument
1090 if (get_user(len, optlen)) in compat_ipv6_get_msfilter()
1113 if (put_user(len, optlen) || in compat_ipv6_get_msfilter()
1121 char __user *optval, int __user *optlen, unsigned int flags) in do_ipv6_getsockopt() argument
1128 return ip6_mroute_getsockopt(sk, optname, optval, optlen); in do_ipv6_getsockopt()
1130 if (get_user(len, optlen)) in do_ipv6_getsockopt()
1144 return compat_ipv6_get_msfilter(sk, optval, optlen); in do_ipv6_getsockopt()
1145 return ipv6_get_msfilter(sk, optval, optlen, len); in do_ipv6_getsockopt()
1200 return put_user(len, optlen); in do_ipv6_getsockopt()
1260 return put_user(len, optlen); in do_ipv6_getsockopt()
1314 if (put_user(len, optlen)) in do_ipv6_getsockopt()
1408 if (put_user(len, optlen)) in do_ipv6_getsockopt()
1462 if (put_user(len, optlen)) in do_ipv6_getsockopt()
1470 char __user *optval, int __user *optlen) in ipv6_getsockopt() argument
1475 return udp_prot.getsockopt(sk, level, optname, optval, optlen); in ipv6_getsockopt()
1480 err = do_ipv6_getsockopt(sk, level, optname, optval, optlen, 0); in ipv6_getsockopt()
1486 if (get_user(len, optlen)) in ipv6_getsockopt()
1491 err = put_user(len, optlen); in ipv6_getsockopt()