netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Mika Penttilä" <mika.penttila@kolumbus.fi>
To: "YOSHIFUJI Hideaki / ????" <yoshfuji@linux-ipv6.org>
Cc: kazunori@miyazawa.org, davem@redhat.com, netdev@oss.sgi.com,
	usagi-core@linux-ipv6.org
Subject: Re: [PATCH][IPV6][NDISC] unify ipv6 output routine
Date: Sat, 07 Feb 2004 10:40:40 +0200	[thread overview]
Message-ID: <4024A488.60203@kolumbus.fi> (raw)
In-Reply-To: <20040207.131455.27570445.yoshfuji@linux-ipv6.org>



YOSHIFUJI Hideaki / ???? wrote:

>In article <4023D6FB.9010909@kolumbus.fi> (at Fri, 06 Feb 2004 20:03:39 +0200), Mika Penttilä <mika.penttila@kolumbus.fi> says:
>
>  
>
>>Kazunori Miyazawa wrote:
>>    
>>
>:
>  
>
>>>Yoshifuji-san and I send the patch which unifies IPv6 output routine and remove
>>>RTF_NDISC again. It resolves an issue of IPv6 IPsec with neighbor discovery
>>>without a flag.
>>>      
>>>
>:
>  
>
>>You break multicast replies, see what ndisc_build_ll_hdr() does...
>>    
>>
>
>It doesn't "break." 
>The ip6_output2() resolves and inserts link-layer address appropriately.
>If it did, we would have noticed (by conformance test or even by
>usual operation). ;-)
>  
>
ip6_output2() doesn't resolve link-layer addresses. We don't even have a 
neighbour, in

ndisc_dst_alloc(dev, NULL, ip6_output2); case.


>BTW, Miyazawa-san, we do not need ndisc_build_ll_hdr() anymore.
>Compiler warns it. Please remove it. Thanks.
>
>
>Here's the description:
>
>dst->neighbour owns the neighbour entry for the destination. 
>
>For multicast, we know its link-layer address 
>(filled in ndisc_constructor()).
>For unicast, the link-layer address may be unknown.
>
>ip6_output2() will call ip6_output_finish() and
>it tries inserting the link-layer header.
>
>The destination link-layer address is used if it is known (*).
>(Note: you remember that we know link-layer address for multicast.)
>
>If the link-layer address is not known or invalid, 
>we queue the packet and resolve the link-layer address for the destination.
>Here, since the neighbour entry is "invalid," *multicast* NS is sent. 
>The NS packet passes similar path. 
>We know the destination for the NS is multicast and 
>what the link-layer address is, and the packet is sent via (*).
>We will send the queued packet when we got NA from that node.
>
>Real story:
>A node may send NS without source link-layer address option 
>while we do not know the link-layer address for the source of the NS.
>We need to send NA in reply to this NS.
>Original code cannot handle this case.  The new code path can.
>  
>

You just described how the normal link layer address resolving goes. It 
doesn't apply here. Again, there is no dst->neighbour.



--Mika

  parent reply	other threads:[~2004-02-07  8:40 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-02-06 17:32 [PATCH][IPV6][NDISC] unify ipv6 output routine Kazunori Miyazawa
2004-02-06 18:03 ` Mika Penttilä
2004-02-07  3:48   ` David S. Miller
2004-02-07  4:14   ` YOSHIFUJI Hideaki / 吉藤英明
2004-02-07  4:33     ` Kazunori Miyazawa
2004-02-08 21:08       ` David S. Miller
2004-02-08 21:26         ` YOSHIFUJI Hideaki / 吉藤英明
2004-02-07  8:40     ` Mika Penttilä [this message]
2004-02-07 10:28       ` YOSHIFUJI Hideaki / 吉藤英明
2004-02-07 10:41         ` Mika Penttilä
2004-02-07 10:45           ` Mika Penttilä
2004-02-07 11:29             ` (usagi-core 17380) " YOSHIFUJI Hideaki / 吉藤英明

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=4024A488.60203@kolumbus.fi \
    --to=mika.penttila@kolumbus.fi \
    --cc=davem@redhat.com \
    --cc=kazunori@miyazawa.org \
    --cc=netdev@oss.sgi.com \
    --cc=usagi-core@linux-ipv6.org \
    --cc=yoshfuji@linux-ipv6.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 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).