Fix Coverity Defect
1532481 reporting a Resource leak when
!bm->node.avl.key is false in bridge_hotplug_add.
This is not a real issue, since bm->node.avl.key is always NULL for newly
allocated entries and guaranteed to be non-NULL for entries returned by
vlist_find.
Fixes: edf3aced9f9a ("bridge: add support for adding vlan ranges via hotplug")
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
{
struct bridge_state *bst = container_of(dev, struct bridge_state, dev);
struct bridge_member *bm;
{
struct bridge_state *bst = container_of(dev, struct bridge_state, dev);
struct bridge_member *bm;
+ bool new_entry = false;
bm = vlist_find(&bst->members, member->ifname, bm, node);
bm = vlist_find(&bst->members, member->ifname, bm, node);
+ if (!bm) {
+ new_entry = true;
bm = bridge_alloc_member(bst, member->ifname, member, true);
bm = bridge_alloc_member(bst, member->ifname, member, true);
bridge_hotplug_set_member_vlans(bst, vlan, member->ifname, bm, true);
bridge_hotplug_set_member_vlans(bst, vlan, member->ifname, bm, true);
bridge_insert_member(bm, member->ifname);
return 0;
bridge_insert_member(bm, member->ifname);
return 0;