UPDATE: MPLS: FTN refactored.

FTN is performed by mpls_rt_output_fib(). By this function
received Service Primitives (SPI) are cached by

    struct mpls_ftn {
        struct sockaddr    *ftn_fec;    /* FEC */
        struct sockaddr *ftn_nxthp;    /* NH */
        struct sockaddr *ftn_lsp;
        struct rtentry    *ftn_ilm;    /* route maps to LSP */
        struct rtentry    *ftn_rt;    /* route maps to FEC */
        struct ifaddr    *ftn_ifa;    /* NHLFE */
        struct ifnet    *ftn_ifp;    /* tx interface */
        struct sockaddr *ftn_gateway;
        size_t    ftn_gw0len;
        size_t    ftn_gwlen;
    };

Further NHLFE was renamed from

    struct mpls_rt {}

into

    struct mpls_nhlfe {}.

More information abiut changes and bugfixes at next commit!!!