enum bond_mode {
BM_TCP, /* Transport Layer Load Balance. */
BM_SLB, /* Source Load Balance. */
- BM_STABLE, /* Stable. */
BM_AB /* Active Backup. */
};
/* Basics. */
struct bond *bond_create(const struct bond_settings *);
-void bond_destroy(struct bond *);
+void bond_unref(struct bond *);
+struct bond *bond_ref(const struct bond *);
bool bond_reconfigure(struct bond *, const struct bond_settings *);
-void bond_slave_register(struct bond *, void *slave_,
- uint32_t stable_id, struct netdev *);
+void bond_slave_register(struct bond *, void *slave_, struct netdev *);
void bond_slave_set_netdev(struct bond *, void *slave_, struct netdev *);
void bond_slave_unregister(struct bond *, const void *slave);
enum bond_verdict bond_check_admissibility(struct bond *, const void *slave_,
const uint8_t eth_dst[ETH_ADDR_LEN],
tag_type *);
-void *bond_choose_output_slave(struct bond *,
- const struct flow *, uint16_t vlan, tag_type *);
+void *bond_choose_output_slave(struct bond *, const struct flow *,
+ struct flow_wildcards *, uint16_t vlan,
+ tag_type *);
/* Rebalancing. */
void bond_account(struct bond *, const struct flow *, uint16_t vlan,