| /freebsd-12.1/sys/netinet/ |
| H A D | in_mcast.c | 1592 imo = malloc(sizeof(*imo), M_IPMOPTS, M_WAITOK); in inp_findmoptions() 1603 free(imo, M_IPMOPTS); in inp_findmoptions() 1607 return (imo); in inp_findmoptions() 1632 free(imo, M_IPMOPTS); in inp_gcmoptions() 1644 if (imo == NULL) in inp_freemoptions() 1646 inp_gcmoptions(imo); in inp_freemoptions() 1798 if (imo != NULL) in inp_getmoptions() 1808 if (imo != NULL) { in inp_getmoptions() 1833 if (imo == NULL) in inp_getmoptions() 1845 if (imo == NULL) in inp_getmoptions() [all …]
|
| H A D | ip_output.c | 215 struct ip_moptions *imo, struct inpcb *inp) in ip_output() argument 348 imo != NULL && imo->imo_multicast_ifp != NULL) { in ip_output() 353 ifp = imo->imo_multicast_ifp; in ip_output() 426 if (imo != NULL) { in ip_output() 427 ip->ip_ttl = imo->imo_multicast_ttl; in ip_output() 428 if (imo->imo_multicast_vif != -1) in ip_output() 438 if ((imo == NULL) || (imo->imo_multicast_vif == -1)) { in ip_output() 455 if ((imo == NULL && in_mcast_loop) || in ip_output() 456 (imo && imo->imo_multicast_loop)) { in ip_output() 486 imo = NULL; in ip_output() [all …]
|
| H A D | ip_carp.c | 1369 struct ip_moptions *imo = &cif->cif_imo; in carp_multicast_setup() local 1373 if (ip_mfilter_first(&imo->imo_head) != NULL) in carp_multicast_setup() 1377 ip_mfilter_init(&imo->imo_head); in carp_multicast_setup() 1378 imo->imo_multicast_vif = -1; in carp_multicast_setup() 1387 ip_mfilter_insert(&imo->imo_head, imf); in carp_multicast_setup() 1388 imo->imo_multicast_ifp = ifp; in carp_multicast_setup() 1389 imo->imo_multicast_ttl = CARP_DFLTTL; in carp_multicast_setup() 1390 imo->imo_multicast_loop = 0; in carp_multicast_setup() 1463 struct ip_moptions *imo = &cif->cif_imo; in carp_multicast_cleanup() local 1478 while ((imf = ip_mfilter_first(&imo->imo_head)) != NULL) { in carp_multicast_cleanup() [all …]
|
| H A D | in_pcb.c | 1304 struct ip_moptions *imo; in in_pcbconnect_setup() local 1307 imo = inp->inp_moptions; in in_pcbconnect_setup() 1308 if (imo->imo_multicast_ifp != NULL) { in in_pcbconnect_setup() 1309 ifp = imo->imo_multicast_ifp; in in_pcbconnect_setup() 1600 inp_freemoptions(imo); in in_pcbfree_deferred() 1782 struct ip_moptions *imo; in in_pcbpurgeif0() local 1787 imo = inp->inp_moptions; in in_pcbpurgeif0() 1789 imo != NULL) { in in_pcbpurgeif0() 1794 if (imo->imo_multicast_ifp == ifp) in in_pcbpurgeif0() 1795 imo->imo_multicast_ifp = NULL; in in_pcbpurgeif0() [all …]
|
| H A D | ip_mroute.c | 1222 struct ip_moptions *imo) in X_ip_mforward() argument 1247 if (imo && ((vifi = imo->imo_multicast_vif) < V_numvifs)) { in X_ip_mforward() 1680 struct ip_moptions imo; in send_packet() local 1685 imo.imo_multicast_ifp = vifp->v_ifp; in send_packet() 1686 imo.imo_multicast_ttl = mtod(m, struct ip *)->ip_ttl - 1; in send_packet() 1687 imo.imo_multicast_loop = 1; in send_packet() 1688 imo.imo_multicast_vif = -1; in send_packet() 1689 STAILQ_INIT(&imo.imo_head); in send_packet() 1697 error = ip_output(m, NULL, NULL, IP_FORWARDING, &imo, NULL); in send_packet()
|
| H A D | igmp.c | 3382 struct ip_moptions imo; in igmp_intr() local 3415 imo.imo_multicast_ttl = 1; in igmp_intr() 3416 imo.imo_multicast_vif = -1; in igmp_intr() 3417 imo.imo_multicast_loop = (V_ip_mrouter != NULL); in igmp_intr() 3426 imo.imo_multicast_ifp = V_loif; in igmp_intr() 3428 imo.imo_multicast_ifp = ifp; in igmp_intr() 3448 error = ip_output(m0, ipopts, NULL, 0, &imo, NULL); in igmp_intr()
|
| H A D | udp_usrreq.c | 571 struct ip_moptions *imo; in udp_input() local 575 imo = inp->inp_moptions; in udp_input() 576 if (imo == NULL) { in udp_input() 585 blocked = imo_multi_filter(imo, ifp, in udp_input()
|
| /freebsd-12.1/sys/netinet6/ |
| H A D | in6_mcast.c | 1399 struct ip6_moptions *imo; in in6p_block_unblock_source() local 1558 imo = malloc(sizeof(*imo), M_IP6MOPTS, M_WAITOK); in in6p_findmoptions() 1567 free(imo, M_IP6MOPTS); in in6p_findmoptions() 1570 inp->in6p_moptions = imo; in in6p_findmoptions() 1571 return (imo); in in6p_findmoptions() 1611 if (imo == NULL) in ip6_freemoptions() 1613 inp_gcmoptions(imo); in ip6_freemoptions() 1626 struct ip6_moptions *imo; in in6p_get_source_filters() local 1638 imo = inp->in6p_moptions; in in6p_get_source_filters() 2412 struct ip6_moptions *imo; in in6p_set_multicast_if() local [all …]
|
| H A D | udp6_usrreq.c | 302 struct ip6_moptions *imo; in udp6_input() local 353 imo = inp->in6p_moptions; in udp6_input() 354 if (imo && IN6_IS_ADDR_MULTICAST(&ip6->ip6_dst)) { in udp6_input() 369 blocked = im6o_mc_filter(imo, ifp, in udp6_input()
|
| /freebsd-12.1/sys/netpfil/pf/ |
| H A D | if_pfsync.c | 2354 struct ip_moptions *imo = &sc->sc_imo; in pfsync_multicast_setup() local 2360 imo->imo_multicast_vif = -1; in pfsync_multicast_setup() 2366 ip_mfilter_init(&imo->imo_head); in pfsync_multicast_setup() 2367 ip_mfilter_insert(&imo->imo_head, imf); in pfsync_multicast_setup() 2368 imo->imo_multicast_ifp = ifp; in pfsync_multicast_setup() 2369 imo->imo_multicast_ttl = PFSYNC_DFLTTL; in pfsync_multicast_setup() 2370 imo->imo_multicast_loop = 0; in pfsync_multicast_setup() 2378 struct ip_moptions *imo = &sc->sc_imo; in pfsync_multicast_cleanup() local 2381 while ((imf = ip_mfilter_first(&imo->imo_head)) != NULL) { in pfsync_multicast_cleanup() 2382 ip_mfilter_remove(&imo->imo_head, imf); in pfsync_multicast_cleanup() [all …]
|