mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-07 23:58:44 +00:00
From: Gilad Arnold <gilad.arnold@terayon.com>
Subject: [zebra 19084] Re: suspected memory leakage upon static route I believe this is a more complete patch, it also addresses allocating/freeing of nexthop->ifname string buffer (1) using XSTRDUP/XFREE macros (thus correctly updating memory statistics), and (2) for all nexthop->type cases that carry an ifname string.
This commit is contained in:
parent
a0f6acd8a4
commit
a4b70768b4
@ -187,8 +187,8 @@ nexthop_delete (struct rib *rib, struct nexthop *nexthop)
|
|||||||
void
|
void
|
||||||
nexthop_free (struct nexthop *nexthop)
|
nexthop_free (struct nexthop *nexthop)
|
||||||
{
|
{
|
||||||
if (nexthop->type == NEXTHOP_TYPE_IFNAME && nexthop->ifname)
|
if (nexthop->ifname)
|
||||||
free (nexthop->ifname);
|
XFREE (0, nexthop->ifname);
|
||||||
XFREE (MTYPE_NEXTHOP, nexthop);
|
XFREE (MTYPE_NEXTHOP, nexthop);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -215,7 +215,7 @@ nexthop_ifname_add (struct rib *rib, char *ifname)
|
|||||||
nexthop = XMALLOC (MTYPE_NEXTHOP, sizeof (struct nexthop));
|
nexthop = XMALLOC (MTYPE_NEXTHOP, sizeof (struct nexthop));
|
||||||
memset (nexthop, 0, sizeof (struct nexthop));
|
memset (nexthop, 0, sizeof (struct nexthop));
|
||||||
nexthop->type = NEXTHOP_TYPE_IFNAME;
|
nexthop->type = NEXTHOP_TYPE_IFNAME;
|
||||||
nexthop->ifname = strdup (ifname);
|
nexthop->ifname = XSTRDUP (0, ifname);
|
||||||
|
|
||||||
nexthop_add (rib, nexthop);
|
nexthop_add (rib, nexthop);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user