1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
//! Link Aggregation Control Protocol (LACP, IEEE 802.3ad / IEEE 802.1AX) AST definitions.
//!
//! Defines the abstract syntax tree node for IEEE 802.1AX Link Aggregation Control Protocol
//! Data Units (LACPDUs) transmitted over Ethernet Slow Protocols EtherType `0x8809` to the
//! link-constrained multicast address `01:80:C2:00:00:02`. Each 110-byte LACPDU begins with
//! Subtype `0x01` and Version `0x01`, followed by the 20-byte Actor Information TLV (`0x01`),
//! 20-byte Partner Information TLV (`0x02`), 16-byte Collector Information TLV (`0x03`),
//! Terminator TLV (`0x00`), and 50 bytes of zero padding.
//!
//! Canonical `.fasm` syntax:
//! `a -> b LACP [ACTOR_SYS <mac>] [ACTOR_KEY <u16>] [ACTOR_PORT <u16>] [ACTOR_STATE <u8>] [PARTNER_SYS <mac>] [PARTNER_KEY <u16>] [PARTNER_PORT <u16>] [PARTNER_STATE <u8>]`
use PhantomData;
/// Link Aggregation Control Protocol (IEEE 802.3ad / IEEE 802.1AX) frame specification.
///
/// Syntax mapping: `LACP [ACTOR_SYS <mac>] [ACTOR_KEY <u16>] [ACTOR_PORT <u16>] [ACTOR_STATE <u8>] [PARTNER_SYS <mac>] [PARTNER_KEY <u16>] [PARTNER_PORT <u16>] [PARTNER_STATE <u8>]`