Lines Matching refs:addr

32 					     const unsigned char *addr,
35 const unsigned char *addr, u16 vid);
94 static void fdb_add_hw_addr(struct net_bridge *br, const unsigned char *addr) in fdb_add_hw_addr() argument
103 err = dev_uc_add(p->dev, addr); in fdb_add_hw_addr()
113 dev_uc_del(p->dev, addr); in fdb_add_hw_addr()
122 static void fdb_del_hw_addr(struct net_bridge *br, const unsigned char *addr) in fdb_del_hw_addr() argument
130 dev_uc_del(p->dev, addr); in fdb_del_hw_addr()
144 ether_addr_copy(fdb.addr, f->addr.addr); in fdb_del_external_learn()
151 fdb_del_hw_addr(br, f->addr.addr); in fdb_delete()
166 const unsigned char *addr = f->addr.addr; in fdb_delete_local() local
175 if (op != p && ether_addr_equal(op->dev->dev_addr, addr) && in fdb_delete_local()
186 if (p && ether_addr_equal(br->dev->dev_addr, addr) && in fdb_delete_local()
198 const unsigned char *addr, u16 vid) in br_fdb_find_delete_local() argument
200 struct hlist_head *head = &br->hash[br_mac_hash(addr, vid)]; in br_fdb_find_delete_local()
204 f = fdb_find(head, addr, vid); in br_fdb_find_delete_local()
375 const unsigned char *addr, in __br_fdb_get() argument
381 &br->hash[br_mac_hash(addr, vid)], hlist) { in __br_fdb_get()
382 if (ether_addr_equal(fdb->addr.addr, addr) && in __br_fdb_get()
396 int br_fdb_test_addr(struct net_device *dev, unsigned char *addr) in br_fdb_test_addr() argument
407 fdb = __br_fdb_get(port->br, addr, 0); in br_fdb_test_addr()
449 memcpy(fe->mac_addr, f->addr.addr, ETH_ALEN); in br_fdb_fillbuf()
470 const unsigned char *addr, in fdb_find() argument
476 if (ether_addr_equal(fdb->addr.addr, addr) && in fdb_find()
484 const unsigned char *addr, in fdb_find_rcu() argument
490 if (ether_addr_equal(fdb->addr.addr, addr) && in fdb_find_rcu()
499 const unsigned char *addr, in fdb_create() argument
508 memcpy(fdb->addr.addr, addr, ETH_ALEN); in fdb_create()
522 const unsigned char *addr, u16 vid) in fdb_insert() argument
524 struct hlist_head *head = &br->hash[br_mac_hash(addr, vid)]; in fdb_insert()
527 if (!is_valid_ether_addr(addr)) in fdb_insert()
530 fdb = fdb_find(head, addr, vid); in fdb_insert()
543 fdb = fdb_create(head, source, addr, vid, 1, 1); in fdb_insert()
547 fdb_add_hw_addr(br, addr); in fdb_insert()
554 const unsigned char *addr, u16 vid) in br_fdb_insert() argument
559 ret = fdb_insert(br, source, addr, vid); in br_fdb_insert()
565 const unsigned char *addr, u16 vid, bool added_by_user) in br_fdb_update() argument
567 struct hlist_head *head = &br->hash[br_mac_hash(addr, vid)]; in br_fdb_update()
580 fdb = fdb_find_rcu(head, addr, vid); in br_fdb_update()
602 if (likely(!fdb_find(head, addr, vid))) { in br_fdb_update()
603 fdb = fdb_create(head, source, addr, vid, 0, 0); in br_fdb_update()
652 if (nla_put(skb, NDA_LLADDR, ETH_ALEN, &fdb->addr)) in fdb_fill_info()
761 static int fdb_add_entry(struct net_bridge_port *source, const __u8 *addr, in fdb_add_entry() argument
765 struct hlist_head *head = &br->hash[br_mac_hash(addr, vid)]; in fdb_add_entry()
775 fdb = fdb_find(head, addr, vid); in fdb_add_entry()
780 fdb = fdb_create(head, source, addr, vid, 0, 0); in fdb_add_entry()
800 fdb_add_hw_addr(br, addr); in fdb_add_entry()
806 fdb_add_hw_addr(br, addr); in fdb_add_entry()
812 fdb_del_hw_addr(br, addr); in fdb_add_entry()
830 const unsigned char *addr, u16 nlh_flags, u16 vid) in __br_fdb_add() argument
837 br_fdb_update(p->br, p, addr, vid, true); in __br_fdb_add()
842 err = fdb_add_entry(p, addr, ndm->ndm_state, in __br_fdb_add()
853 const unsigned char *addr, u16 vid, u16 nlh_flags) in br_fdb_add() argument
866 if (is_zero_ether_addr(addr)) { in br_fdb_add()
893 err = br_fdb_insert(br, NULL, addr, vid); in br_fdb_add()
895 err = __br_fdb_add(ndm, p, addr, nlh_flags, vid); in br_fdb_add()
898 err = br_fdb_insert(br, NULL, addr, 0); in br_fdb_add()
900 err = __br_fdb_add(ndm, p, addr, nlh_flags, 0); in br_fdb_add()
912 err = br_fdb_insert(br, NULL, addr, v->vid); in br_fdb_add()
914 err = __br_fdb_add(ndm, p, addr, nlh_flags, in br_fdb_add()
925 static int fdb_delete_by_addr(struct net_bridge *br, const u8 *addr, in fdb_delete_by_addr() argument
928 struct hlist_head *head = &br->hash[br_mac_hash(addr, vid)]; in fdb_delete_by_addr()
931 fdb = fdb_find(head, addr, vid); in fdb_delete_by_addr()
940 const unsigned char *addr, u16 vid) in __br_fdb_delete_by_addr() argument
945 err = fdb_delete_by_addr(br, addr, vid); in __br_fdb_delete_by_addr()
952 const u8 *addr, u16 vlan) in fdb_delete_by_addr_and_port() argument
955 struct hlist_head *head = &br->hash[br_mac_hash(addr, vlan)]; in fdb_delete_by_addr_and_port()
958 fdb = fdb_find(head, addr, vlan); in fdb_delete_by_addr_and_port()
967 const unsigned char *addr, u16 vid) in __br_fdb_delete() argument
972 err = fdb_delete_by_addr_and_port(p, addr, vid); in __br_fdb_delete()
981 const unsigned char *addr, u16 vid) in br_fdb_delete() argument
1010 err = __br_fdb_delete_by_addr(br, addr, vid); in br_fdb_delete()
1012 err = __br_fdb_delete(p, addr, vid); in br_fdb_delete()
1016 err = __br_fdb_delete_by_addr(br, addr, 0); in br_fdb_delete()
1018 err &= __br_fdb_delete(p, addr, 0); in br_fdb_delete()
1027 err = __br_fdb_delete_by_addr(br, addr, v->vid); in br_fdb_delete()
1029 err &= __br_fdb_delete(p, addr, v->vid); in br_fdb_delete()
1050 err = dev_uc_add(p->dev, fdb->addr.addr); in br_fdb_sync_static()
1068 dev_uc_del(p->dev, tmp->addr.addr); in br_fdb_sync_static()
1087 dev_uc_del(p->dev, fdb->addr.addr); in br_fdb_unsync_static()
1093 const unsigned char *addr, u16 vid) in br_fdb_external_learn_add() argument
1102 head = &br->hash[br_mac_hash(addr, vid)]; in br_fdb_external_learn_add()
1103 fdb = fdb_find(head, addr, vid); in br_fdb_external_learn_add()
1105 fdb = fdb_create(head, p, addr, vid, 0, 0); in br_fdb_external_learn_add()
1129 const unsigned char *addr, u16 vid) in br_fdb_external_learn_del() argument
1138 head = &br->hash[br_mac_hash(addr, vid)]; in br_fdb_external_learn_del()
1139 fdb = fdb_find(head, addr, vid); in br_fdb_external_learn_del()