All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mitsuru Chinen <mitch@linux.vnet.ibm.com>
To: Jarek Poplawski <jarkao2@gmail.com>
Cc: Jarek Poplawski <jarkao2@o2.pl>,
	netdev@vger.kernel.org, David Miller <davem@davemloft.net>
Subject: Re: [PATCH] [IPv4] Reply net unreachable ICMP message
Date: Thu, 6 Dec 2007 17:14:21 +0900	[thread overview]
Message-ID: <20071206171421.1495c019.mitch@linux.vnet.ibm.com> (raw)
In-Reply-To: <20071206074946.GA2164@ff.dom.local>

On Thu, 6 Dec 2007 08:49:47 +0100
Jarek Poplawski <jarkao2@o2.pl> wrote:

> On 06-12-2007 07:31, Mitsuru Chinen wrote:
> > IPv4 stack doesn't reply any ICMP destination unreachable message
> > with net unreachable code when IP detagrams are being discarded
> > because of no route could be found in the forwarding path.
> > Incidentally, IPv6 stack replies such ICMPv6 message in the similar
> > situation.
> > 
> > Signed-off-by: Mitsuru Chinen <mitch@linux.vnet.ibm.com>
> > ---
> >  net/ipv4/route.c |    2 ++
> >  1 files changed, 2 insertions(+), 0 deletions(-)
> > 
> > diff --git a/net/ipv4/route.c b/net/ipv4/route.c
> > index 6714bbc..ba85ec9 100644
> > --- a/net/ipv4/route.c
> > +++ b/net/ipv4/route.c
> > @@ -1375,6 +1375,7 @@ static int ip_error(struct sk_buff *skb)
> >  			break;
> >  		case ENETUNREACH:
> >  			code = ICMP_NET_UNREACH;
> > +			IP_INC_STATS_BH(IPSTATS_MIB_INNOROUTES);
> >  			break;
> >  		case EACCES:
> >  			code = ICMP_PKT_FILTERED;
> > @@ -2004,6 +2005,7 @@ no_route:
> >  	RT_CACHE_STAT_INC(in_no_route);
> >  	spec_dst = inet_select_addr(dev, 0, RT_SCOPE_UNIVERSE);
> >  	res.type = RTN_UNREACHABLE;
> > +	err = -ENETUNREACH;
> >  	goto local_input;
> >  
> >  	/*
> 
> This patch seems to be wrong. It overrides err codes from
> fib_lookup, where such decisions should be made.

fib_lookup() replies -ESRCH in this situation.
It is necessary to override the variable by the suitable error
number like the code under e_hostunreach label.

Best Regards,
----
Mitsuru Chinen <mitch@linux.vnet.ibm.com>

  parent reply	other threads:[~2007-12-06  8:14 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-12-06  6:31 [PATCH] [IPv4] Reply net unreachable ICMP message Mitsuru Chinen
2007-12-06  6:33 ` David Miller
2007-12-06  7:49 ` Jarek Poplawski
2007-12-06  8:12   ` Rami Rosen
2007-12-06  8:14   ` Mitsuru Chinen [this message]
2007-12-06  8:47     ` Jarek Poplawski
2007-12-07  4:23       ` Mitsuru Chinen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20071206171421.1495c019.mitch@linux.vnet.ibm.com \
    --to=mitch@linux.vnet.ibm.com \
    --cc=davem@davemloft.net \
    --cc=jarkao2@gmail.com \
    --cc=jarkao2@o2.pl \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.