From: Phil Oester <kernel@linuxace.com>
To: netdev@vger.kernel.org
Subject: Regression in 3.6+: fib_validate_source breakage
Date: Sat, 12 Jan 2013 20:45:13 -0800 [thread overview]
Message-ID: <20130113044513.GA26457@linuxace.com> (raw)
In commit 7a9bc9b81a (Elide fib_validate_source() completely when possible) it
was stated:
If rpfilter is off (or the SKB has an IPSEC path) and there are not
tclassid users, we don't have to do anything at all when
fib_validate_source() is invoked besides setting the itag to zero.
However, this change was later proven to break redirects, fixed in commit
e81da0e113 (ipv4: fix sending of redirects).
In addition to this breakage, it also bypassed another necessary check, as
clearly stated in the preamble comment to fib_validate_source:
* - (main) check, that source is valid i.e. not broadcast or our local
* address.
Without this check (and if rp_filter is NOT enabled), packets with local source
addresses are accepted by the stack. This only came to light due to a buggy
switch which is occasionally reflecting packets back at a box running a VRRP
daemon, causing the local box to believe it has seen a higher priority
advertisement, when in reality it is only seeing a copy of its own advertisement.
Prior to 3.6, these packets would be silently dropped.
Also, not that I use it, but accept_local handling appears to now be broken.
I realize the original change likely made the route cache removal more palatable,
but given the number of issues it has caused, perhaps a revert is in order?
I can't find any easy alternative fix.
Phil Oester
reply other threads:[~2013-01-13 4:45 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130113044513.GA26457@linuxace.com \
--to=kernel@linuxace.com \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).