X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Fip%2Fip.api;h=85e4b8e04c3408d535737d899818a0c3fdf733df;hb=810086d8fd08445919ae03bf36161037e53a712a;hp=4b7019f087ed95d4af60772c57860f9d6d11a24c;hpb=6f6311560380d0e992f710558e213df1b098ef94;p=vpp.git diff --git a/src/vnet/ip/ip.api b/src/vnet/ip/ip.api index 4b7019f087e..85e4b8e04c3 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 @@ -366,11 +368,18 @@ autoreply define sw_interface_ip6_set_link_local_address @param is_unreach - Drop the packet and rate limit send ICMP unreachable @param is_prohibit - Drop the packet and rate limit send ICMP prohibited @param is_ipv6 - 0 if an ip4 route, else ip6 - @param is_local - + @param is_local - The route will result in packets sent to VPP IP stack + @param is_udp_encap - The path describes a UDP-o-IP encapsulation. @param is_classify - @param is_multipath - Set to 1 if this is a multipath route, else 0 - @param not_last - Is last or not last msg in group of multiple add/del msgs - @param next_hop_weight - + @param is_source_lookup - The the path is a deaggregate path (i.e. a lookup + in another table) is the lookup on the packet's + source address or destination. + @param next_hop_weight - Weight for Unequal cost multi-path + @param next_hop_preference - Path that are up that have the best preference are + are used for forwarding. lower value is better. + @param next_hop_id - Used when the path resolves via an object that has a unique + identifier. @param dst_address_length - @param dst_address[16] - @param next_hop_address[16] - @@ -386,6 +395,7 @@ autoreply define ip_add_del_route u32 table_id; u32 classify_table_index; u32 next_hop_table_id; + u32 next_hop_id; u8 create_vrf_if_needed; u8 is_add; u8 is_drop; @@ -398,10 +408,11 @@ autoreply define ip_add_del_route 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 is_source_lookup; + u8 is_udp_encap; u8 next_hop_weight; u8 next_hop_preference; + u8 next_hop_proto; u8 dst_address_length; u8 dst_address[16]; u8 next_hop_address[16]; @@ -545,6 +556,53 @@ 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]; +}; + +autoreply define ip_container_proxy_add_del +{ + u32 client_index; + u32 context; + u8 ip[16]; + u8 is_ip4; + u8 plen; + u32 sw_if_index; + u8 is_add; +}; + /* * Local Variables: * eval: (c-set-style "gnu")