X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fplugins%2Fgbp%2Fgbp.api;h=5092a5e26a83608b82143bace2e81311d54df3ef;hb=59f71132e;hp=31bf3f2897006aedf4c1a4926d46f7374b2874fc;hpb=7bd343509fa30f9713b6efa9a4acb83e0ab86cfb;p=vpp.git diff --git a/src/plugins/gbp/gbp.api b/src/plugins/gbp/gbp.api index 31bf3f28970..5092a5e26a8 100644 --- a/src/plugins/gbp/gbp.api +++ b/src/plugins/gbp/gbp.api @@ -18,20 +18,25 @@ option version = "2.0.0"; import "vnet/ip/ip_types.api"; import "vnet/ethernet/ethernet_types.api"; +import "vnet/interface_types.api"; enum gbp_bridge_domain_flags { GBP_BD_API_FLAG_NONE = 0, GBP_BD_API_FLAG_DO_NOT_LEARN = 1, + GBP_BD_API_FLAG_UU_FWD_DROP = 2, + GBP_BD_API_FLAG_MCAST_DROP = 4, + GBP_BD_API_FLAG_UCAST_ARP = 8, }; typedef gbp_bridge_domain { u32 bd_id; + u32 rd_id; vl_api_gbp_bridge_domain_flags_t flags; - u32 bvi_sw_if_index; - u32 uu_fwd_sw_if_index; - u32 bm_flood_sw_if_index; + vl_api_interface_index_t bvi_sw_if_index; + vl_api_interface_index_t uu_fwd_sw_if_index; + vl_api_interface_index_t bm_flood_sw_if_index; }; manual_print autoreply define gbp_bridge_domain_add @@ -57,13 +62,16 @@ define gbp_bridge_domain_details vl_api_gbp_bridge_domain_t bd; }; +typedef u16 gbp_scope; + typedef gbp_route_domain { u32 rd_id; u32 ip4_table_id; u32 ip6_table_id; - u32 ip4_uu_sw_if_index; - u32 ip6_uu_sw_if_index; + vl_api_interface_index_t ip4_uu_sw_if_index; + vl_api_interface_index_t ip6_uu_sw_if_index; + vl_api_gbp_scope_t scope; }; manual_print autoreply define gbp_route_domain_add @@ -111,7 +119,7 @@ typedef gbp_endpoint_tun typedef gbp_endpoint { - u32 sw_if_index; + vl_api_interface_index_t sw_if_index; u16 sclass; vl_api_gbp_endpoint_flags_t flags; vl_api_mac_address_t mac; @@ -160,13 +168,13 @@ typedef gbp_endpoint_retention u32 remote_ep_timeout; }; -typeonly define gbp_endpoint_group +typedef gbp_endpoint_group { u32 vnid; u16 sclass; u32 bd_id; u32 rd_id; - u32 uplink_sw_if_index; + vl_api_interface_index_t uplink_sw_if_index; vl_api_gbp_endpoint_retention_t retention; }; @@ -195,18 +203,18 @@ define gbp_endpoint_group_details vl_api_gbp_endpoint_group_t epg; }; -typeonly define gbp_recirc +typedef gbp_recirc { - u32 sw_if_index; + vl_api_interface_index_t sw_if_index; u16 sclass; - u8 is_ext; + bool is_ext; }; manual_print autoreply define gbp_recirc_add_del { u32 client_index; u32 context; - u8 is_add; + bool is_add; vl_api_gbp_recirc_t recirc; }; @@ -228,12 +236,13 @@ enum gbp_subnet_type GBP_API_SUBNET_STITCHED_INTERNAL, GBP_API_SUBNET_STITCHED_EXTERNAL, GBP_API_SUBNET_L3_OUT, + GBP_API_SUBNET_ANON_L3_OUT, }; -typeonly define gbp_subnet +typedef gbp_subnet { u32 rd_id; - u32 sw_if_index; + vl_api_interface_index_t sw_if_index; u16 sclass; vl_api_gbp_subnet_type_t type; vl_api_prefix_t prefix; @@ -243,7 +252,7 @@ manual_print autoreply define gbp_subnet_add_del { u32 client_index; u32 context; - u8 is_add; + bool is_add; vl_api_gbp_subnet_t subnet; }; @@ -296,6 +305,7 @@ typedef gbp_rule typedef gbp_contract { + vl_api_gbp_scope_t scope; u16 sclass; u16 dclass; u32 acl_index; @@ -305,13 +315,19 @@ typedef gbp_contract vl_api_gbp_rule_t rules[n_rules]; }; -manual_print autoreply define gbp_contract_add_del +manual_print define gbp_contract_add_del { u32 client_index; u32 context; - u8 is_add; + bool is_add; vl_api_gbp_contract_t contract; }; +define gbp_contract_add_del_reply +{ + u32 context; + i32 retval; + u32 stats_index; +}; define gbp_contract_dump { @@ -356,7 +372,7 @@ define gbp_vxlan_tunnel_add_reply { u32 context; i32 retval; - u32 sw_if_index; + vl_api_interface_index_t sw_if_index; }; manual_print autoreply define gbp_vxlan_tunnel_del @@ -378,18 +394,25 @@ define gbp_vxlan_tunnel_details vl_api_gbp_vxlan_tunnel_t tunnel; }; -typeonly define gbp_ext_itf +enum gbp_ext_itf_flags +{ + GBP_API_EXT_ITF_F_NONE = 0, + GBP_API_EXT_ITF_F_ANON = 1, +}; + +typedef gbp_ext_itf { - u32 sw_if_index; + vl_api_interface_index_t sw_if_index; u32 bd_id; u32 rd_id; + vl_api_gbp_ext_itf_flags_t flags; }; manual_print autoreply define gbp_ext_itf_add_del { u32 client_index; u32 context; - u8 is_add; + bool is_add; vl_api_gbp_ext_itf_t ext_itf; };