Convert netinet6/ to use new routing API.
- Remove &ifpp from ip6_output() in favor of ri->ri_nh_info
- Provide different wrappers to in6_selectsrc: Currently it is used by 2 differenct type of customers:
- socket-based one, which all are unsure about provided address scope and
- in-kernel ones (ND code mostly), which don't have any sockets, options, crededentials, etc. So, we provide two different wrappers to in6_selectsrc() returning select source.
- Make different versions of selectroute(): Currenly selectroute() is used in two scenarios:
- SAS, via in6_selecsrc() -> in6_selectif() -> selectroute()
- output, via in6_output -> wrapper -> selectroute() Provide different versions for each customer:
- fib6_lookup_nh_basic()-based in6_selectif() which is capable of returning interface only, without MTU/NHOP/L2 calculations
- full-blown fib6_selectroute() with cached route/multipath/ MTU/L2
- Stop using routing table for link-local address lookups
- Add in6_ifawithifp_lla() to make for-us check faster for link-local
- Add in6_splitscope / in6_setllascope for faster embed/deembed scopes