Lines Matching defs:mfc
46 int rde_select_ds_ifs(struct mfc *, struct iface *);
199 struct mfc mfc;
261 if (imsg.hdr.len - IMSG_HEADER_SIZE != sizeof(mfc))
263 memcpy(&mfc, imsg.data, sizeof(mfc));
266 mfc.ttls[i] = 0;
269 if (rde_select_ds_ifs(&mfc, iface))
270 mfc.ttls[iface->ifindex] = 1;
273 mfc_update(&mfc);
277 if (imsg.hdr.len - IMSG_HEADER_SIZE != sizeof(mfc))
279 memcpy(&mfc, imsg.data, sizeof(mfc));
281 mfc_delete(&mfc);
285 if (imsg.hdr.len - IMSG_HEADER_SIZE != sizeof(mfc))
287 memcpy(&mfc, imsg.data, sizeof(mfc));
289 iface = if_find_index(mfc.ifindex);
295 rde_group_list_add(iface, mfc.group);
298 if (imsg.hdr.len - IMSG_HEADER_SIZE != sizeof(mfc))
300 memcpy(&mfc, imsg.data, sizeof(mfc));
302 iface = if_find_index(mfc.ifindex);
308 rde_group_list_remove(iface, mfc.group);
347 rde_select_ds_ifs(struct mfc *mfc, struct iface *iface)
351 if (mfc->ifindex == iface->ifindex)
354 if (rde_group_list_find(iface, mfc->group))
357 rn = rt_match_origin(mfc->origin.s_addr);
360 "the origin %s", inet_ntoa(mfc->origin));