X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=lib%2Flacp.h;h=0fb797e89b790173012048465b06c800bb2454dc;hb=7fae24e67c95b1dbe93497135ae533e39b61e110;hp=8371feceb7641e42698a55a97993bda998fc781f;hpb=81aee5f901556e778069a70613d99a87ddcf2116;p=openvswitch diff --git a/lib/lacp.h b/lib/lacp.h index 8371fece..0fb797e8 100644 --- a/lib/lacp.h +++ b/lib/lacp.h @@ -33,8 +33,7 @@ #define LACP_FAST_TIME_TX 1000 /* Fast transmission rate. */ #define LACP_SLOW_TIME_TX 30000 /* Slow transmission rate. */ -#define LACP_FAST_TIME_RX (LACP_FAST_TIME_TX * 3) /* Fast receive rate. */ -#define LACP_SLOW_TIME_RX (LACP_SLOW_TIME_TX * 3) /* Slow receive rate. */ +#define LACP_RX_MULTIPLIER 3 /* Multiply by TX rate to get RX rate. */ #define LACP_INFO_LEN 15 struct lacp_info { @@ -76,13 +75,20 @@ const struct lacp_pdu *parse_lacp_packet(const struct ofpbuf *); /* LACP Protocol Implementation. */ +enum lacp_time { + LACP_TIME_FAST, + LACP_TIME_SLOW, + LACP_TIME_CUSTOM +}; + struct lacp_settings { char *name; uint8_t id[ETH_ADDR_LEN]; uint16_t priority; bool active; - bool fast; - bool strict; + enum lacp_time lacp_time; + long long int custom_time; + bool heartbeat; }; void lacp_init(void); @@ -100,6 +106,7 @@ struct lacp_slave_settings { char *name; uint16_t id; uint16_t priority; + uint16_t key; }; void lacp_slave_register(struct lacp *, void *slave_,