Lines Matching refs:mreq
691 struct ip_mreqn mreq;
705 if (copy_from_user(&mreq, optval, sizeof(mreq)))
708 memset(&mreq, 0, sizeof(mreq));
710 if (copy_from_user(&mreq, optval,
714 if (copy_from_user(&mreq.imr_address, optval,
720 if (!mreq.imr_ifindex) {
721 if (mreq.imr_address.s_addr == htonl(INADDR_ANY)) {
727 dev = ip_dev_find(sock_net(sk), mreq.imr_address.s_addr);
729 mreq.imr_ifindex = dev->ifindex;
731 dev = dev_get_by_index(sock_net(sk), mreq.imr_ifindex);
741 mreq.imr_ifindex != sk->sk_bound_dev_if)
744 inet->mc_index = mreq.imr_ifindex;
745 inet->mc_addr = mreq.imr_address.s_addr;
753 struct ip_mreqn mreq;
763 if (copy_from_user(&mreq, optval, sizeof(mreq)))
766 memset(&mreq, 0, sizeof(mreq));
767 if (copy_from_user(&mreq, optval, sizeof(struct ip_mreq)))
772 err = ip_mc_join_group(sk, &mreq);
774 err = ip_mc_leave_group(sk, &mreq);
834 struct ip_mreqn mreq;
836 mreq.imr_multiaddr.s_addr = mreqs.imr_multiaddr;
837 mreq.imr_address.s_addr = mreqs.imr_interface;
838 mreq.imr_ifindex = 0;
839 err = ip_mc_join_group(sk, &mreq);
856 struct ip_mreqn mreq;
866 memset(&mreq, 0, sizeof(mreq));
867 mreq.imr_multiaddr = psin->sin_addr;
868 mreq.imr_ifindex = greq.gr_interface;
871 err = ip_mc_join_group(sk, &mreq);
873 err = ip_mc_leave_group(sk, &mreq);
910 struct ip_mreqn mreq;
913 mreq.imr_multiaddr = psin->sin_addr;
914 mreq.imr_address.s_addr = 0;
915 mreq.imr_ifindex = greqs.gsr_interface;
916 err = ip_mc_join_group(sk, &mreq);
919 greqs.gsr_interface = mreq.imr_ifindex;