• Roopa Prabhu's avatar
    mpls: route get support · 397fc9e5
    Roopa Prabhu authored
    This patch adds RTM_GETROUTE doit handler for mpls routes.
    
    Input:
    RTA_DST - input label
    RTA_NEWDST - labels in packet for multipath selection
    
    By default the getroute handler returns matched
    nexthop label, via and oif
    
    With RTM_F_FIB_MATCH flag, full matched route is
    returned.
    
    example (with patched iproute2):
    $ip -f mpls route show
    101
            nexthop as to 102/103 via inet 172.16.2.2 dev virt1-2
            nexthop as to 302/303 via inet 172.16.12.2 dev virt1-12
    201
            nexthop as to 202/203 via inet6 2001:db8:2::2 dev virt1-2
            nexthop as to 402/403 via inet6 2001:db8:12::2 dev virt1-12
    
    $ip -f mpls route get 103
    RTNETLINK answers: Network is unreachable
    
    $ip -f mpls route get 101
    101 as to 102/103 via inet 172.16.2.2 dev virt1-2
    
    $ip -f mpls route get as to 302/303 101
    101 as to 302/303 via inet 172.16.12.2 dev virt1-12
    
    $ip -f mpls route get fibmatch 103
    RTNETLINK answers: Network is unreachable
    
    $ip -f mpls route get fibmatch 101
    101
            nexthop as to 102/103 via inet 172.16.2.2 dev virt1-2
            nexthop as to 302/303 via inet 172.16.12.2 dev virt1-12
    Signed-off-by: default avatarRoopa Prabhu <roopa@cumulusnetworks.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    397fc9e5
af_mpls.c 57 KB