summaryrefslogtreecommitdiff
path: root/zebra/zebra_errors.h
diff options
context:
space:
mode:
authorrgirada <rgirada@vmware.com>2020-05-25 10:20:41 -0700
committerrgirada <rgirada@vmware.com>2020-05-29 04:24:28 -0700
commit64f46c22682fd4cc74084fedc0062985d1459c86 (patch)
tree264df5f52ae16363baf19c7a616e8e93c3b3447b /zebra/zebra_errors.h
parent812507ec5c07504b1c84e1c365954dd49188ce15 (diff)
ospfd: External LSA lookup in LSDB failed in a specific scenario
Description: OSPF uses an algo to generate unique LSIDs when route updates exists with same adrress and different masklens. It genearates the unique LSIDs by masking its hostbits. Ex : Rt1 : 10.0.0.0/32 - LSID : 10.0.0.0 Rt2 : 10.0.0.0/16 - LSID : 10.0.255.255 Rt3 : 10.0.0.0/24 - LSID : 10.0.0.255 Observed an issue with external LSAs when such routes originated. If the first route (with actual address as LSID) is got deleted, the routes with same addresss(different msaks) are failed to get LSA pointers from LSDB due to current fetching API design. api : ospf_external_info_find_lsa Here , it is allowing to look up the LSA with address specific unique LSID (address with host bits set ex: 10.0.255.255) only if the LSA exists where LSID as actual address of the route (ex: 10.0.0.0 ) which is not expected and cauing for other issues. Fix: Corrected this logic, by looking up the LSA with unique LSID first if it doesn’t exist then It is allowing to look up the LSDB with LSID as address of the route. Signed-off-by: Rajesh Girada <rgirada@vmware.com>
Diffstat (limited to 'zebra/zebra_errors.h')
0 files changed, 0 insertions, 0 deletions