On Sat, 2003-03-15 at 11:38, JINMEI Tatuya / 神明達哉 wrote:
> While the draft says:
> 
>     If the destination address is site-local, the router will look at
>     the interface on which the packet was received to determine the
>     site-local zone in which the packet originated, and will perform a
>     lookup in the correct site-local forwarding table and forward the
>     packet, as indicated.
> 
> However, this should also apply to link-local addresses as I said
> above.  And, in fact, our implementation adopts a generic forwarding
> routine used for all type of scopes like this:
> 
>       /* Source scope check. rt_ifp is the outgoing interface for dst */
>       in6_addr2zoneid(rt->rt_ifp, &ip6->ip6_src, &zone);
>       if (sa6_src.sin6_scope_id != zone) {
>               icmp6_error(mcopy, ICMP6_DST_UNREACH,
>                           ICMP6_DST_UNREACH_BEYONDSCOPE, 0);
>       }
> 
>       /* Destination scope check */
>       in6_addr2zoneid(rt->rt_ifp, &ip6->ip6_dst, &zone);
>       if (sa6_dst.sin6_scope_id != zone) {
>               m_freem(m);
>               return;
>       }

Exactly. Our implementation does the same thing.

While the text in SCOPARCH is already reasonably clear on this, I think
this is important enough that it would be worthwhile to put the above
code into SCOPARCH in pseudo code format.

        MikaL


--------------------------------------------------------------------
IETF IPng Working Group Mailing List
IPng Home Page:                      http://playground.sun.com/ipng
FTP archive:                      ftp://playground.sun.com/pub/ipng
Direct all administrative requests to [EMAIL PROTECTED]
--------------------------------------------------------------------

Reply via email to