Lines Matching refs:mreq
807 struct ip_mreqn mreq; in do_ip_setsockopt() local
821 if (copy_from_user(&mreq, optval, sizeof(mreq))) in do_ip_setsockopt()
824 memset(&mreq, 0, sizeof(mreq)); in do_ip_setsockopt()
826 if (copy_from_user(&mreq, optval, in do_ip_setsockopt()
830 if (copy_from_user(&mreq.imr_address, optval, in do_ip_setsockopt()
836 if (!mreq.imr_ifindex) { in do_ip_setsockopt()
837 if (mreq.imr_address.s_addr == htonl(INADDR_ANY)) { in do_ip_setsockopt()
843 dev = ip_dev_find(sock_net(sk), mreq.imr_address.s_addr); in do_ip_setsockopt()
845 mreq.imr_ifindex = dev->ifindex; in do_ip_setsockopt()
847 dev = dev_get_by_index(sock_net(sk), mreq.imr_ifindex); in do_ip_setsockopt()
857 mreq.imr_ifindex != sk->sk_bound_dev_if) in do_ip_setsockopt()
860 inet->mc_index = mreq.imr_ifindex; in do_ip_setsockopt()
861 inet->mc_addr = mreq.imr_address.s_addr; in do_ip_setsockopt()
869 struct ip_mreqn mreq; in do_ip_setsockopt() local
879 if (copy_from_user(&mreq, optval, sizeof(mreq))) in do_ip_setsockopt()
882 memset(&mreq, 0, sizeof(mreq)); in do_ip_setsockopt()
883 if (copy_from_user(&mreq, optval, sizeof(struct ip_mreq))) in do_ip_setsockopt()
888 err = ip_mc_join_group(sk, &mreq); in do_ip_setsockopt()
890 err = ip_mc_leave_group(sk, &mreq); in do_ip_setsockopt()
950 struct ip_mreqn mreq; in do_ip_setsockopt() local
952 mreq.imr_multiaddr.s_addr = mreqs.imr_multiaddr; in do_ip_setsockopt()
953 mreq.imr_address.s_addr = mreqs.imr_interface; in do_ip_setsockopt()
954 mreq.imr_ifindex = 0; in do_ip_setsockopt()
955 err = ip_mc_join_group(sk, &mreq); in do_ip_setsockopt()
972 struct ip_mreqn mreq; in do_ip_setsockopt() local
982 memset(&mreq, 0, sizeof(mreq)); in do_ip_setsockopt()
983 mreq.imr_multiaddr = psin->sin_addr; in do_ip_setsockopt()
984 mreq.imr_ifindex = greq.gr_interface; in do_ip_setsockopt()
987 err = ip_mc_join_group(sk, &mreq); in do_ip_setsockopt()
989 err = ip_mc_leave_group(sk, &mreq); in do_ip_setsockopt()
1026 struct ip_mreqn mreq; in do_ip_setsockopt() local
1029 mreq.imr_multiaddr = psin->sin_addr; in do_ip_setsockopt()
1030 mreq.imr_address.s_addr = 0; in do_ip_setsockopt()
1031 mreq.imr_ifindex = greqs.gsr_interface; in do_ip_setsockopt()
1032 err = ip_mc_join_group(sk, &mreq); in do_ip_setsockopt()
1035 greqs.gsr_interface = mreq.imr_ifindex; in do_ip_setsockopt()