aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv4/tcp_ipv4.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2010-03-20 15:24:29 -0700
committerDavid S. Miller <davem@davemloft.net>2010-03-20 15:24:29 -0700
commite77c8e83dd587f2616d7ff20d23a897891e6e20d (patch)
treeba5d2ce6541119f329b2fd51181aaae8528b38f0 /net/ipv4/tcp_ipv4.c
parent641cb85e68945878d520d5fc3c2dc64aa1dda868 (diff)
parentaf98441397227a5a4f212cd48710eea72a14dbdb (diff)
downloadkernel_samsung_tuna-e77c8e83dd587f2616d7ff20d23a897891e6e20d.zip
kernel_samsung_tuna-e77c8e83dd587f2616d7ff20d23a897891e6e20d.tar.gz
kernel_samsung_tuna-e77c8e83dd587f2616d7ff20d23a897891e6e20d.tar.bz2
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Diffstat (limited to 'net/ipv4/tcp_ipv4.c')
-rw-r--r--net/ipv4/tcp_ipv4.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/net/ipv4/tcp_ipv4.c b/net/ipv4/tcp_ipv4.c
index 70df409..f4df5f9 100644
--- a/net/ipv4/tcp_ipv4.c
+++ b/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);