Lines Matching refs:optlen
75 if (IPCB(skb)->opt.optlen == 0) in ip_cmsg_recv_opts()
78 put_cmsg(msg, SOL_IP, IP_RECVOPTS, IPCB(skb)->opt.optlen, in ip_cmsg_recv_opts()
88 if (IPCB(skb)->opt.optlen == 0) in ip_cmsg_recv_retopts()
97 put_cmsg(msg, SOL_IP, IP_RETOPTS, opt->optlen, opt->__data); in ip_cmsg_recv_retopts()
573 int optname, char __user *optval, unsigned int optlen) in do_ip_setsockopt() argument
603 if (optlen >= sizeof(int)) { in do_ip_setsockopt()
606 } else if (optlen >= sizeof(char)) { in do_ip_setsockopt()
618 return ip_mroute_setsockopt(sk, optname, optval, optlen); in do_ip_setsockopt()
630 if (optlen > 40) in do_ip_setsockopt()
633 optval, optlen); in do_ip_setsockopt()
647 icsk->icsk_ext_hdr_len -= old->opt.optlen; in do_ip_setsockopt()
649 icsk->icsk_ext_hdr_len += opt->opt.optlen; in do_ip_setsockopt()
727 if (optlen < 1) in do_ip_setsockopt()
763 if (optlen < 1) in do_ip_setsockopt()
772 if (optlen < 1) in do_ip_setsockopt()
781 if (optlen != sizeof(int)) in do_ip_setsockopt()
816 if (optlen < sizeof(struct in_addr)) in do_ip_setsockopt()
820 if (optlen >= sizeof(struct ip_mreqn)) { in do_ip_setsockopt()
825 if (optlen >= sizeof(struct ip_mreq)) { in do_ip_setsockopt()
829 } else if (optlen >= sizeof(struct in_addr)) { in do_ip_setsockopt()
875 if (optlen < sizeof(struct ip_mreq)) in do_ip_setsockopt()
878 if (optlen >= sizeof(struct ip_mreqn)) { in do_ip_setsockopt()
897 if (optlen < IP_MSFILTER_SIZE(0)) in do_ip_setsockopt()
899 if (optlen > sysctl_optmem_max) { in do_ip_setsockopt()
903 msf = kmalloc(optlen, GFP_KERNEL); in do_ip_setsockopt()
909 if (copy_from_user(msf, optval, optlen)) { in do_ip_setsockopt()
920 if (IP_MSFILTER_SIZE(msf->imsf_numsrc) > optlen) { in do_ip_setsockopt()
937 if (optlen != sizeof(struct ip_mreq_source)) in do_ip_setsockopt()
974 if (optlen < sizeof(struct group_req)) in do_ip_setsockopt()
1002 if (optlen != sizeof(struct group_source_req)) in do_ip_setsockopt()
1053 if (optlen < GROUP_FILTER_SIZE(0)) in do_ip_setsockopt()
1055 if (optlen > sysctl_optmem_max) { in do_ip_setsockopt()
1059 gsf = kmalloc(optlen, GFP_KERNEL); in do_ip_setsockopt()
1065 if (copy_from_user(gsf, optval, optlen)) in do_ip_setsockopt()
1074 if (GROUP_FILTER_SIZE(gsf->gf_numsrc) > optlen) { in do_ip_setsockopt()
1112 if (optlen < 1) in do_ip_setsockopt()
1123 if (optlen < 1) in do_ip_setsockopt()
1133 err = xfrm_user_policy(sk, optname, optval, optlen); in do_ip_setsockopt()
1142 if (optlen < 1) in do_ip_setsockopt()
1148 if (optlen < 1) in do_ip_setsockopt()
1197 int optname, char __user *optval, unsigned int optlen) in ip_setsockopt() argument
1204 err = do_ip_setsockopt(sk, level, optname, optval, optlen); in ip_setsockopt()
1212 err = nf_setsockopt(sk, PF_INET, optname, optval, optlen); in ip_setsockopt()
1222 char __user *optval, unsigned int optlen) in compat_ip_setsockopt() argument
1230 return compat_mc_setsockopt(sk, level, optname, optval, optlen, in compat_ip_setsockopt()
1233 err = do_ip_setsockopt(sk, level, optname, optval, optlen); in compat_ip_setsockopt()
1242 optval, optlen); in compat_ip_setsockopt()
1267 char __user *optval, int __user *optlen, unsigned int flags) in do_ip_getsockopt() argument
1278 return ip_mroute_getsockopt(sk, optname, optval, optlen); in do_ip_getsockopt()
1280 if (get_user(len, optlen)) in do_ip_getsockopt()
1298 opt->optlen = 0; in do_ip_getsockopt()
1302 inet_opt->opt.optlen); in do_ip_getsockopt()
1305 if (opt->optlen == 0) in do_ip_getsockopt()
1306 return put_user(0, optlen); in do_ip_getsockopt()
1310 len = min_t(unsigned int, len, opt->optlen); in do_ip_getsockopt()
1311 if (put_user(len, optlen)) in do_ip_getsockopt()
1395 if (put_user(len, optlen)) in do_ip_getsockopt()
1414 (struct ip_msfilter __user *)optval, optlen); in do_ip_getsockopt()
1431 optlen); in do_ip_getsockopt()
1467 return put_user(len, optlen); in do_ip_getsockopt()
1487 if (put_user(len, optlen)) in do_ip_getsockopt()
1493 if (put_user(len, optlen)) in do_ip_getsockopt()
1508 int optname, char __user *optval, int __user *optlen) in ip_getsockopt() argument
1512 err = do_ip_getsockopt(sk, level, optname, optval, optlen, 0); in ip_getsockopt()
1519 if (get_user(len, optlen)) in ip_getsockopt()
1527 err = put_user(len, optlen); in ip_getsockopt()
1537 char __user *optval, int __user *optlen) in compat_ip_getsockopt() argument
1542 return compat_mc_getsockopt(sk, level, optname, optval, optlen, in compat_ip_getsockopt()
1545 err = do_ip_getsockopt(sk, level, optname, optval, optlen, in compat_ip_getsockopt()
1554 if (get_user(len, optlen)) in compat_ip_getsockopt()
1561 err = put_user(len, optlen); in compat_ip_getsockopt()