]> git.puffer.fish Git - matthieu/frr.git/commit
bgpd: Fix bgpd crash in evpn vni route-map
authorChirag Shah <chirag@cumulusnetworks.com>
Wed, 13 Jun 2018 05:13:05 +0000 (22:13 -0700)
committerChirag Shah <chirag@cumulusnetworks.com>
Wed, 13 Jun 2018 17:14:24 +0000 (10:14 -0700)
commit80ced710574552fba7ddb51051606b14da3a1061
treebcef336a842ce301905e7187d012c3005b2fdf35
parent9c96d82fd298cb3029d9b644f6993b0cc182aedf
bgpd: Fix bgpd crash in evpn vni route-map

When evpn configured wiht route-map with vni which is not
configured. Upon receiving evpn routes (i.e Type-2, Type-3),
route-map match will be triggered. Since there is no l2vni
exists in db, some of the member fields in bgp_info (i.e.
dummy_info_extra) are passed uninitialized to evpn filter match cb.
This results in inaccessible memory causes crash.

Fix is to memset the bgp_info prior to passing to evpn filter cb.
In evpn vni filter cb, ensure to have NULL check for member filed
of the bgp_info.

memset bgp_info at few places where it is passed to route_match.

Ticket:CM-21335
Reviewed By:
Testing Done:

Configure route-map with not configured l2vni
Simulate to learn l2vpn type-2, 3 route

Restart frr.service with below config
address-family l2vpn evpn
  neighbor fear route-map EVPN_VNI out

route-map EVPN_VNI deny 10
 match evpn vni 140010

Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
bgpd/bgp_route.c
bgpd/bgp_routemap.c