summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2019-09-19 13:27:04 -0400
committerDonald Sharp <sharpd@cumulusnetworks.com>2019-09-19 13:33:23 -0400
commit26f135777c20a5914c43fc7168b70a950e47183a (patch)
treebd74afa7c784fcb902ebe4a4366f9f3c2309d5c6
parent16296beaa5ff0b51e1b9e88848206dcea5cd2a32 (diff)
zebra: Saving interface description makes no sense on deletion
We were storing the interface description irrelevant of whether or not it was a newlink or dellink. This makes no sense. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
-rw-r--r--zebra/if_netlink.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/zebra/if_netlink.c b/zebra/if_netlink.c
index c71b95f753..bb6b9973bf 100644
--- a/zebra/if_netlink.c
+++ b/zebra/if_netlink.c
@@ -1376,6 +1376,13 @@ int netlink_link_change(struct nlmsghdr *h, ns_id_t ns_id, int startup)
else if (IS_ZEBRA_IF_BOND_SLAVE(ifp) || was_bond_slave)
zebra_l2if_update_bond_slave(ifp, bond_ifindex);
}
+
+ zif = ifp->info;
+ if (zif) {
+ XFREE(MTYPE_TMP, zif->desc);
+ if (desc)
+ zif->desc = XSTRDUP(MTYPE_TMP, desc);
+ }
} else {
/* Delete interface notification from kernel */
if (ifp == NULL) {
@@ -1402,13 +1409,6 @@ int netlink_link_change(struct nlmsghdr *h, ns_id_t ns_id, int startup)
if_delete_update(ifp);
}
- zif = ifp->info;
- if (zif) {
- XFREE(MTYPE_TMP, zif->desc);
- if (desc)
- zif->desc = XSTRDUP(MTYPE_TMP, desc);
- }
-
return 0;
}