mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-09 11:18:52 +00:00
2003-11-10 Claus Endres <claus@endresconsulting.com>
* ospfd/ospf_interface.c: (ospf_if_table_lookup) grab reference to rn->info /before/ calling route_unlock_node() as some systems may deliberately poison freed memory, eg FreeBSD 5.1. see [quagga-dev 417].
This commit is contained in:
parent
1302bdc7eb
commit
b5f2c1267e
@ -131,13 +131,15 @@ ospf_if_table_lookup (struct interface *ifp, struct prefix *prefix)
|
|||||||
{
|
{
|
||||||
struct prefix p;
|
struct prefix p;
|
||||||
struct route_node *rn;
|
struct route_node *rn;
|
||||||
|
struct ospf_interface *rninfo;
|
||||||
|
|
||||||
p = *prefix;
|
p = *prefix;
|
||||||
|
|
||||||
rn = route_node_get (IF_OIFS (ifp), &p);
|
rn = route_node_get (IF_OIFS (ifp), &p);
|
||||||
/* route_node_get implicitely locks */
|
/* route_node_get implicitely locks */
|
||||||
|
rninfo = (struct ospf_interface *) rn->info;
|
||||||
route_unlock_node (rn);
|
route_unlock_node (rn);
|
||||||
return (struct ospf_interface *) rn->info;
|
return rninfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
Loading…
Reference in New Issue
Block a user