From f7c9920396207e6e87d6ca753a13fc5cd24f4d4f Mon Sep 17 00:00:00 2001 From: stephen hemminger Date: Thu, 18 Mar 2010 11:27:32 +0000 Subject: [PATCH] --- yaml --- r: 188864 b: refs/heads/master c: 97e3ecd112ba45eb217cddab59f48659bc15d9d0 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/net/ipv4/tcp_ipv4.c | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 08554d80a273..0b185c228c76 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 10414444cb8a8ee8893e00390b7cf40502e28352 +refs/heads/master: 97e3ecd112ba45eb217cddab59f48659bc15d9d0 diff --git a/trunk/net/ipv4/tcp_ipv4.c b/trunk/net/ipv4/tcp_ipv4.c index 70df40980a87..f4df5f931f36 100644 --- a/trunk/net/ipv4/tcp_ipv4.c +++ b/trunk/net/ipv4/tcp_ipv4.c @@ -370,6 +370,11 @@ void tcp_v4_err(struct sk_buff *icmp_skb, u32 info) if (sk->sk_state == TCP_CLOSE) goto out; + if (unlikely(iph->ttl < inet_sk(sk)->min_ttl)) { + NET_INC_STATS_BH(net, LINUX_MIB_TCPMINTTLDROP); + goto out; + } + icsk = inet_csk(sk); tp = tcp_sk(sk); seq = ntohl(th->seq);