Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d4f2fa6a authored by Denis Kirjanov's avatar Denis Kirjanov Committed by David S. Miller
Browse files

ipv4: ip_forward: perform skb->pkt_type check at the beginning



Packets which have L2 address different from ours should be
already filtered before entering into ip_forward().

Perform that check at the beginning to avoid processing such packets.

Signed-off-by: default avatarDenis Kirjanov <kda@linux-powerpc.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 2045ceae
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -59,6 +59,10 @@ int ip_forward(struct sk_buff *skb)
	struct rtable *rt;	/* Route we use */
	struct ip_options *opt	= &(IPCB(skb)->opt);

	/* that should never happen */
	if (skb->pkt_type != PACKET_HOST)
		goto drop;

	if (skb_warn_if_lro(skb))
		goto drop;

@@ -68,9 +72,6 @@ int ip_forward(struct sk_buff *skb)
	if (IPCB(skb)->opt.router_alert && ip_call_ra_chain(skb))
		return NET_RX_SUCCESS;

	if (skb->pkt_type != PACKET_HOST)
		goto drop;

	skb_forward_csum(skb);

	/*