aboutsummaryrefslogtreecommitdiffstats
path: root/src/vlib/defs.h
diff options
context:
space:
mode:
authorPim van Pelt <pim@ipng.nl>2022-06-03 21:05:26 +0000
committerDamjan Marion <dmarion@0xa5.net>2022-06-07 14:17:44 +0000
commit96158834db03036f9885654f198a02b68fc98830 (patch)
tree8e32e7d28eaa9e06aed9892b1a213a5c887f41b1 /src/vlib/defs.h
parent9cca694c8f02dbe4a633938ef819bfb67e603888 (diff)
vlib: fix crash on packet on deleted interface
If ip4_neighbor_probe (or any other) is sending packet to a deleted interface, ASSERT trips and dataplane crashes. Example: create loopback interface instance 0 set interface ip address loop0 10.0.0.1/32 set interface state GigabitEthernet3/0/1 up set interface state loop0 up set interface state loop0 down set interface ip address del loop0 10.0.0.1/32 delete loopback interface intfc loop0 set interface state GigabitEthernet3/0/1 down set interface state GigabitEthernet3/0/1 up comment { the following crashes VPP } set interface state GigabitEthernet3/0/1 down This sequence reliably crashes VPP: (gdb)p n->name $4 = (u8 *) 0x7fff82b47578 "interface-3-output-deleted” If the interface doesn't exist, return ~0 and be tolerant of this in the two call sites of counter_index() Type: fix Signed-off-by: Pim van Pelt <pim@ipng.nl> Change-Id: I90ec58fc0d14b20c9822703fe914f2ce89acb18d
Diffstat (limited to 'src/vlib/defs.h')
0 files changed, 0 insertions, 0 deletions