Lines Matching defs:mfc
112 static void mroute_netlink_event(struct mr_table *mrt, struct mfc_cache *mfc,
654 struct mfc_cache *mfc, u32 tb_id)
657 &mfc->_c, tb_id, &net->ipv4.ipmr_seq);
1194 static int ipmr_mfc_delete(struct mr_table *mrt, struct mfcctl *mfc, int parent)
1201 c = ipmr_cache_find_parent(mrt, mfc->mfcc_origin.s_addr,
1202 mfc->mfcc_mcastgrp.s_addr, parent);
1216 struct mfcctl *mfc, int mrtsock, int parent)
1223 if (mfc->mfcc_parent >= MAXVIFS)
1228 c = ipmr_cache_find_parent(mrt, mfc->mfcc_origin.s_addr,
1229 mfc->mfcc_mcastgrp.s_addr, parent);
1233 c->_c.mfc_parent = mfc->mfcc_parent;
1234 ipmr_update_thresholds(mrt, &c->_c, mfc->mfcc_ttls);
1244 if (mfc->mfcc_mcastgrp.s_addr != htonl(INADDR_ANY) &&
1245 !ipv4_is_multicast(mfc->mfcc_mcastgrp.s_addr))
1252 c->mfc_origin = mfc->mfcc_origin.s_addr;
1253 c->mfc_mcastgrp = mfc->mfcc_mcastgrp.s_addr;
1254 c->_c.mfc_parent = mfc->mfcc_parent;
1255 ipmr_update_thresholds(mrt, &c->_c, mfc->mfcc_ttls);
1382 struct mfcctl mfc;
1471 if (optlen != sizeof(mfc)) {
1475 if (copy_from_sockptr(&mfc, optval, sizeof(mfc))) {
1480 parent = mfc.mfcc_parent;
1482 ret = ipmr_mfc_delete(mrt, &mfc, parent);
1484 ret = ipmr_mfc_add(net, mrt, &mfc,
2534 static void mroute_netlink_event(struct mr_table *mrt, struct mfc_cache *mfc,
2541 skb = nlmsg_new(mroute_msgsize(mfc->_c.mfc_parent >= MAXVIFS,
2547 err = ipmr_fill_mroute(mrt, skb, 0, 0, mfc, cmd, 0);
3139 const struct mfc_cache *mfc = v;
3144 (__force u32) mfc->mfc_mcastgrp,
3145 (__force u32) mfc->mfc_origin,
3146 mfc->_c.mfc_parent);
3150 atomic_long_read(&mfc->_c.mfc_un.res.pkt),
3151 atomic_long_read(&mfc->_c.mfc_un.res.bytes),
3152 atomic_long_read(&mfc->_c.mfc_un.res.wrong_if));
3153 for (n = mfc->_c.mfc_un.res.minvif;
3154 n < mfc->_c.mfc_un.res.maxvif; n++) {
3156 mfc->_c.mfc_un.res.ttls[n] < 255)
3159 n, mfc->_c.mfc_un.res.ttls[n]);