Lines Matching refs:mne

3701 	struct mac_nat_entry    *mne;  in bridge_mac_nat_entry_out()  local
3705 LIST_FOREACH(mne, list, mne_list) { in bridge_mac_nat_entry_out()
3710 "%s", mne->mne_bif->bif_ifp->if_xname); in bridge_mac_nat_entry_out()
3711 memcpy(ifbmne.ifbmne_mac, mne->mne_mac, in bridge_mac_nat_entry_out()
3714 if (now < mne->mne_expire) { in bridge_mac_nat_entry_out()
3715 ifbmne.ifbmne_expire = mne->mne_expire - now; in bridge_mac_nat_entry_out()
3719 if ((mne->mne_flags & MNE_FLAGS_IPV6) != 0) { in bridge_mac_nat_entry_out()
3721 ifbmne.ifbmne_ip6_addr = mne->mne_ip6; in bridge_mac_nat_entry_out()
3724 ifbmne.ifbmne_ip_addr = mne->mne_ip; in bridge_mac_nat_entry_out()
3754 struct mac_nat_entry *mne; in bridge_ioctl_gmnelist() local
3760 LIST_FOREACH(mne, &sc->sc_mne_list, mne_list) { in bridge_ioctl_gmnelist()
3763 LIST_FOREACH(mne, &sc->sc_mne_list_v6, mne_list) { in bridge_ioctl_gmnelist()
7629 mac_nat_entry_print2(struct mac_nat_entry *mne,
7637 af = ((mne->mne_flags & MNE_FLAGS_IPV6) != 0) ? AF_INET6 : AF_INET;
7638 ether_ntop(etopbuf, sizeof(etopbuf), mne->mne_mac);
7639 (void)inet_ntop(af, &mne->mne_u, ntopbuf, sizeof(ntopbuf));
7648 ifname, msg1, space, msg2, mne, mne->mne_bif->bif_ifp->if_xname,
7653 mac_nat_entry_print(struct mac_nat_entry *mne,
7656 mac_nat_entry_print2(mne, ifname, msg, NULL);
7662 struct mac_nat_entry *mne;
7668 LIST_FOREACH(mne, &sc->sc_mne_list, mne_list) {
7669 if (mne->mne_ip.s_addr == s_addr) {
7671 mac_nat_entry_print(mne, sc->sc_if_xname,
7674 ret_mne = mne;
7681 LIST_FOREACH(mne, &sc->sc_mne_list_v6, mne_list) {
7682 if (IN6_ARE_ADDR_EQUAL(&mne->mne_ip6, ip6)) {
7684 mac_nat_entry_print(mne, sc->sc_if_xname,
7687 ret_mne = mne;
7697 struct mac_nat_entry *mne, const char *reason)
7699 LIST_REMOVE(mne, mne_list);
7701 mac_nat_entry_print(mne, sc->sc_if_xname, reason);
7703 zfree(bridge_mne_pool, mne);
7712 struct mac_nat_entry *mne;
7718 mne = zalloc_noblock(bridge_mne_pool);
7719 if (mne == NULL) {
7724 bzero(mne, sizeof(*mne));
7725 bcopy(eaddr, mne->mne_mac, sizeof(mne->mne_mac));
7726 mne->mne_bif = bif;
7728 bcopy(ip, &mne->mne_ip, sizeof(mne->mne_ip));
7731 bcopy(ip, &mne->mne_ip6, sizeof(mne->mne_ip6));
7732 mne->mne_flags |= MNE_FLAGS_IPV6;
7735 LIST_INSERT_HEAD(list, mne, mne_list);
7736 mne->mne_expire = (unsigned long)net_uptime() + sc->sc_brttimeout;
7738 mac_nat_entry_print(mne, sc->sc_if_xname, "created");
7740 return mne;
7747 struct mac_nat_entry *mne;
7749 mne = bridge_lookup_mac_nat_entry(sc, af, ip);
7750 if (mne != NULL) {
7753 if (mne->mne_bif == mac_nat_bif) {
7756 if (mne->mne_bif != bif) {
7757 mac_nat_entry_print2(mne,
7762 } else if (mne->mne_bif != bif) {
7763 const char *old_if = mne->mne_bif->bif_ifp->if_xname;
7765 mne->mne_bif = bif;
7767 mac_nat_entry_print2(mne,
7771 bcopy(eaddr, mne->mne_mac, sizeof(mne->mne_mac));
7773 mne->mne_expire = (unsigned long)net_uptime() +
7776 mne = bridge_create_mac_nat_entry(sc, bif, af, ip, eaddr);
7778 return mne;
7785 struct mac_nat_entry *mne;
7788 LIST_FOREACH_SAFE(mne, list, mne_list, tmne) {
7789 if (bif != NULL && mne->mne_bif != bif) {
7792 bridge_destroy_mac_nat_entry(sc, mne, "flushed");
7874 struct mac_nat_entry *mne;
7877 LIST_FOREACH_SAFE(mne, list, mne_list, tmne) {
7878 if (now >= mne->mne_expire) {
7879 bridge_destroy_mac_nat_entry(sc, mne, "aged out");
7971 struct mac_nat_entry *mne = NULL;
7991 mne = bridge_lookup_mac_nat_entry(sc, AF_INET, &tpa);
7993 if (mne != NULL) {
8003 mne->mne_mac);
8007 mne->mne_bif->bif_ifp->if_xname,
8010 bcopy(mne->mne_mac, ea->arp_tha, sizeof(ea->arp_tha));
8019 mne = bridge_lookup_mac_nat_entry(sc, AF_INET, &spa);
8024 return mne;
8034 struct mac_nat_entry *mne = NULL;
8056 mne = bridge_update_mac_nat_entry(sc, bif, AF_INET, &ip, ea->arp_sha);
8057 if (mnr != NULL && mne != NULL) {
8129 struct mac_nat_entry *mne = NULL;
8141 mne = bridge_lookup_mac_nat_entry(sc, AF_INET, &dst);
8143 return mne;
8211 struct mac_nat_entry *mne = NULL;
8227 mne = bridge_update_mac_nat_entry(sc, bif, AF_INET, &ip,
8474 struct mac_nat_entry *mne = NULL;
8486 mne = bridge_lookup_mac_nat_entry(sc, AF_INET6, &dst);
8489 return mne;
8551 struct mac_nat_entry *mne = NULL;
8561 mne = bridge_mac_nat_arp_input(sc, data);
8565 mne = bridge_mac_nat_ip_input(sc, data);
8570 mne = bridge_mac_nat_ipv6_input(sc, data);
8576 if (mne != NULL) {
8582 bcopy(mne->mne_mac, eh->ether_dhost,
8585 dst_if = mne->mne_bif->bif_ifp;
8586 *is_input = (mne->mne_bif == sc->sc_mac_nat_bif);