X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=vpp%2Fapi%2Fvpe.api;h=a1ea1b2fe0bee1040b888e7bdc6164cf22734fe9;hb=20c90f765dd0350892421e1dea544752108f4ce9;hp=021cd0c0aa3a8f4efe4809419f04bc754db0d97d;hpb=72a7ded3762ef54867fc8b35ec8082c406c84005;p=vpp.git diff --git a/vpp/api/vpe.api b/vpp/api/vpe.api index 021cd0c0aa3..a1ea1b2fe0b 100644 --- a/vpp/api/vpe.api +++ b/vpp/api/vpe.api @@ -643,7 +643,7 @@ typeonly manual_print manual_endian define ip4_fib_counter { manual_java manual_print manual_endian define vnet_ip4_fib_counters { u32 vrf_id; u32 count; - vl_api_ip4_fib_counter_t c[0]; + vl_api_ip4_fib_counter_t c[count]; }; typeonly manual_print manual_endian define ip6_fib_counter { @@ -656,7 +656,7 @@ typeonly manual_print manual_endian define ip6_fib_counter { manual_java manual_print manual_endian define vnet_ip6_fib_counters { u32 vrf_id; u32 count; - vl_api_ip6_fib_counter_t c[0]; + vl_api_ip6_fib_counter_t c[count]; }; /** \brief Request for a single block of summary stats @@ -2113,8 +2113,9 @@ manual_java define l2_fib_table_dump { define vxlan_gpe_add_del_tunnel { u32 client_index; u32 context; - u32 local; - u32 remote; + u8 is_ipv6; + u8 local[16]; + u8 remote[16]; u32 encap_vrf_id; u32 decap_vrf_id; u8 protocol; @@ -2128,6 +2129,23 @@ define vxlan_gpe_add_del_tunnel_reply { u32 sw_if_index; }; +manual_java define vxlan_gpe_tunnel_dump { + u32 client_index; + u32 context; + u32 sw_if_index; +}; + +manual_java define vxlan_gpe_tunnel_details { + u32 context; + u32 sw_if_index; + u8 local[16]; + u8 remote[16]; + u32 vni; + u8 protocol; + u32 encap_vrf_id; + u32 decap_vrf_id; + u8 is_ipv6; +}; /** \brief add or delete locator_set @param client_index - opaque cookie to identify the sender @@ -2187,6 +2205,7 @@ define lisp_add_del_locator_reply { @param ip_address - array of address bytes @param prefix_len - prefix len @param locator_set_name - name of locator_set to add/del eid-table + @param vni - vitual network instance */ define lisp_add_del_local_eid { u32 client_index; @@ -2196,6 +2215,7 @@ define lisp_add_del_local_eid { u8 ip_address[16]; u8 prefix_len; u8 locator_set_name[64]; + u32 vni; }; /** \brief Reply for local_eid add/del @@ -2325,10 +2345,33 @@ define lisp_gpe_add_del_iface_reply { i32 retval; }; +/** \brief configure or disable LISP PITR node + @param client_index - opaque cookie to identify the sender + @param context - sender context, to match reply w/ request + @param ls_name - locator set name + @param is_add - add locator set if non-zero, else disable pitr +*/ +define lisp_pitr_set_locator_set { + u32 client_index; + u32 context; + u8 is_add; + u8 ls_name[64]; +}; + +/** \brief Reply for lisp_pitr_set_locator_set + @param context - returned sender context, to match reply w/ request + @param retval - return code +*/ +define lisp_pitr_set_locator_set_reply { + u32 context; + i32 retval; +}; + /** \brief add or delete remote static mapping @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request @param is_add - add address if non-zero, else delete + @param del_all - if set, delete all remote mappings @param vni - virtual network instance @param action - negative map-reply action @param eid_is_ip4 - ipv4/6 of source and destination EIDs @@ -2341,6 +2384,7 @@ define lisp_add_del_remote_mapping { u32 client_index; u32 context; u8 is_add; + u8 del_all; u32 vni; u8 action; u8 eid_is_ip4; @@ -2362,6 +2406,53 @@ define lisp_add_del_remote_mapping_reply { i32 retval; }; +/** \brief add or delete map request itr rlocs + @param client_index - opaque cookie to identify the sender + @param context - sender context, to match reply w/ request + @param is_add - add address if non-zero, else delete + @param locator_set_name - locator set name +*/ +define lisp_add_del_map_request_itr_rlocs { + u32 client_index; + u32 context; + u8 is_add; + u8 locator_set_name[64]; +}; + +/** \brief Reply for lisp_add_del_map_request_itr_rlocs + @param context - returned sender context, to match reply w/ request + @param retval - return code +*/ + +define lisp_add_del_map_request_itr_rlocs_reply { + u32 context; + i32 retval; +}; + +/** \brief map/unmap vni to vrf + @param client_index - opaque cookie to identify the sender + @param context - sender context, to match reply w/ request + @param is_add - add or delete mapping + @param vni - virtual network id + @param vrf - vrf +*/ +define lisp_eid_table_add_del_map { + u32 client_index; + u32 context; + u8 is_add; + u32 vni; + u32 vrf; +}; + +/** \brief Reply for lisp_eid_table_add_del_map + @param context - returned sender context, to match reply w/ request + @param retval - return code +*/ +define lisp_eid_table_add_del_map_reply { + u32 context; + i32 retval; +}; + /** \brief LISP locator_set status @param locator_set_name - name of the locator_set @param sw_if_index - sw_if_index of the locator @@ -2399,6 +2490,7 @@ manual_java define lisp_local_eid_table_details { u32 context; u8 locator_set_name[64]; u8 eid_is_ipv6; + u32 vni; u8 eid_ip_address[16]; u8 eid_prefix_len; }; @@ -2412,6 +2504,25 @@ define lisp_local_eid_table_dump { u32 context; }; +/** \brief Shows relationship between vni and vrf + @param vrf - VRF index + @param vni - vitual network instance + */ +manual_java define lisp_eid_table_map_details { + u32 context; + u32 vni; + u32 vrf; +}; + +/** \brief Request for lisp_eid_table_map_details + @param client_index - opaque cookie to identify the sender + @param context - sender context, to match reply w/ request + */ +define lisp_eid_table_map_dump { + u32 client_index; + u32 context; +}; + manual_java define lisp_gpe_tunnel_details { u32 context; u32 tunnels; @@ -2477,6 +2588,23 @@ define lisp_enable_disable_status_dump { u32 context; }; +/** \brief Get LISP map request itr rlocs status + @param context - sender context, to match reply w/ request + @param locator_set_name - name of the locator_set + */ +define lisp_get_map_request_itr_rlocs { + u32 client_index; + u32 context; +}; + +/** \brief Request for map request itr rlocs summary status + */ +define lisp_get_map_request_itr_rlocs_reply { + u32 context; + i32 retval; + u8 locator_set_name[64]; +}; + /* Gross kludge, DGMS */ define interface_name_renumber { u32 client_index; @@ -3401,6 +3529,7 @@ define af_packet_create { define af_packet_create_reply { u32 context; i32 retval; + u32 sw_if_index; }; /** \brief Delete host-interface @@ -3460,3 +3589,366 @@ define policer_add_del_reply { u32 context; i32 retval; }; + +/** \brief Get list of policers + @param client_index - opaque cookie to identify the sender + @param context - sender context, to match reply w/ request + @param match_name_valid - if 0 request all policers otherwise use match_name + @param match_name - policer name +*/ +define policer_dump { + u32 client_index; + u32 context; + + u8 match_name_valid; + u8 match_name[64]; +}; + +/** \brief Policer operational state response. + @param context - sender context, to match reply w/ request + @param name - policer name + @param cir - CIR + @param eir - EIR + @param cb - Committed Burst + @param eb - Excess or Peak Burst + @param rate_type - rate type + @param round_type - rounding type + @param type - policer algorithm + @param single_rate - 1 = single rate policer, 0 = two rate policer + @param color_aware - for hierarchical policing + @param scale - power-of-2 shift amount for lower rates + @param cir_tokens_per_period - number of tokens for each period + @param pir_tokens_per_period - number of tokens for each period for 2-rate policer + @param current_limit - current limit + @param current_bucket - current bucket + @param extended_limit - extended limit + @param extended_bucket - extended bucket + @param last_update_time - last update time +*/ +manual_java define policer_details { + u32 context; + + u8 name[64]; + u32 cir; + u32 eir; + u64 cb; + u64 eb; + u8 rate_type; + u8 round_type; + u8 type; + u8 single_rate; + u8 color_aware; + u32 scale; + u32 cir_tokens_per_period; + u32 pir_tokens_per_period; + u32 current_limit; + u32 current_bucket; + u32 extended_limit; + u32 extended_bucket; + u64 last_update_time; +}; + +/** \brief Create netmap + @param client_index - opaque cookie to identify the sender + @param context - sender context, to match reply w/ request + @param netmap_if_name - interface name + @param hw_addr - interface MAC + @param use_random_hw_addr - use random generated MAC + @param is_pipe - is pipe + @param is_master - 0=slave, 1=master +*/ +define netmap_create { + u32 client_index; + u32 context; + + u8 netmap_if_name[64]; + u8 hw_addr[6]; + u8 use_random_hw_addr; + u8 is_pipe; + u8 is_master; +}; + +/** \brief Create netmap response + @param context - sender context, to match reply w/ request + @param retval - return value for request +*/ +define netmap_create_reply { + u32 context; + i32 retval; +}; + +/** \brief Delete netmap + @param client_index - opaque cookie to identify the sender + @param context - sender context, to match reply w/ request + @param netmap_if_name - interface name +*/ +define netmap_delete { + u32 client_index; + u32 context; + + u8 netmap_if_name[64]; +}; + +/** \brief Delete netmap response + @param context - sender context, to match reply w/ request + @param retval - return value for request +*/ +define netmap_delete_reply { + u32 context; + i32 retval; +}; + +/** \brief Dump mpls gre tunnel table + @param client_index - opaque cookie to identify the sender + @param tunnel_index - gre tunnel identifier or -1 in case of all tunnels +*/ +define mpls_gre_tunnel_dump { + u32 client_index; + u32 context; + i32 tunnel_index; +}; + +/** \brief mpls gre tunnel operational state response + @param tunnel_index - gre tunnel identifier + @param intfc_address - interface ipv4 addr + @param mask_width - interface ipv4 addr mask + @param hw_if_index - interface id + @param l2_only - + @param tunnel_src - tunnel source ipv4 addr + @param tunnel_dst - tunnel destination ipv4 addr + @param outer_fib_index - gre tunnel identifier + @param encap_index - reference to mpls label table + @param nlabels - number of resolved labels + @param labels - resolved labels +*/ +manual_java define mpls_gre_tunnel_details { + u32 context; + u32 tunnel_index; + + u32 intfc_address; + u32 inner_fib_index; + u32 mask_width; + u32 encap_index; + u32 hw_if_index; + u8 l2_only; + u32 tunnel_src; + u32 tunnel_dst; + u32 outer_fib_index; + u32 nlabels; + u32 labels[0]; +}; + +/** \brief Dump mpls eth tunnel table + @param client_index - opaque cookie to identify the sender + @param tunnel_index - eth tunnel identifier or -1 in case of all tunnels +*/ +define mpls_eth_tunnel_dump { + u32 client_index; + u32 context; + i32 tunnel_index; +}; + +/** \brief mpls eth tunnel operational state response + @param tunnel_index - eth tunnel identifier + @param intfc_address - interface ipv4 addr + @param mask_width - interface ipv4 addr mask + @param hw_if_index - interface id + @param l2_only - + @param tunnel_dst_mac - + @param tx_sw_if_index - + @param encap_index - reference to mpls label table + @param nlabels - number of resolved labels + @param labels - resolved labels +*/ +manual_java define mpls_eth_tunnel_details { + u32 context; + u32 tunnel_index; + + u32 intfc_address; + u32 inner_fib_index; + u32 mask_width; + u32 encap_index; + u32 hw_if_index; + u8 l2_only; + u8 tunnel_dst_mac[6]; + u32 tx_sw_if_index; + u32 nlabels; + u32 labels[0]; +}; + +/** \brief Dump mpls fib table + @param client_index - opaque cookie to identify the sender + @param fib_index - mpls fib entry identifier or -1 in case of all entries +*/ +define mpls_fib_encap_dump { + u32 client_index; + u32 context; +}; + +/** \brief mpls fib encap table response + @param fib_index - fib table id + @param dest - destination ipv4 addr + @param s_bit - + @param entry_index - reference to mpls label table + @param nlabels - number of resolved labels + @param labels - resolved labels +*/ +manual_java define mpls_fib_encap_details { + u32 context; + + u32 fib_index; + u32 entry_index; + u32 dest; + u32 s_bit; + u32 nlabels; + u32 labels[0]; +}; + +/** \brief Dump mpls fib decap table + @param client_index - opaque cookie to identify the sender + @param fib_index - mpls fib entry identifier or -1 in case of all entries +*/ +define mpls_fib_decap_dump { + u32 client_index; + u32 context; +}; + +/** \brief mpls fib decap table response + @param fib_index - fib table id + @param entry_index - reference to mpls label table + @param dest - destination ipv4 addr + @param s_bit - + @param label - mpls labels + @param rx_table_id - rx fib id + @param tx_table_id - tx fib id + @param swif_tag - +*/ +manual_java define mpls_fib_decap_details { + u32 context; + + u32 fib_index; + u32 entry_index; + u32 dest; + u32 s_bit; + u32 label; + u32 rx_table_id; + u32 tx_table_id; + u8 swif_tag[8]; +}; + +/** \brief Classify get table IDs request + @param client_index - opaque cookie to identify the sender + @param context - sender context, to match reply w/ request +*/ +define classify_table_ids { + u32 client_index; + u32 context; +}; + +/** \brief Reply for classify get table IDs request + @param context - sender context which was passed in the request + @param count - number of ids returned in response + @param ids - array of classify table ids +*/ +manual_java define classify_table_ids_reply { + u32 context; + u32 retval; + u32 count; + u32 ids[0]; +}; + +/** \brief Classify table ids by interface index request + @param client_index - opaque cookie to identify the sender + @param context - sender context, to match reply w/ request + @param sw_if_index - index of the interface +*/ +define classify_table_by_interface { + u32 client_index; + u32 context; + u32 sw_if_index; +}; + +/** \brief Reply for classify table id by interface index request + @param context - sender context which was passed in the request + @param count - number of ids returned in response + @param sw_if_index - index of the interface + @param l2_table_id - l2 classify table index + @param ip4_table_id - ip4 classify table index + @param ip6_table_id - ip6 classify table index +*/ +manual_java define classify_table_by_interface_reply { + u32 context; + u32 retval; + u32 sw_if_index; + u32 l2_table_id; + u32 ip4_table_id; + u32 ip6_table_id; +}; + +/** \brief Classify table info + @param client_index - opaque cookie to identify the sender + @param context - sender context, to match reply w/ request + @param table_id - classify table index +*/ +define classify_table_info { + u32 client_index; + u32 context; + u32 table_id; +}; + +/** \brief Reply for classify table info request + @param context - sender context which was passed in the request + @param count - number of ids returned in response + @param table_id - classify table index + @param nbuckets - number of buckets when adding a table + @param match_n_vectors - number of match vectors + @param skip_n_vectors - number of skip_n_vectors + @param active_sessions - number of sessions (active entries) + @param next_table_index - index of next table + @param miss_next_index - index of miss table + @param mask[] - match mask +*/ +manual_java define classify_table_info_reply { + u32 context; + i32 retval; + u32 table_id; + u32 nbuckets; + u32 match_n_vectors; + u32 skip_n_vectors; + u32 active_sessions; + u32 next_table_index; + u32 miss_next_index; + u32 mask_length; + u8 mask[0]; +}; + +/** \brief Classify sessions dump request + @param client_index - opaque cookie to identify the sender + @param context - sender context, to match reply w/ request + @param table_id - classify table index +*/ +define classify_session_dump { + u32 client_index; + u32 context; + u32 table_id; +}; + +/** \brief Reply for classify table session dump request + @param context - sender context which was passed in the request + @param count - number of ids returned in response + @param table_id - classify table index + @param hit_next_index - hit_next_index of session + @param opaque_index - for add, opaque_index of session + @param advance - advance value of session + @param match[] - match value for session +*/ +manual_java define classify_session_details { + u32 context; + i32 retval; + u32 table_id; + u32 hit_next_index; + i32 advance; + u32 opaque_index; + u32 match_length; + u8 match[0]; +};