Browse Source

mpls: Correct the ttl decrement.

According to RFC3032 section 2.4.2  packets with an outgoing
ttl of 0 MUST NOT be forwarded.  According to section 2.4.1
an outgoing TTL of 0 comes from an incomming TTL <= 1.

Therefore any packets that is received with a ttl <= 1 should
not have it's ttl decremented and forwarded.

Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Eric W. Biederman 10 years ago
parent
commit
aa7da93756
1 changed files with 1 additions and 1 deletions
  1. 1 1
      net/mpls/af_mpls.c

+ 1 - 1
net/mpls/af_mpls.c

@@ -162,7 +162,7 @@ static int mpls_forward(struct sk_buff *skb, struct net_device *dev,
 	skb_forward_csum(skb);
 
 	/* Verify ttl is valid */
-	if (dec.ttl <= 2)
+	if (dec.ttl <= 1)
 		goto drop;
 	dec.ttl -= 1;