summaryrefslogtreecommitdiff
path: root/ospfd/ospf_asbr.h
diff options
context:
space:
mode:
authorIgor Ryzhov <iryzhov@nfware.com>2021-10-14 21:06:38 +0300
committerIgor Ryzhov <iryzhov@nfware.com>2021-10-15 03:44:42 +0300
commit4030e1867bd8598b17408b199ea9ba358611f69e (patch)
treeb3bc4a16aee1eca4101d8610143c43ab61d17d9f /ospfd/ospf_asbr.h
parent198ef12aefac2ccc746064c39de5c61cd4dcd68f (diff)
ospfd: don't use if_lookup_by_name_all_vrf
if_lookup_by_name_all_vrf doesn't work correctly with netns VRF backend as the same index may be used in multiple netns simultaneously. Use the appropriate VRF when looking for the interface. Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
Diffstat (limited to 'ospfd/ospf_asbr.h')
-rw-r--r--ospfd/ospf_asbr.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/ospfd/ospf_asbr.h b/ospfd/ospf_asbr.h
index d3e50903ef..160883144f 100644
--- a/ospfd/ospf_asbr.h
+++ b/ospfd/ospf_asbr.h
@@ -29,6 +29,8 @@ struct route_map_set_values {
/* Redistributed external information. */
struct external_info {
+ struct ospf *ospf;
+
/* Type of source protocol. */
uint8_t type;
@@ -107,7 +109,8 @@ struct ospf_external_aggr_rt {
#define OSPF_ASBR_NSSA_REDIST_UPDATE_DELAY 9
extern void ospf_external_route_remove(struct ospf *, struct prefix_ipv4 *);
-extern struct external_info *ospf_external_info_new(uint8_t, unsigned short);
+extern struct external_info *ospf_external_info_new(struct ospf *, uint8_t,
+ unsigned short);
extern void ospf_reset_route_map_set_values(struct route_map_set_values *);
extern int ospf_route_map_set_compare(struct route_map_set_values *,
struct route_map_set_values *);