When an inbound pfil hook chooses the next hop (ipfw fwd),
ip6_tryforward() looks up the route to it. After the outbound hooks it
decides whether they changed the destination by comparing the packet's
destination with the address it looked up, which is that next hop. The
two differ, so it looks up the route to the packet's destination again
and the fwd rule is lost. ipfw always installs an outbound hook, so
every packet such a rule matches goes the wrong way while
net.inet6.ip6.redirect is 0.
Compare with the destination as it was before the outbound hooks, as
ip6_forward() does.
Fixes: 5a1842a2 ("Add ip6_tryforward() - a run to completion ...")
MFC after: 1 week
Sponsored by: Rubicon Communications, LLC ("Netgate")