-/* Function called when a LACP PDU is ready to be sent out the given slave */
-typedef void lacp_send_pdu(void *slave, const struct lacp_pdu *);
+enum lacp_time {
+ LACP_TIME_FAST, /* LACP fast mode. */
+ LACP_TIME_SLOW, /* LACP slow mode. */
+ LACP_TIME_CUSTOM /* Nonstandard custom mode. */
+};
+
+enum lacp_status {
+ LACP_NEGOTIATED, /* Successful LACP negotations. */
+ LACP_CONFIGURED, /* LACP is enabled but not negotiated. */
+ LACP_DISABLED /* LACP is not enabled. */
+};
+
+struct lacp_settings {
+ char *name; /* Name (for debugging). */
+ uint8_t id[ETH_ADDR_LEN]; /* System ID. Must be nonzero. */
+ uint16_t priority; /* System priority. */
+ bool active; /* Active or passive mode? */
+ enum lacp_time lacp_time; /* Probe rate. */
+ long long int custom_time; /* Probe interval if LACP_TIME_CUSTOM. */
+ bool heartbeat; /* Heartbeat mode. */
+};