X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Fip%2Fip.api;h=df9ce6e615a10ca217f6d35fe7e56756545f4389;hb=f9342023c19887da656133e2688a90d70383b0c5;hp=e57c2fe177d9dc01c843d06097e4948780d8fbff;hpb=28ab9cc13bb0b6adf68277f12cfcd33b69f40b00;p=vpp.git diff --git a/src/vnet/ip/ip.api b/src/vnet/ip/ip.api index e57c2fe177d..df9ce6e615a 100644 --- a/src/vnet/ip/ip.api +++ b/src/vnet/ip/ip.api @@ -19,6 +19,8 @@ called through a shared memory interface. */ +vl_api_version 1.0.0 + /** \brief Add / del table request A table can be added multiple times, but need be deleted only once. @param client_index - opaque cookie to identify the sender @@ -27,6 +29,9 @@ @param table_id - table ID associated with the route This table ID will apply to both the unicats and mlticast FIBs + @param name - A client provided name/tag for the table. If this is + not set by the client, then VPP will generate something + meaningfull. */ autoreply define ip_table_add_del { @@ -35,6 +40,7 @@ autoreply define ip_table_add_del u32 table_id; u8 is_ipv6; u8 is_add; + u8 name[64]; }; /** \brief Dump IP fib table @@ -83,6 +89,7 @@ manual_endian manual_print define ip_fib_details { u32 context; u32 table_id; + u8 table_name[64]; u8 address_length; u8 address[4]; u32 count; @@ -98,10 +105,10 @@ define ip6_fib_dump u32 context; }; -/** \brief IP6 FIB table response +/** \brief IP6 FIB table entry response @param table_id - IP6 fib table id - @address_length - mask length - @address - ip6 prefix + @param address_length - mask length + @param address - ip6 prefix @param count - the number of fib_path in path @param path - array of of fib_path structures */ @@ -109,6 +116,7 @@ manual_endian manual_print define ip6_fib_details { u32 context; u32 table_id; + u8 table_name[64]; u8 address_length; u8 address[16]; u32 count; @@ -354,7 +362,6 @@ autoreply define sw_interface_ip6_set_link_local_address @param vrf_id - fib table /vrf associated with the route @param lookup_in_vrf - @param classify_table_index - - @param create_vrf_if_needed - @param is_add - 1 if adding the route, 0 if deleting @param is_drop - Drop the packet @param is_unreach - Drop the packet and rate limit send ICMP unreachable @@ -380,7 +387,6 @@ autoreply define ip_add_del_route u32 table_id; u32 classify_table_index; u32 next_hop_table_id; - u8 create_vrf_if_needed; u8 is_add; u8 is_drop; u8 is_unreach; @@ -391,6 +397,7 @@ autoreply define ip_add_del_route u8 is_multipath; u8 is_resolve_host; u8 is_resolve_attached; + u8 is_l2_bridged; /* Is last/not-last message in group of multiple add/del messages. */ u8 not_last; u8 next_hop_weight; @@ -421,7 +428,6 @@ autoreply define ip_mroute_add_del u32 itf_flags; u32 rpf_id; u16 grp_address_length; - u8 create_vrf_if_needed; u8 is_add; u8 is_ipv6; u8 is_local; @@ -538,6 +544,42 @@ define mfib_signal_details u8 ip_packet_data[256]; }; +/** \brief IP punt policer + @param client_index - opaque cookie to identify the sender + @param context - sender context, to match reply w/ request + @param is_add - 1 to add neighbor, 0 to delete + @param is_ipv6 - 1 for IPv6 neighbor, 0 for IPv4 + @param policer_index - Index of policer to use +*/ +autoreply define ip_punt_police +{ + u32 client_index; + u32 context; + u32 policer_index; + u8 is_add; + u8 is_ip6; +}; + +/** \brief IP punt redirect + @param client_index - opaque cookie to identify the sender + @param context - sender context, to match reply w/ request + @param is_add - 1 to add neighbor, 0 to delete + @param is_ipv6 - 1 for IPv6 neighbor, 0 for IPv4 + @param tx_sw_if_index - the TX interface to which traffic shoulde be + redirected. + @param nh - The next-hop to redirect the traffic to. +*/ +autoreply define ip_punt_redirect +{ + u32 client_index; + u32 context; + u32 rx_sw_if_index; + u32 tx_sw_if_index; + u8 is_add; + u8 is_ip6; + u8 nh[16]; +}; + /* * Local Variables: * eval: (c-set-style "gnu")