>From 6b9b468f1cf3f2897fbcda389e8c2514a69c4943 Mon Sep 17 00:00:00 2001
From: Ville Nuorvala <[EMAIL PROTECTED]>
Date: Thu, 2 Nov 2006 12:49:47 +0200
Subject: [PATCH 5/6] IPv6: Improve IPv6 tunnel error reporting

Log an error if the remote tunnel endpoint is unable to handle
tunneled packets.

Signed-off-by: Ville Nuorvala <[EMAIL PROTECTED]>
---
 net/ipv6/ip6_tunnel.c |   13 +++++++------
 1 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/net/ipv6/ip6_tunnel.c b/net/ipv6/ip6_tunnel.c
index a97eb52..4f64ed7 100644
--- a/net/ipv6/ip6_tunnel.c
+++ b/net/ipv6/ip6_tunnel.c
@@ -424,12 +424,9 @@ ip6ip6_err(struct sk_buff *skb, struct i
                }
                break;
        case ICMPV6_PARAMPROB:
-               /* ignore if parameter problem not caused by a tunnel
-                  encapsulation limit sub-option */
-               if (code != ICMPV6_HDR_FIELD) {
-                       break;
-               }
-               teli = parse_tlv_tnl_enc_lim(skb, skb->data);
+               teli = 0;
+               if (code == ICMPV6_HDR_FIELD)
+                       teli = parse_tlv_tnl_enc_lim(skb, skb->data);
 
                if (teli && teli == ntohl(info) - 2) {
                        tel = (struct ipv6_tlv_tnl_enc_lim *) &skb->data[teli];
@@ -441,6 +438,10 @@ ip6ip6_err(struct sk_buff *skb, struct i
                                               "tunnel!\n", t->parms.name);
                                rel_msg = 1;
                        }
+               } else if (net_ratelimit()) {
+                       printk(KERN_WARNING
+                              "%s: Recipient unable to parse tunneled "
+                              "packet!\n ", t->parms.name);
                }
                break;
        case ICMPV6_PKT_TOOBIG:
-- 
1.4.3.2

Reply via email to