]> git.puffer.fish Git - matthieu/frr.git/commit
ripd: Fix crash when ip rip split-horizon poisoned-reverse is configed
authorDonald Sharp <sharpd@cumulusnetworks.com>
Tue, 6 Feb 2018 23:48:09 +0000 (18:48 -0500)
committerDonald Sharp <sharpd@cumulusnetworks.com>
Wed, 7 Feb 2018 13:27:34 +0000 (08:27 -0500)
commitaea175a8f41090ecd7fd1cf6bf1952e8ad8e3bc5
treeda0ef179c6d37b163204fef7edfb275325171fef
parent2415f045c62747dbd64108d5b9f991a5a8631212
ripd: Fix crash when ip rip split-horizon poisoned-reverse is configed

The code was attempting to access a variable that would always be NULL.
In fact this code has been broken since the rip ECMP changes
were put into place a few years back.

I'm going to come straight out and say that I don't fully
understand this code.  rinfo is the first item in the ecmp
list and tmp_rinfo is used to iterate over all the items
in the ecmp list.  It sure looks like that the changes
made here were just hacked together.  So I modified
the tmp_rinfo loop to just work on tmp_rinfo and
the check that was crashing I modified to just use
the rinfo since that what was checked originally
in code before the ECMP was added.  So consider
this a hack job to stop the crashing.

I think worse case is that we might be sending some routes
back out interfaces it shouldn't be if you have
ip rip split-horizon poisoned-reverse configured but
that is less bad(tm) than crashing.

Fixes: #1717
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
ripd/ripd.c