diff options
Diffstat (limited to 'src/vnet/bonding/bond.api')
-rw-r--r-- | src/vnet/bonding/bond.api | 74 |
1 files changed, 48 insertions, 26 deletions
diff --git a/src/vnet/bonding/bond.api b/src/vnet/bonding/bond.api index 5d9a0563c1a..34fa0204a39 100644 --- a/src/vnet/bonding/bond.api +++ b/src/vnet/bonding/bond.api @@ -19,7 +19,29 @@ the bonding device driver */ -option version = "1.0.2"; +option version = "2.0.0"; + +import "vnet/interface_types.api"; +import "vnet/ethernet/ethernet_types.api"; + +enum bond_mode +{ + BOND_API_MODE_ROUND_ROBIN = 1, + BOND_API_MODE_ACTIVE_BACKUP = 2, + BOND_API_MODE_XOR = 3, + BOND_API_MODE_BROADCAST = 4, + BOND_API_MODE_LACP = 5, +}; + +enum bond_lb_algo +{ + BOND_API_LB_ALGO_L2 = 0, + BOND_API_LB_ALGO_L34 = 1, + BOND_API_LB_ALGO_L23 = 2, + BOND_API_LB_ALGO_RR = 3, + BOND_API_LB_ALGO_BC = 4, + BOND_API_LB_ALGO_AB = 5, +}; /** \brief Initialize a new bond interface with the given paramters @param client_index - opaque cookie to identify the sender @@ -36,11 +58,11 @@ define bond_create u32 client_index; u32 context; u32 id; - u8 use_custom_mac; - u8 mac_address[6]; - u8 mode; - u8 lb; - u8 numa_only; + bool use_custom_mac; + vl_api_mac_address_t mac_address; + vl_api_bond_mode_t mode; + vl_api_bond_lb_algo_t lb; + bool numa_only; }; /** \brief Reply for bond create reply @@ -52,7 +74,7 @@ define bond_create_reply { u32 context; i32 retval; - u32 sw_if_index; + vl_api_interface_index_t sw_if_index; }; /** \brief Delete bond interface @@ -64,7 +86,7 @@ autoreply define bond_delete { u32 client_index; u32 context; - u32 sw_if_index; + vl_api_interface_index_t sw_if_index; }; /** \brief Initialize a new bond interface with the given paramters @@ -79,10 +101,10 @@ define bond_enslave { u32 client_index; u32 context; - u32 sw_if_index; - u32 bond_sw_if_index; - u8 is_passive; - u8 is_long_timeout; + vl_api_interface_index_t sw_if_index; + vl_api_interface_index_t bond_sw_if_index; + bool is_passive; + bool is_long_timeout; }; /** \brief Reply for bond enslave reply @@ -104,7 +126,7 @@ autoreply define bond_detach_slave { u32 client_index; u32 context; - u32 sw_if_index; + vl_api_interface_index_t sw_if_index; }; /** \brief Dump bond interfaces request */ @@ -117,24 +139,24 @@ define sw_interface_bond_dump /** \brief Reply for bond dump request @param sw_if_index - software index of bond interface @param id - ID of interface - @param interface_name - name of interface @param mode - bonding mode @param lb - load balance algo @param numa_only - enable local numa TX for lacp mode @param active_slaves - active slaves count @param slaves - config slave count + @param interface_name - name of interface */ define sw_interface_bond_details { u32 context; - u32 sw_if_index; + vl_api_interface_index_t sw_if_index; u32 id; - u8 interface_name[64]; - u8 mode; - u8 lb; - u8 numa_only; + vl_api_bond_mode_t mode; + vl_api_bond_lb_algo_t lb; + bool numa_only; u32 active_slaves; u32 slaves; + string interface_name[64]; }; /** \brief bond slave dump @@ -146,7 +168,7 @@ define sw_interface_slave_dump { u32 client_index; u32 context; - u32 sw_if_index; + vl_api_interface_index_t sw_if_index; }; /** \brief Reply for slave dump request @@ -160,11 +182,11 @@ define sw_interface_slave_dump define sw_interface_slave_details { u32 context; - u32 sw_if_index; - u8 interface_name[64]; - u8 is_passive; - u8 is_long_timeout; - u8 is_local_numa; + vl_api_interface_index_t sw_if_index; + string interface_name[64]; + bool is_passive; + bool is_long_timeout; + bool is_local_numa; u32 weight; }; @@ -178,7 +200,7 @@ autoreply define sw_interface_set_bond_weight { u32 client_index; u32 context; - u32 sw_if_index; + vl_api_interface_index_t sw_if_index; u32 weight; }; |