Lines Matching refs:msfr

1730 	struct __msfilterreq64  msfr = {}, msfr64;  in inp_get_source_filters()  local
1759 memcpy(&msfr, &msfr64, sizeof(msfr64)); in inp_get_source_filters()
1768 memcpy(&msfr, &msfr32, sizeof(msfr32)); in inp_get_source_filters()
1772 if (msfr.msfr_ifindex == 0 || (u_int)if_index < msfr.msfr_ifindex) { in inp_get_source_filters()
1777 ifp = ifindex2ifnet[msfr.msfr_ifindex]; in inp_get_source_filters()
1784 if ((size_t) msfr.msfr_nsrcs > in inp_get_source_filters()
1786 msfr.msfr_nsrcs = UINT32_MAX / sizeof(struct sockaddr_storage); in inp_get_source_filters()
1789 if (msfr.msfr_nsrcs > in_mcast_maxsocksrc) { in inp_get_source_filters()
1790 msfr.msfr_nsrcs = in_mcast_maxsocksrc; in inp_get_source_filters()
1797 gsa = (struct sockaddr_in *)&msfr.msfr_group; in inp_get_source_filters()
1813 msfr.msfr_fmode = imf->imf_st[1]; in inp_get_source_filters()
1830 if (tmp_ptr != USER_ADDR_NULL && msfr.msfr_nsrcs > 0) { in inp_get_source_filters()
1831 tss = kalloc_data((size_t)msfr.msfr_nsrcs * sizeof(*tss), in inp_get_source_filters()
1843 nsrcs = msfr.msfr_nsrcs; in inp_get_source_filters()
1868 kfree_data(tss, (size_t)msfr.msfr_nsrcs * sizeof(*tss)); in inp_get_source_filters()
1874 msfr.msfr_nsrcs = ncsrcs; in inp_get_source_filters()
1876 msfr64.msfr_ifindex = msfr.msfr_ifindex; in inp_get_source_filters()
1877 msfr64.msfr_fmode = msfr.msfr_fmode; in inp_get_source_filters()
1878 msfr64.msfr_nsrcs = msfr.msfr_nsrcs; in inp_get_source_filters()
1879 memcpy(&msfr64.msfr_group, &msfr.msfr_group, in inp_get_source_filters()
1884 msfr32.msfr_ifindex = msfr.msfr_ifindex; in inp_get_source_filters()
1885 msfr32.msfr_fmode = msfr.msfr_fmode; in inp_get_source_filters()
1886 msfr32.msfr_nsrcs = msfr.msfr_nsrcs; in inp_get_source_filters()
1887 memcpy(&msfr32.msfr_group, &msfr.msfr_group, in inp_get_source_filters()
2772 struct __msfilterreq64 msfr = {}, msfr64; in inp_set_source_filters() local
2796 memcpy(&msfr, &msfr64, sizeof(msfr64)); in inp_set_source_filters()
2805 memcpy(&msfr, &msfr32, sizeof(msfr32)); in inp_set_source_filters()
2808 if ((size_t) msfr.msfr_nsrcs > in inp_set_source_filters()
2810 msfr.msfr_nsrcs = UINT32_MAX / sizeof(struct sockaddr_storage); in inp_set_source_filters()
2813 if (msfr.msfr_nsrcs > in_mcast_maxsocksrc) { in inp_set_source_filters()
2817 if ((msfr.msfr_fmode != MCAST_EXCLUDE && in inp_set_source_filters()
2818 msfr.msfr_fmode != MCAST_INCLUDE)) { in inp_set_source_filters()
2822 if (msfr.msfr_group.ss_family != AF_INET || in inp_set_source_filters()
2823 msfr.msfr_group.ss_len != sizeof(struct sockaddr_in)) { in inp_set_source_filters()
2827 gsa = (struct sockaddr_in *)&msfr.msfr_group; in inp_set_source_filters()
2835 if (msfr.msfr_ifindex == 0 || (u_int)if_index < msfr.msfr_ifindex) { in inp_set_source_filters()
2840 ifp = ifindex2ifnet[msfr.msfr_ifindex]; in inp_set_source_filters()
2867 imf->imf_st[1] = (uint8_t)msfr.msfr_fmode; in inp_set_source_filters()
2875 if (msfr.msfr_nsrcs > 0) { in inp_set_source_filters()
2888 __func__, (unsigned long)msfr.msfr_nsrcs)); in inp_set_source_filters()
2889 kss = kalloc_data((size_t)msfr.msfr_nsrcs * sizeof(*kss), Z_WAITOK); in inp_set_source_filters()
2895 (size_t) msfr.msfr_nsrcs * sizeof(*kss)); in inp_set_source_filters()
2897 kfree_data(kss, (size_t)msfr.msfr_nsrcs * sizeof(*kss)); in inp_set_source_filters()
2907 imf->imf_st[1] = (uint8_t)msfr.msfr_fmode; in inp_set_source_filters()
2920 for (i = 0, pkss = kss; (u_int)i < msfr.msfr_nsrcs; in inp_set_source_filters()
2937 kfree_data(kss, (size_t)msfr.msfr_nsrcs * sizeof(*kss)); in inp_set_source_filters()