Lines Matching full:if
14 * o Return an optlen of the truncated length if need be
63 if (sk->sk_type != SOCK_RAW || inet_sk(sk)->inet_num != IPPROTO_RAW) in ip6_ra_control()
67 if (sel >= 0 && !new_ra) in ip6_ra_control()
72 if (ra->sk == sk) { in ip6_ra_control()
73 if (sel >= 0) { in ip6_ra_control()
87 if (!new_ra) { in ip6_ra_control()
103 if (inet_sk(sk)->is_icsk) { in ipv6_update_options()
104 if (opt && in ipv6_update_options()
142 if (in_compat_syscall()) { in copy_group_source_from_sockptr()
145 if (optlen < sizeof(gr32)) in copy_group_source_from_sockptr()
147 if (copy_from_sockptr(&gr32, optval, sizeof(gr32))) in copy_group_source_from_sockptr()
153 if (optlen < sizeof(*greqs)) in copy_group_source_from_sockptr()
155 if (copy_from_sockptr(greqs, optval, sizeof(*greqs))) in copy_group_source_from_sockptr()
170 if (ret) in do_ipv6_mcast_group_source()
173 if (greqs.gsr_group.ss_family != AF_INET6 || in do_ipv6_mcast_group_source()
177 if (optname == MCAST_BLOCK_SOURCE) { in do_ipv6_mcast_group_source()
180 } else if (optname == MCAST_UNBLOCK_SOURCE) { in do_ipv6_mcast_group_source()
183 } else if (optname == MCAST_JOIN_SOURCE_GROUP) { in do_ipv6_mcast_group_source()
192 if (retv && retv != -EADDRINUSE) in do_ipv6_mcast_group_source()
209 if (optlen < GROUP_FILTER_SIZE(0)) in ipv6_set_mcast_msfilter()
211 if (optlen > sysctl_optmem_max) in ipv6_set_mcast_msfilter()
215 if (IS_ERR(gsf)) in ipv6_set_mcast_msfilter()
220 if (gsf->gf_numsrc >= 0x1ffffffU || in ipv6_set_mcast_msfilter()
225 if (GROUP_FILTER_SIZE(gsf->gf_numsrc) > optlen) in ipv6_set_mcast_msfilter()
243 if (optlen < size0) in compat_ipv6_set_mcast_msfilter()
245 if (optlen > sysctl_optmem_max - 4) in compat_ipv6_set_mcast_msfilter()
249 if (!p) in compat_ipv6_set_mcast_msfilter()
254 if (copy_from_sockptr(gf32, optval, optlen)) in compat_ipv6_set_mcast_msfilter()
260 if (n >= 0x1ffffffU || n > sysctl_mld_max_msf) in compat_ipv6_set_mcast_msfilter()
264 if (offsetof(struct compat_group_filter, gf_slist[n]) > optlen) in compat_ipv6_set_mcast_msfilter()
284 if (optlen < sizeof(greq)) in ipv6_mcast_join_leave()
286 if (copy_from_sockptr(&greq, optval, sizeof(greq))) in ipv6_mcast_join_leave()
289 if (greq.gr_group.ss_family != AF_INET6) in ipv6_mcast_join_leave()
292 if (optname == MCAST_JOIN_GROUP) in ipv6_mcast_join_leave()
304 if (optlen < sizeof(gr32)) in compat_ipv6_mcast_join_leave()
306 if (copy_from_sockptr(&gr32, optval, sizeof(gr32))) in compat_ipv6_mcast_join_leave()
309 if (gr32.gr_group.ss_family != AF_INET6) in compat_ipv6_mcast_join_leave()
312 if (optname == MCAST_JOIN_GROUP) in compat_ipv6_mcast_join_leave()
328 if (optname != IPV6_RTHDR && !ns_capable(net->user_ns, CAP_NET_RAW)) in ipv6_set_opt_hdr()
334 if (optlen > 0) { in ipv6_set_opt_hdr()
335 if (sockptr_is_null(optval)) in ipv6_set_opt_hdr()
337 if (optlen < sizeof(struct ipv6_opt_hdr) || in ipv6_set_opt_hdr()
343 if (IS_ERR(new)) in ipv6_set_opt_hdr()
345 if (unlikely(ipv6_optlen(new) > optlen)) { in ipv6_set_opt_hdr()
354 if (IS_ERR(opt)) in ipv6_set_opt_hdr()
359 if (optname == IPV6_RTHDR && opt && opt->srcrt) { in ipv6_set_opt_hdr()
362 #if IS_ENABLED(CONFIG_IPV6_MIP6) in ipv6_set_opt_hdr()
364 if (rthdr->hdrlen != 2 || rthdr->segments_left != 1) in ipv6_set_opt_hdr()
373 if (!seg6_validate_srh(srh, optlen, false)) in ipv6_set_opt_hdr()
385 if (opt) { in ipv6_set_opt_hdr()
401 if (sockptr_is_null(optval)) in do_ipv6_setsockopt()
404 if (optlen >= sizeof(int)) { in do_ipv6_setsockopt()
405 if (copy_from_sockptr(&val, optval, sizeof(val))) in do_ipv6_setsockopt()
413 if (ip6_mroute_opt(optname)) in do_ipv6_setsockopt()
416 if (needs_rtnl) in do_ipv6_setsockopt()
423 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
425 if (val == PF_INET) { in do_ipv6_setsockopt()
429 if (sk->sk_type == SOCK_RAW) in do_ipv6_setsockopt()
432 if (sk->sk_protocol == IPPROTO_UDP || in do_ipv6_setsockopt()
435 if (up->pending == AF_INET6) { in do_ipv6_setsockopt()
439 } else if (sk->sk_protocol == IPPROTO_TCP) { in do_ipv6_setsockopt()
440 if (sk->sk_prot != &tcpv6_prot) { in do_ipv6_setsockopt()
448 if (sk->sk_state != TCP_ESTABLISHED) { in do_ipv6_setsockopt()
453 if (ipv6_only_sock(sk) || in do_ipv6_setsockopt()
470 if (sk->sk_protocol == IPPROTO_TCP) { in do_ipv6_setsockopt()
484 if (sk->sk_protocol == IPPROTO_UDPLITE) in do_ipv6_setsockopt()
496 if (opt) { in do_ipv6_setsockopt()
515 if (optlen < sizeof(int) || in do_ipv6_setsockopt()
523 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
530 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
537 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
544 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
551 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
558 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
565 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
572 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
579 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
586 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
593 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
595 if (val < -1 || val > 0xff) in do_ipv6_setsockopt()
598 if (val == -1) in do_ipv6_setsockopt()
605 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
612 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
619 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
626 if (valbool && !ns_capable(net->user_ns, CAP_NET_RAW) && in do_ipv6_setsockopt()
631 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
639 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
647 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
664 if (optlen == 0) in do_ipv6_setsockopt()
666 else if (optlen < sizeof(struct in6_pktinfo) || in do_ipv6_setsockopt()
670 if (copy_from_sockptr(&pkt, optval, sizeof(pkt))) { in do_ipv6_setsockopt()
674 if (!sk_dev_equal_l3scope(sk, pkt.ipi6_ifindex)) in do_ipv6_setsockopt()
694 if (optlen == 0) in do_ipv6_setsockopt()
701 if (optlen > 64*1024) in do_ipv6_setsockopt()
706 if (!opt) in do_ipv6_setsockopt()
713 if (copy_from_sockptr(opt + 1, optval, optlen)) in do_ipv6_setsockopt()
721 if (retv) in do_ipv6_setsockopt()
727 if (opt) { in do_ipv6_setsockopt()
734 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
736 if (val > 255 || val < -1) in do_ipv6_setsockopt()
743 if (sk->sk_type == SOCK_STREAM) in do_ipv6_setsockopt()
745 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
747 if (val > 255 || val < -1) in do_ipv6_setsockopt()
754 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
756 if (val != valbool) in do_ipv6_setsockopt()
767 if (optlen != sizeof(int)) in do_ipv6_setsockopt()
771 if (ifindex == 0) { in do_ipv6_setsockopt()
779 if (!dev) in do_ipv6_setsockopt()
784 if (sk->sk_bound_dev_if) in do_ipv6_setsockopt()
793 if (sk->sk_type == SOCK_STREAM) in do_ipv6_setsockopt()
795 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
798 if (val) { in do_ipv6_setsockopt()
805 if (!dev) { in do_ipv6_setsockopt()
814 if (sk->sk_bound_dev_if && in do_ipv6_setsockopt()
827 if (optlen < sizeof(struct ipv6_mreq)) in do_ipv6_setsockopt()
831 if (inet_sk(sk)->is_icsk) in do_ipv6_setsockopt()
835 if (copy_from_sockptr(&mreq, optval, sizeof(struct ipv6_mreq))) in do_ipv6_setsockopt()
838 if (optname == IPV6_ADD_MEMBERSHIP) in do_ipv6_setsockopt()
849 if (optlen < sizeof(struct ipv6_mreq)) in do_ipv6_setsockopt()
853 if (copy_from_sockptr(&mreq, optval, sizeof(struct ipv6_mreq))) in do_ipv6_setsockopt()
856 if (optname == IPV6_JOIN_ANYCAST) in do_ipv6_setsockopt()
863 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
871 if (in_compat_syscall()) in do_ipv6_setsockopt()
885 if (in_compat_syscall()) in do_ipv6_setsockopt()
892 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
897 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
903 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
905 if (val < IPV6_PMTUDISC_DONT || val > IPV6_PMTUDISC_OMIT) in do_ipv6_setsockopt()
911 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
913 if (val && val < IPV6_MIN_MTU) in do_ipv6_setsockopt()
919 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
922 if (!val) in do_ipv6_setsockopt()
927 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
938 if (!ns_capable(net->user_ns, CAP_NET_ADMIN)) in do_ipv6_setsockopt()
944 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
949 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
951 if (val < 0 || val > 255) in do_ipv6_setsockopt()
970 if (optlen < sizeof(int)) in do_ipv6_setsockopt()
972 if (val < 0 || val > 1) in do_ipv6_setsockopt()
980 if (needs_rtnl) in do_ipv6_setsockopt()
987 if (needs_rtnl) in do_ipv6_setsockopt()
997 if (level == SOL_IP && sk->sk_type != SOCK_RAW) in ipv6_setsockopt()
1000 if (level != SOL_IPV6) in ipv6_setsockopt()
1006 if (err == -ENOPROTOOPT && optname != IPV6_IPSEC_POLICY && in ipv6_setsockopt()
1019 if (!opt) in ipv6_getsockopt_sticky()
1039 if (!hdr) in ipv6_getsockopt_sticky()
1043 if (copy_to_user(optval, hdr, len)) in ipv6_getsockopt_sticky()
1057 if (len < size0) in ipv6_get_msfilter()
1059 if (copy_from_user(&gsf, p, size0)) in ipv6_get_msfilter()
1061 if (gsf.gf_group.ss_family != AF_INET6) in ipv6_get_msfilter()
1066 if (!err) { in ipv6_get_msfilter()
1067 if (num > gsf.gf_numsrc) in ipv6_get_msfilter()
1069 if (put_user(GROUP_FILTER_SIZE(num), optlen) || in ipv6_get_msfilter()
1087 if (get_user(len, optlen)) in compat_ipv6_get_msfilter()
1089 if (len < size0) in compat_ipv6_get_msfilter()
1092 if (copy_from_user(&gf32, p, size0)) in compat_ipv6_get_msfilter()
1099 if (gf.gf_group.ss_family != AF_INET6) in compat_ipv6_get_msfilter()
1105 if (err) in compat_ipv6_get_msfilter()
1107 if (num > gf.gf_numsrc) in compat_ipv6_get_msfilter()
1110 if (put_user(len, optlen) || in compat_ipv6_get_msfilter()
1124 if (ip6_mroute_opt(optname)) in do_ipv6_getsockopt()
1127 if (get_user(len, optlen)) in do_ipv6_getsockopt()
1131 if (sk->sk_protocol != IPPROTO_UDP && in do_ipv6_getsockopt()
1135 if (sk->sk_state != TCP_ESTABLISHED) in do_ipv6_getsockopt()
1140 if (in_compat_syscall()) in do_ipv6_getsockopt()
1148 if (sk->sk_type != SOCK_STREAM) in do_ipv6_getsockopt()
1158 if (skb) in do_ipv6_getsockopt()
1161 if (!skb) { in do_ipv6_getsockopt()
1162 if (np->rxopt.bits.rxinfo) { in do_ipv6_getsockopt()
1169 if (np->rxopt.bits.rxhlim) { in do_ipv6_getsockopt()
1173 if (np->rxopt.bits.rxtclass) { in do_ipv6_getsockopt()
1178 if (np->rxopt.bits.rxoinfo) { in do_ipv6_getsockopt()
1186 if (np->rxopt.bits.rxohlim) { in do_ipv6_getsockopt()
1190 if (np->rxopt.bits.rxflow) { in do_ipv6_getsockopt()
1206 if (dst) in do_ipv6_getsockopt()
1209 if (!val) in do_ipv6_getsockopt()
1254 /* check if ipv6_getsockopt_sticky() returns err code */ in do_ipv6_getsockopt()
1255 if (len < 0) in do_ipv6_getsockopt()
1297 if (len < sizeof(mtuinfo)) in do_ipv6_getsockopt()
1305 if (dst) in do_ipv6_getsockopt()
1308 if (!mtuinfo.ip6m_mtu) in do_ipv6_getsockopt()
1311 if (put_user(len, optlen)) in do_ipv6_getsockopt()
1313 if (copy_to_user(optval, &mtuinfo, len)) in do_ipv6_getsockopt()
1336 if (optname == IPV6_UNICAST_HOPS) in do_ipv6_getsockopt()
1341 if (val < 0) { in do_ipv6_getsockopt()
1344 if (dst) in do_ipv6_getsockopt()
1349 if (val < 0) in do_ipv6_getsockopt()
1387 if (len < sizeof(freq)) in do_ipv6_getsockopt()
1390 if (copy_from_user(&freq, optval, sizeof(freq))) in do_ipv6_getsockopt()
1393 if (freq.flr_action != IPV6_FL_A_GET) in do_ipv6_getsockopt()
1402 if (val < 0) in do_ipv6_getsockopt()
1405 if (put_user(len, optlen)) in do_ipv6_getsockopt()
1407 if (copy_to_user(optval, &freq, len)) in do_ipv6_getsockopt()
1416 if (np->srcprefs & IPV6_PREFER_SRC_TMP) in do_ipv6_getsockopt()
1418 else if (np->srcprefs & IPV6_PREFER_SRC_PUBLIC) in do_ipv6_getsockopt()
1425 if (np->srcprefs & IPV6_PREFER_SRC_COA) in do_ipv6_getsockopt()
1459 if (put_user(len, optlen)) in do_ipv6_getsockopt()
1461 if (copy_to_user(optval, &val, len)) in do_ipv6_getsockopt()
1471 if (level == SOL_IP && sk->sk_type != SOCK_RAW) in ipv6_getsockopt()
1474 if (level != SOL_IPV6) in ipv6_getsockopt()
1480 if (err == -ENOPROTOOPT && optname != IPV6_2292PKTOPTIONS) { in ipv6_getsockopt()
1483 if (get_user(len, optlen)) in ipv6_getsockopt()
1487 if (err >= 0) in ipv6_getsockopt()