Lines Matching refs:mreq
668 struct ip_mreqn mreq;
682 if (copy_from_user(&mreq, optval, sizeof(mreq)))
685 memset(&mreq, 0, sizeof(mreq));
687 if (copy_from_user(&mreq, optval,
691 if (copy_from_user(&mreq.imr_address, optval,
697 if (!mreq.imr_ifindex) {
698 if (mreq.imr_address.s_addr == htonl(INADDR_ANY)) {
704 dev = ip_dev_find(sock_net(sk), mreq.imr_address.s_addr);
706 mreq.imr_ifindex = dev->ifindex;
708 dev = dev_get_by_index(sock_net(sk), mreq.imr_ifindex);
718 mreq.imr_ifindex != sk->sk_bound_dev_if)
721 inet->mc_index = mreq.imr_ifindex;
722 inet->mc_addr = mreq.imr_address.s_addr;
730 struct ip_mreqn mreq;
740 if (copy_from_user(&mreq, optval, sizeof(mreq)))
743 memset(&mreq, 0, sizeof(mreq));
744 if (copy_from_user(&mreq, optval, sizeof(struct ip_mreq)))
749 err = ip_mc_join_group(sk, &mreq);
751 err = ip_mc_leave_group(sk, &mreq);
811 struct ip_mreqn mreq;
813 mreq.imr_multiaddr.s_addr = mreqs.imr_multiaddr;
814 mreq.imr_address.s_addr = mreqs.imr_interface;
815 mreq.imr_ifindex = 0;
816 err = ip_mc_join_group(sk, &mreq);
833 struct ip_mreqn mreq;
843 memset(&mreq, 0, sizeof(mreq));
844 mreq.imr_multiaddr = psin->sin_addr;
845 mreq.imr_ifindex = greq.gr_interface;
848 err = ip_mc_join_group(sk, &mreq);
850 err = ip_mc_leave_group(sk, &mreq);
887 struct ip_mreqn mreq;
890 mreq.imr_multiaddr = psin->sin_addr;
891 mreq.imr_address.s_addr = 0;
892 mreq.imr_ifindex = greqs.gsr_interface;
893 err = ip_mc_join_group(sk, &mreq);
896 greqs.gsr_interface = mreq.imr_ifindex;