Lines Matching refs:optlen
82 if (IPCB(skb)->opt.optlen == 0) in ip_cmsg_recv_opts()
85 put_cmsg(msg, SOL_IP, IP_RECVOPTS, IPCB(skb)->opt.optlen, in ip_cmsg_recv_opts()
95 if (IPCB(skb)->opt.optlen == 0) in ip_cmsg_recv_retopts()
104 put_cmsg(msg, SOL_IP, IP_RETOPTS, opt->optlen, opt->__data); in ip_cmsg_recv_retopts()
474 int optname, char __user *optval, unsigned int optlen) in do_ip_setsockopt() argument
501 if (optlen >= sizeof(int)) { in do_ip_setsockopt()
504 } else if (optlen >= sizeof(char)) { in do_ip_setsockopt()
516 return ip_mroute_setsockopt(sk, optname, optval, optlen); in do_ip_setsockopt()
526 if (optlen > 40) in do_ip_setsockopt()
529 optval, optlen); in do_ip_setsockopt()
543 icsk->icsk_ext_hdr_len -= old->opt.optlen; in do_ip_setsockopt()
545 icsk->icsk_ext_hdr_len += opt->opt.optlen; in do_ip_setsockopt()
610 if (optlen < 1) in do_ip_setsockopt()
643 if (optlen < 1) in do_ip_setsockopt()
652 if (optlen < 1) in do_ip_setsockopt()
661 if (optlen != sizeof(int)) in do_ip_setsockopt()
696 if (optlen < sizeof(struct in_addr)) in do_ip_setsockopt()
700 if (optlen >= sizeof(struct ip_mreqn)) { in do_ip_setsockopt()
705 if (optlen >= sizeof(struct ip_mreq)) { in do_ip_setsockopt()
709 } else if (optlen >= sizeof(struct in_addr)) { in do_ip_setsockopt()
755 if (optlen < sizeof(struct ip_mreq)) in do_ip_setsockopt()
758 if (optlen >= sizeof(struct ip_mreqn)) { in do_ip_setsockopt()
777 if (optlen < IP_MSFILTER_SIZE(0)) in do_ip_setsockopt()
779 if (optlen > sysctl_optmem_max) { in do_ip_setsockopt()
783 msf = kmalloc(optlen, GFP_KERNEL); in do_ip_setsockopt()
789 if (copy_from_user(msf, optval, optlen)) { in do_ip_setsockopt()
800 if (IP_MSFILTER_SIZE(msf->imsf_numsrc) > optlen) { in do_ip_setsockopt()
817 if (optlen != sizeof(struct ip_mreq_source)) in do_ip_setsockopt()
854 if (optlen < sizeof(struct group_req)) in do_ip_setsockopt()
882 if (optlen != sizeof(struct group_source_req)) in do_ip_setsockopt()
933 if (optlen < GROUP_FILTER_SIZE(0)) in do_ip_setsockopt()
935 if (optlen > sysctl_optmem_max) { in do_ip_setsockopt()
939 gsf = kmalloc(optlen, GFP_KERNEL); in do_ip_setsockopt()
945 if (copy_from_user(gsf, optval, optlen)) in do_ip_setsockopt()
954 if (GROUP_FILTER_SIZE(gsf->gf_numsrc) > optlen) { in do_ip_setsockopt()
992 if (optlen < 1) in do_ip_setsockopt()
1003 if (optlen < 1) in do_ip_setsockopt()
1013 err = xfrm_user_policy(sk, optname, optval, optlen); in do_ip_setsockopt()
1022 if (optlen < 1) in do_ip_setsockopt()
1028 if (optlen < 1) in do_ip_setsockopt()
1073 if (unlikely(IPCB(skb)->opt.optlen)) in ipv4_pktinfo_prepare()
1080 int optname, char __user *optval, unsigned int optlen) in ip_setsockopt() argument
1087 err = do_ip_setsockopt(sk, level, optname, optval, optlen); in ip_setsockopt()
1095 err = nf_setsockopt(sk, PF_INET, optname, optval, optlen); in ip_setsockopt()
1105 char __user *optval, unsigned int optlen) in compat_ip_setsockopt() argument
1113 return compat_mc_setsockopt(sk, level, optname, optval, optlen, in compat_ip_setsockopt()
1116 err = do_ip_setsockopt(sk, level, optname, optval, optlen); in compat_ip_setsockopt()
1125 optval, optlen); in compat_ip_setsockopt()
1140 char __user *optval, int __user *optlen, unsigned int flags) in do_ip_getsockopt() argument
1150 return ip_mroute_getsockopt(sk, optname, optval, optlen); in do_ip_getsockopt()
1152 if (get_user(len, optlen)) in do_ip_getsockopt()
1168 opt->optlen = 0; in do_ip_getsockopt()
1172 inet_opt->opt.optlen); in do_ip_getsockopt()
1175 if (opt->optlen == 0) in do_ip_getsockopt()
1176 return put_user(0, optlen); in do_ip_getsockopt()
1180 len = min_t(unsigned int, len, opt->optlen); in do_ip_getsockopt()
1181 if (put_user(len, optlen)) in do_ip_getsockopt()
1259 if (put_user(len, optlen)) in do_ip_getsockopt()
1279 (struct ip_msfilter __user *)optval, optlen); in do_ip_getsockopt()
1298 optlen); in do_ip_getsockopt()
1335 return put_user(len, optlen); in do_ip_getsockopt()
1355 if (put_user(len, optlen)) in do_ip_getsockopt()
1361 if (put_user(len, optlen)) in do_ip_getsockopt()
1370 int optname, char __user *optval, int __user *optlen) in ip_getsockopt() argument
1374 err = do_ip_getsockopt(sk, level, optname, optval, optlen, 0); in ip_getsockopt()
1381 if (get_user(len, optlen)) in ip_getsockopt()
1389 err = put_user(len, optlen); in ip_getsockopt()
1399 char __user *optval, int __user *optlen) in compat_ip_getsockopt() argument
1404 return compat_mc_getsockopt(sk, level, optname, optval, optlen, in compat_ip_getsockopt()
1407 err = do_ip_getsockopt(sk, level, optname, optval, optlen, in compat_ip_getsockopt()
1416 if (get_user(len, optlen)) in compat_ip_getsockopt()
1423 err = put_user(len, optlen); in compat_ip_getsockopt()