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

Commit ee686ca9 authored by Andreas Jaggi's avatar Andreas Jaggi Committed by David S. Miller
Browse files

gre: fix ToS/DiffServ inherit bug



Fixes two bugs:
- ToS/DiffServ inheritance was unintentionally activated when using impair fixed ToS values
- ECN bit was lost during ToS/DiffServ inheritance

Signed-off-by: default avatarAndreas Jaggi <aj@open.ch>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent c8159b2d
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -735,10 +735,10 @@ static int ipgre_tunnel_xmit(struct sk_buff *skb, struct net_device *dev)
	}

	tos = tiph->tos;
	if (tos&1) {
	if (tos == 1) {
		tos = 0;
		if (skb->protocol == htons(ETH_P_IP))
			tos = old_iph->tos;
		tos &= ~1;
	}

	{