|
| typedef HWAddress< 6 > | address_type |
| |
| enum | endian_type { BE
, LE
} |
| |
| enum | PDUType {
RAW
, ETHERNET_II
, IEEE802_3
, DOT3 = IEEE802_3
,
RADIOTAP
, DOT11
, DOT11_ACK
, DOT11_ASSOC_REQ
,
DOT11_ASSOC_RESP
, DOT11_AUTH
, DOT11_BEACON
, DOT11_BLOCK_ACK
,
DOT11_BLOCK_ACK_REQ
, DOT11_CF_END
, DOT11_DATA
, DOT11_CONTROL
,
DOT11_DEAUTH
, DOT11_DIASSOC
, DOT11_END_CF_ACK
, DOT11_MANAGEMENT
,
DOT11_PROBE_REQ
, DOT11_PROBE_RESP
, DOT11_PS_POLL
, DOT11_REASSOC_REQ
,
DOT11_REASSOC_RESP
, DOT11_RTS
, DOT11_QOS_DATA
, LLC
,
SNAP
, IP
, ARP
, TCP
,
UDP
, ICMP
, BOOTP
, DHCP
,
EAPOL
, RC4EAPOL
, RSNEAPOL
, DNS
,
LOOPBACK
, IPv6
, ICMPv6
, SLL
,
DHCPv6
, DOT1AD
, DOT1Q
, PPPOE
,
STP
, PPI
, IPSEC_AH
, IPSEC_ESP
,
PKTAP
, MPLS
, DOT11_CONTROL_TA
, VXLAN
,
UNKNOWN = 999
, USER_DEFINED_PDU = 1000
} |
| | Enum which identifies each type of PDU. More...
|
| |
| typedef byte_array | serialization_type |
| |
|
|
| STP () |
| | Default constructor.
|
| |
| | STP (const uint8_t *buffer, uint32_t total_sz) |
| | Constructs a STP object from a buffer.
|
| |
| uint16_t | proto_id () const |
| | Getter for the Protocol ID field.
|
| |
| uint8_t | proto_version () const |
| | Getter for the Protocol Version field.
|
| |
| uint8_t | bpdu_type () const |
| | Getter for the BDU Type field.
|
| |
| uint8_t | bpdu_flags () const |
| | Getter for the BDU Flags field.
|
| |
| uint32_t | root_path_cost () const |
| | Getter for the Root Path Cost field.
|
| |
| uint16_t | port_id () const |
| | Getter for the Port ID field.
|
| |
| uint16_t | msg_age () const |
| | Getter for the Message Age field.
|
| |
| uint16_t | max_age () const |
| | Getter for the Maximum Age field.
|
| |
| uint16_t | hello_time () const |
| | Getter for the Hello Time field.
|
| |
| uint16_t | fwd_delay () const |
| | Getter for the Forward Delay field.
|
| |
| bpdu_id_type | root_id () const |
| | Getter for the Root ID field.
|
| |
| bpdu_id_type | bridge_id () const |
| | Getter for the Bridge ID field.
|
| |
| PDUType | pdu_type () const |
| | Getter for the PDU's type.
|
| |
| STP * | clone () const |
| |
| uint32_t | header_size () const |
| | Returns the header size.
|
| |
| void | proto_id (uint16_t new_proto_id) |
| | Setter for the Protocol ID field.
|
| |
| void | proto_version (uint8_t new_proto_version) |
| | Setter for the Protocol Version field.
|
| |
| void | bpdu_type (uint8_t new_bpdu_type) |
| | Setter for the BPDU Type field.
|
| |
| void | bpdu_flags (uint8_t new_bpdu_flags) |
| | Setter for the BPDU Flags field.
|
| |
| void | root_path_cost (uint32_t new_root_path_cost) |
| | Setter for the Root Path Cost field.
|
| |
| void | port_id (uint16_t new_port_id) |
| | Setter for the Port ID field.
|
| |
| void | msg_age (uint16_t new_msg_age) |
| | Setter for the Message Age field.
|
| |
| void | max_age (uint16_t new_max_age) |
| | Setter for the Maximum Age field.
|
| |
| void | hello_time (uint16_t new_hello_time) |
| | Setter for the Hello Time field.
|
| |
| void | fwd_delay (uint16_t new_fwd_delay) |
| | Setter for the Forward Delay field.
|
| |
| void | root_id (const bpdu_id_type &id) |
| | Setter for the Root ID field.
|
| |
| void | bridge_id (const bpdu_id_type &id) |
| | Setter for the Bridge ID field.
|
| |
|
| PDU () |
| | Default constructor.
|
| |
| | PDU (PDU &&rhs) TINS_NOEXCEPT |
| | Move constructor.
|
| |
| PDU & | operator= (PDU &&rhs) TINS_NOEXCEPT |
| | Move assignment operator.
|
| |
| virtual | ~PDU () |
| | PDU destructor.
|
| |
| virtual uint32_t | trailer_size () const |
| | Trailer's size.
|
| |
| uint32_t | size () const |
| | The whole chain of PDU's size, including this one.
|
| |
| virtual uint32_t | advertised_size () const |
| | The whole chain of PDU's advertised size, including this one.
|
| |
| PDU * | inner_pdu () const |
| | Getter for the inner PDU.
|
| |
| PDU * | parent_pdu () const |
| |
| PDU * | release_inner_pdu () |
| | Releases the inner PDU.
|
| |
| void | inner_pdu (PDU *next_pdu) |
| | Sets the child PDU.
|
| |
| void | inner_pdu (const PDU &next_pdu) |
| | Sets the child PDU.
|
| |
| serialization_type | serialize () |
| | Serializes the whole chain of PDU's, including this one.
|
| |
| template<typename T > |
| T * | find_pdu (PDUType type=T::pdu_flag) |
| | Finds and returns the first PDU that matches the given flag.
|
| |
| template<typename T > |
| const T * | find_pdu (PDUType type=T::pdu_flag) const |
| | Finds and returns the first PDU that matches the given flag.
|
| |
| template<typename T > |
| T & | rfind_pdu (PDUType type=T::pdu_flag) |
| | Finds and returns the first PDU that matches the given flag.
|
| |
| template<typename T > |
| const T & | rfind_pdu (PDUType type=T::pdu_flag) const |
| | Finds and returns the first PDU that matches the given flag.
|
| |
| virtual void | send (PacketSender &sender, const NetworkInterface &iface) |
| | Send the stack of PDUs through a PacketSender.
|
| |
| virtual PDU * | recv_response (PacketSender &sender, const NetworkInterface &iface) |
| | Receives a matching response for this packet.
|
| |
| virtual bool | matches_response (const uint8_t *ptr, uint32_t total_sz) const |
| | Check whether ptr points to a valid response for this PDU.
|
| |
| virtual bool | matches_flag (PDUType flag) const |
| | Check whether this PDU matches the specified flag.
|
| |
Represents a Spanning Tree Protocol PDU.