CVSROOT:        /cvs
Module name:    src
Changes by:     [email protected]    2015/04/20 03:07:42

Modified files:
        sys/netinet6   : in6.c 

Log message:
Do not treat loopback interfaces as p2p interfaces and create only
one route to "::1".

Due to a clever BSD trick, the `ifa_dstaddr` field of addresses on
IFF_LOOPBACK ifps is set to the same value that `ifa_addr`.  That's
why filtering for broadcast addresses is so complicated, because
guess what, `ifa_broadaddr` is the same as `ifa_dstaddr`!

Sadly our IPv6 code was "only" checking for `ifa_dstaddr` without
looking if the ifa was attached to a IFF_POINTOTPOINT interface.
So it always tried to create two routes to "::1" and, with the
recent RTF_LOCAL work, succeed.

You should now have only one local route to "::1".

::1             ::1         UHl       14  0 32768     1 lo0
-::1             ::1         UH         0  0 32768     4 lo0

ok henning@

Reply via email to