On Sat, Jun 24, 2017 at 09:41:18PM +0200, Harald Dunkel wrote:
> commit 270aa588bf833a21eacc7de79669da22a9ed8fa7
> Author: mpi <[email protected]>
> Date:   Thu Mar 2 09:06:59 2017 +0000
> 
>     Use the routing table rather than the global list of IPv6 address.
> 
>     ok bluhm@

The IPv6 routing table does not use sin6_scope_id, but the embedded
scope.  So we must not recover the scope id.

ok?

bluhm

Index: netinet6/icmp6.c
===================================================================
RCS file: /data/mirror/openbsd/cvs/src/sys/netinet6/icmp6.c,v
retrieving revision 1.211
diff -u -p -r1.211 icmp6.c
--- netinet6/icmp6.c    30 May 2017 12:09:27 -0000      1.211
+++ netinet6/icmp6.c    26 Jun 2017 00:00:22 -0000
@@ -1117,14 +1117,10 @@ icmp6_reflect(struct mbuf *m, size_t off
        sa6_src.sin6_family = AF_INET6;
        sa6_src.sin6_len = sizeof(sa6_src);
        sa6_src.sin6_addr = ip6->ip6_dst;
-       in6_recoverscope(&sa6_src, &ip6->ip6_dst);
-       in6_embedscope(&ip6->ip6_dst, &sa6_src, NULL);
        bzero(&sa6_dst, sizeof(sa6_dst));
        sa6_dst.sin6_family = AF_INET6;
        sa6_dst.sin6_len = sizeof(sa6_dst);
        sa6_dst.sin6_addr = t;
-       in6_recoverscope(&sa6_dst, &t);
-       in6_embedscope(&t, &sa6_dst, NULL);
 
        /*
         * If the incoming packet was addressed directly to us (i.e. unicast),

Reply via email to