X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=lib%2Fbond.h;h=9eb1b8fb8bfb8fab7d477551f037dd653dbbee86;hb=d0040604727e1582abbc28fa62903a822453c99f;hp=56ca5b98a997ce7eafdf5c4da7fc85100ff5a2a7;hpb=1670c579a82921fedd8b2c20818919f6b5a9c330;p=openvswitch diff --git a/lib/bond.h b/lib/bond.h index 56ca5b98..9eb1b8fb 100644 --- a/lib/bond.h +++ b/lib/bond.h @@ -26,6 +26,7 @@ struct flow; struct netdev; struct ofpbuf; +enum lacp_status; /* How flows are balanced among bond slaves. */ enum bond_mode { @@ -68,18 +69,16 @@ void bond_slave_register(struct bond *, void *slave_, void bond_slave_set_netdev(struct bond *, void *slave_, struct netdev *); void bond_slave_unregister(struct bond *, const void *slave); -void bond_run(struct bond *, struct tag_set *, bool lacp_negotiated); +void bond_run(struct bond *, struct tag_set *, enum lacp_status); void bond_wait(struct bond *); -/* LACP. */ -void bond_slave_set_lacp_may_enable(struct bond *, void *slave_, - bool may_enable); +void bond_slave_set_may_enable(struct bond *, void *slave_, bool may_enable); /* Special MAC learning support for SLB bonding. */ bool bond_should_send_learning_packets(struct bond *); -int bond_send_learning_packet(struct bond *, - const uint8_t eth_src[ETH_ADDR_LEN], - uint16_t vlan); +struct ofpbuf *bond_compose_learning_packet(struct bond *, + const uint8_t eth_src[ETH_ADDR_LEN], + uint16_t vlan, void **port_aux); /* Packet processing. */ enum bond_verdict {