Lines Matching defs:mfc
345 struct mfc6_cache *mfc;
350 list_for_each_entry(mfc, it->cache, list)
352 return mfc;
358 list_for_each_entry(mfc, it->cache, list)
360 return mfc;
494 struct mfc6_cache *mfc = v;
504 if (mfc->list.next != it->cache)
505 return list_entry(mfc->list.next, struct mfc6_cache, list);
556 const struct mfc6_cache *mfc = v;
561 &mfc->mf6c_mcastgrp, &mfc->mf6c_origin,
562 mfc->mf6c_parent);
566 mfc->mfc_un.res.pkt,
567 mfc->mfc_un.res.bytes,
568 mfc->mfc_un.res.wrong_if);
569 for (n = mfc->mfc_un.res.minvif;
570 n < mfc->mfc_un.res.maxvif; n++) {
572 mfc->mfc_un.res.ttls[n] < 255)
575 n, mfc->mfc_un.res.ttls[n]);
1272 static int ip6mr_mfc_delete(struct mr6_table *mrt, struct mf6cctl *mfc)
1277 line = MFC6_HASH(&mfc->mf6cc_mcastgrp.sin6_addr, &mfc->mf6cc_origin.sin6_addr);
1280 if (ipv6_addr_equal(&c->mf6c_origin, &mfc->mf6cc_origin.sin6_addr) &&
1281 ipv6_addr_equal(&c->mf6c_mcastgrp, &mfc->mf6cc_mcastgrp.sin6_addr)) {
1414 struct mf6cctl *mfc, int mrtsock)
1422 if (mfc->mf6cc_parent >= MAXMIFS)
1427 if (IF_ISSET(i, &mfc->mf6cc_ifset))
1432 line = MFC6_HASH(&mfc->mf6cc_mcastgrp.sin6_addr, &mfc->mf6cc_origin.sin6_addr);
1435 if (ipv6_addr_equal(&c->mf6c_origin, &mfc->mf6cc_origin.sin6_addr) &&
1436 ipv6_addr_equal(&c->mf6c_mcastgrp, &mfc->mf6cc_mcastgrp.sin6_addr)) {
1444 c->mf6c_parent = mfc->mf6cc_parent;
1452 if (!ipv6_addr_is_multicast(&mfc->mf6cc_mcastgrp.sin6_addr))
1459 c->mf6c_origin = mfc->mf6cc_origin.sin6_addr;
1460 c->mf6c_mcastgrp = mfc->mf6cc_mcastgrp.sin6_addr;
1461 c->mf6c_parent = mfc->mf6cc_parent;
1610 struct mf6cctl mfc;
1665 if (optlen < sizeof(mfc))
1667 if (copy_from_user(&mfc, optval, sizeof(mfc)))
1671 ret = ip6mr_mfc_delete(mrt, &mfc);
1673 ret = ip6mr_mfc_add(net, mrt, &mfc, sk == mrt->mroute6_sk);
2221 struct mfc6_cache *mfc;
2237 list_for_each_entry(mfc, &mrt->mfc6_cache_array[h], list) {
2243 mfc) < 0)