Commit 1f23a190 authored by Ido Schimmel's avatar Ido Schimmel Committed by David S. Miller
Browse files

netfilter: br_netfilter: Unmask upper DSCP bits in br_nf_pre_routing_finish()



Unmask upper DSCP bits when calling ip_route_output() so that in the
future it could perform the FIB lookup according to the full DSCP value.

Signed-off-by: default avatarIdo Schimmel <idosch@nvidia.com>
Reviewed-by: default avatarGuillaume Nault <gnault@redhat.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 8f088541
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -36,6 +36,7 @@
#include <net/route.h>
#include <net/netfilter/br_netfilter.h>
#include <net/netns/generic.h>
#include <net/inet_dscp.h>

#include <linux/uaccess.h>
#include "br_private.h"
@@ -402,7 +403,7 @@ static int br_nf_pre_routing_finish(struct net *net, struct sock *sk, struct sk_
				goto free_skb;

			rt = ip_route_output(net, iph->daddr, 0,
					     RT_TOS(iph->tos), 0,
					     iph->tos & INET_DSCP_MASK, 0,
					     RT_SCOPE_UNIVERSE);
			if (!IS_ERR(rt)) {
				/* - Bridged-and-DNAT'ed traffic doesn't