fib: fix crash when create vxlan/vxlan-gpe/geneve/gtpu tunnel. 03/37303/4
authorHuawei LI <lihuawei_zzu@163.com>
Thu, 29 Sep 2022 03:28:12 +0000 (11:28 +0800)
committerNeale Ranns <neale@graphiant.com>
Tue, 11 Oct 2022 03:37:36 +0000 (03:37 +0000)
commit06923b33a9507ee6a92facb770650fff93d89dff
tree2952b05f1a800a7ed4cc07111c62ccb037471498
parent23b33ec02bb08b5998d3b2ba7c6ef7d4737424c6
fib: fix crash when create vxlan/vxlan-gpe/geneve/gtpu tunnel.

Fix vpp crash when create vxlan/vxlan-gpe/geneve/gtpu tunnel
with 0.0.0.0 dst ip in debug build. The ASSERT should be move
out of fib_prefix_from_ip46_addr, which may be called when
create vxlan/vxlan-gpe/geneve/gtpu tunnel with 0.0.0.0 dst ip.

How to reproduce:
1. build debug vpp and run vpp
2. create vxlan t src 192.168.0.2 dst 0.0.0.0 vni 1 instance 1
   create vxlan-gpe tunnel local 192.168.0.2 remote 0.0.0.0 vni 1
   create geneve tunnel local 192.168.0.2 remote 0.0.0.0 vni 1
   create gtpu tunnel src 192.168.0.2 dst 0.0.0.0 teid 1

Type: fix

Change-Id: I19972f6af588f4ff7fd17de1b16b9301e43d596f
Signed-off-by: Huawei LI <lihuawei_zzu@163.com>
src/plugins/geneve/geneve.c
src/plugins/gtpu/gtpu.c
src/vnet/fib/fib_path.c
src/vnet/fib/fib_types.c
src/vnet/fib/fib_types.h
src/vnet/vxlan-gpe/vxlan_gpe.c
src/vnet/vxlan/vxlan.c