selinux: Fix packet forwarding checks on postrouting
authorSteffen Klassert <steffen.klassert@secunet.com>
Wed, 23 Feb 2011 11:56:23 +0000 (12:56 +0100)
committerEric Paris <eparis@redhat.com>
Fri, 25 Feb 2011 20:00:51 +0000 (15:00 -0500)
commit4a7ab3dcad0b66a486c468ccf0d6197c5dbe3326
treeb88badda1de339ed01149caf05601400d2e2a9dd
parentb9679a76187694138099e09d7f5091b73086e6d7
selinux: Fix packet forwarding checks on postrouting

The IPSKB_FORWARDED and IP6SKB_FORWARDED flags are used only in the
multicast forwarding case to indicate that a packet looped back after
forward. So these flags are not a good indicator for packet forwarding.
A better indicator is the incoming interface. If we have no socket context,
but an incoming interface and we see the packet in the ip postroute hook,
the packet is going to be forwarded.

With this patch we use the incoming interface as an indicator on packet
forwarding.

Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
Acked-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: Eric Paris <eparis@redhat.com>
security/selinux/hooks.c