Fix a long-latent bi=0 bug in vlib_buffer_add_data 93/11193/2
authorDave Barach <dave@barachs.net>
Fri, 16 Mar 2018 19:21:35 +0000 (15:21 -0400)
committerDamjan Marion <dmarion.lists@gmail.com>
Fri, 16 Mar 2018 20:28:13 +0000 (20:28 +0000)
commit0d65d11053395bde7bd8c36439e9025e50ea8028
treee893ef41493550da42dcb6486b8c1c33a4b934b3
parentc03742346f0f3f08b83b0d2944bf72e19ea26191
Fix a long-latent bi=0 bug in vlib_buffer_add_data

Change vlib_buffer_add_data() so it interprets ~0 to mean please
allocate a new buffer, instead of 0. Fixed a couple of calls to pass
~0 instead of 0.

Zero has always been a valid buffer index, we never happened to
actually use it until recent buffer allocator changes.

The presenting symptom: ASSERT failure when running "make
TEST=test_mpls test-debug"

Change-Id: Ic909913c1d464b3434d6d47e0c58f978806854d5
Signed-off-by: Dave Barach <dave@barachs.net>
src/vlib/buffer.c
src/vlib/buffer_serialize.c
src/vnet/srp/node.c