netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* IPv6 :  ICMPV6_DEST_UNREACH type with ICMPV6_NOROUTE code
@ 2003-05-06 10:18 Seong Moon
  2003-05-09 11:34 ` Robert Olsson
  0 siblings, 1 reply; 4+ messages in thread
From: Seong Moon @ 2003-05-06 10:18 UTC (permalink / raw)
  To: netdev

Hi, there.
I'm recently analyzing the kernel source for IPv6 router.

I found that when the kernel has no forwarding entry of a packet,
the kernel sends an ICMPV6_DEST_UNREACH icmp message with
ICMPV6_ADDR_UNREACH code
to the source of the packet.

But According to RFC 2463, If the kerenl has no forwarding entry of a
packet,
the kernel must send an ICMPV6_DEST_UNREACH icmp message with ICMPV6_NOROUTE
code.

In my opinion, ip6_pkt_discard() should be modified as follows :

int ip6_pkt_discard(struct sk_buff *skb)
{
    IP6_INC_STATS(Ip6OutNoRoutes);
    /* icmpv6_send(skb, ICMPV6_DEST_UNREACH, ICMPV6_ADDR_UNREACH, 0,
skb->dev); */
    icmpv6_send(skb, ICMPV6_DEST_UNREACH, ICMPV6_NOROUTE, 0, skb->dev);
    kfree_skb(skb);
    return 0;
}

How about you ? Am I right ?

And I found another doubtable thing,
ipv6_routing_header() sends an ICMPv6 Parameter Problem message if the
extention header's length is odd value.
Then ICMPv6 Parameter Problem Message includes the pointer that indicates
the byte offset of errorneous field in a packet.
ipv6_routing_header() calculates the byte offset from the beginning of the
extention header.

In my opinion, ipv6_routing_header() must calculates the byte offset from
the beginning of the
IPv6 packet.

Is this right ?

bye.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2003-05-09 15:58 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-05-06 10:18 IPv6 : ICMPV6_DEST_UNREACH type with ICMPV6_NOROUTE code Seong Moon
2003-05-09 11:34 ` Robert Olsson
2003-05-09 11:44   ` YOSHIFUJI Hideaki / 吉藤英明
2003-05-09 15:58   ` David S. Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).