Lines Matching full:mfc
90 static void mr6_netlink_event(struct mr_table *mrt, struct mfc6_cache *mfc,
479 const struct mfc6_cache *mfc = v; in ipmr_mfc_seq_show() local
484 &mfc->mf6c_mcastgrp, &mfc->mf6c_origin, in ipmr_mfc_seq_show()
485 mfc->_c.mfc_parent); in ipmr_mfc_seq_show()
489 mfc->_c.mfc_un.res.pkt, in ipmr_mfc_seq_show()
490 mfc->_c.mfc_un.res.bytes, in ipmr_mfc_seq_show()
491 mfc->_c.mfc_un.res.wrong_if); in ipmr_mfc_seq_show()
492 for (n = mfc->_c.mfc_un.res.minvif; in ipmr_mfc_seq_show()
493 n < mfc->_c.mfc_un.res.maxvif; n++) { in ipmr_mfc_seq_show()
495 mfc->_c.mfc_un.res.ttls[n] < 255) in ipmr_mfc_seq_show()
498 mfc->_c.mfc_un.res.ttls[n]); in ipmr_mfc_seq_show()
688 struct mfc6_cache *mfc, u32 tb_id) in call_ip6mr_mfc_entry_notifiers() argument
691 &mfc->_c, tb_id, &net->ipv6.ipmr_seq); in call_ip6mr_mfc_entry_notifiers()
1211 static int ip6mr_mfc_delete(struct mr_table *mrt, struct mf6cctl *mfc, in ip6mr_mfc_delete() argument
1218 c = ip6mr_cache_find_parent(mrt, &mfc->mf6cc_origin.sin6_addr, in ip6mr_mfc_delete()
1219 &mfc->mf6cc_mcastgrp.sin6_addr, parent); in ip6mr_mfc_delete()
1407 struct mf6cctl *mfc, int mrtsock, int parent) in ip6mr_mfc_add() argument
1415 if (mfc->mf6cc_parent >= MAXMIFS) in ip6mr_mfc_add()
1420 if (IF_ISSET(i, &mfc->mf6cc_ifset)) in ip6mr_mfc_add()
1426 c = ip6mr_cache_find_parent(mrt, &mfc->mf6cc_origin.sin6_addr, in ip6mr_mfc_add()
1427 &mfc->mf6cc_mcastgrp.sin6_addr, parent); in ip6mr_mfc_add()
1431 c->_c.mfc_parent = mfc->mf6cc_parent; in ip6mr_mfc_add()
1442 if (!ipv6_addr_any(&mfc->mf6cc_mcastgrp.sin6_addr) && in ip6mr_mfc_add()
1443 !ipv6_addr_is_multicast(&mfc->mf6cc_mcastgrp.sin6_addr)) in ip6mr_mfc_add()
1450 c->mf6c_origin = mfc->mf6cc_origin.sin6_addr; in ip6mr_mfc_add()
1451 c->mf6c_mcastgrp = mfc->mf6cc_mcastgrp.sin6_addr; in ip6mr_mfc_add()
1452 c->_c.mfc_parent = mfc->mf6cc_parent; in ip6mr_mfc_add()
1637 struct mf6cctl mfc; in ip6_mroute_setsockopt() local
1699 if (optlen < sizeof(mfc)) in ip6_mroute_setsockopt()
1701 if (copy_from_sockptr(&mfc, optval, sizeof(mfc))) in ip6_mroute_setsockopt()
1704 parent = mfc.mf6cc_parent; in ip6_mroute_setsockopt()
1707 ret = ip6mr_mfc_delete(mrt, &mfc, parent); in ip6_mroute_setsockopt()
1709 ret = ip6mr_mfc_add(net, mrt, &mfc, in ip6_mroute_setsockopt()
2399 static void mr6_netlink_event(struct mr_table *mrt, struct mfc6_cache *mfc, in mr6_netlink_event() argument
2406 skb = nlmsg_new(mr6_msgsize(mfc->_c.mfc_parent >= MAXMIFS, mrt->maxvif), in mr6_netlink_event()
2411 err = ip6mr_fill_mroute(mrt, skb, 0, 0, mfc, cmd, 0); in mr6_netlink_event()