X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Fip%2Fip.api;h=5cd0dfaac54d19ed925e87b2b6a44895fb1f5753;hb=14260393;hp=c5be0c67fbb4a70c59fc4a7f5764898a2bee1d84;hpb=0053de63ec4bf8b9bce7817f1b61c9791baf6c26;p=vpp.git diff --git a/src/vnet/ip/ip.api b/src/vnet/ip/ip.api index c5be0c67fbb..5cd0dfaac54 100644 --- a/src/vnet/ip/ip.api +++ b/src/vnet/ip/ip.api @@ -1,5 +1,6 @@ +/* Hey Emacs use -*- mode: C -*- */ /* - * Copyright (c) 2016 Cisco and/or its affiliates. + * Copyright (c) 2018 Cisco and/or its affiliates. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at: @@ -19,8 +20,10 @@ called through a shared memory interface. */ -option version = "1.2.4"; +option version = "1.3.0"; +import "vnet/ip/ip_types.api"; import "vnet/fib/fib_types.api"; +import "vnet/ethernet/ethernet_types.api"; /** \brief Add / del table request A table can be added multiple times, but need be deleted only once. @@ -68,6 +71,7 @@ manual_endian manual_print define ip_fib_details u8 address_length; u8 address[4]; u32 count; + u32 stats_index; vl_api_fib_path_t path[count]; }; @@ -95,6 +99,7 @@ manual_endian manual_print define ip6_fib_details u8 address_length; u8 address[16]; u32 count; + u32 stats_index; vl_api_fib_path_t path[count]; }; @@ -115,12 +120,15 @@ define ip_neighbor_dump /** \brief IP neighboors dump response @param context - sender context which was passed in the request @param sw_if_index - The interface used to reach the neighbor + @param stats_index - An index in the stats segment that can be used to read + the counters for this neighbour. @param is_static - [1|0] to indicate if neighbor is statically configured @param is_ipv6 - [1|0] to indicate if address family is ipv[6|4] */ define ip_neighbor_details { u32 context; u32 sw_if_index; + u32 stats_index; u8 is_static; u8 is_ipv6; u8 mac_address[6]; @@ -141,7 +149,7 @@ define ip_neighbor_details { @param mac_address - l2 address of the neighbor @param dst_address - ip4 or ip6 address of the neighbor */ -autoreply define ip_neighbor_add_del +define ip_neighbor_add_del { u32 client_index; u32 context; @@ -155,6 +163,13 @@ autoreply define ip_neighbor_add_del u8 dst_address[16]; }; +define ip_neighbor_add_del_reply +{ + u32 context; + i32 retval; + u32 stats_index; +}; + /** \brief Set the ip flow hash config for a fib request @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request @@ -286,7 +301,6 @@ autoreply define ip6nd_proxy_add_del */ define ip6nd_proxy_details { - u32 client_index; u32 context; u32 sw_if_index; u8 address[16]; @@ -388,7 +402,7 @@ autoreply define sw_interface_ip6_set_link_local_address @param next_hop_out_label_stack - the next-hop output label stack, outer most first @param next_hop_via_label - The next-hop is a resolved via a local label */ -autoreply define ip_add_del_route +define ip_add_del_route { u32 client_index; u32 context; @@ -421,6 +435,13 @@ autoreply define ip_add_del_route vl_api_fib_mpls_label_t next_hop_out_label_stack[next_hop_n_out_labels]; }; +define ip_add_del_route_reply +{ + u32 context; + i32 retval; + u32 stats_index; +}; + /** \brief Add / del route request @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request @@ -429,7 +450,7 @@ autoreply define ip_add_del_route @param next_hop_afi - Use dpo_proto_t FIXME */ -autoreply define ip_mroute_add_del +define ip_mroute_add_del { u32 client_index; u32 context; @@ -449,6 +470,13 @@ autoreply define ip_mroute_add_del u8 nh_address[16]; }; +define ip_mroute_add_del_reply +{ + u32 context; + i32 retval; + u32 stats_index; +}; + /** \brief Dump IP multicast fib table @param client_index - opaque cookie to identify the sender */ @@ -476,6 +504,7 @@ manual_endian manual_print define ip_mfib_details u8 grp_address[4]; u8 src_address[4]; u32 count; + u32 stats_index; vl_api_fib_path_t path[count]; }; @@ -509,7 +538,6 @@ manual_endian manual_print define ip6_mfib_details define ip_address_details { - u32 client_index; u32 context; u8 ip[16]; u8 prefix_length; @@ -531,7 +559,6 @@ define ip_address_dump */ define ip_unnumbered_details { - u32 client_index; u32 context; u32 sw_if_index; u32 ip_sw_if_index; @@ -549,8 +576,8 @@ define ip_unnumbered_dump define ip_details { - u32 sw_if_index; u32 context; + u32 sw_if_index; u8 is_ipv6; }; @@ -569,7 +596,6 @@ define mfib_signal_dump define mfib_signal_details { - u32 client_index; u32 context; u32 sw_if_index; u32 table_id; @@ -868,7 +894,6 @@ service { typeonly define proxy_arp { u32 vrf_id; - u8 is_add; u8 low_address[4]; u8 hi_address[4]; }; @@ -1014,7 +1039,6 @@ define ip_reassembly_get define ip_reassembly_get_reply { - u32 client_index; u32 context; i32 retval; u32 timeout_ms;