+ /*
+ * the destination address used in the pseudo-header is that of the final
+ * destination : the last address of the routing header
+ */
+ if (last_addr != NULL) {
+ const struct ip6_hdr *ip6 = (const struct ip6_hdr *)bp2;
+ UNALIGNED_MEMCPY(&ip6->ip6_dst, last_addr, sizeof (struct in6_addr));
+ }