30 #include <tins/config.h> 32 #if !defined(TINS_DOT11_DOT11_ASSOC_H) && defined(TINS_HAVE_DOT11) 33 #define TINS_DOT11_DOT11_ASSOC_H 35 #include <tins/dot11/dot11_mgmt.h> 36 #include <tins/macros.h> 84 return Endian::le_to_host(body_.reason_code);
92 void reason_code(uint16_t new_reason_code);
100 uint32_t header_size()
const;
128 struct dot11_disassoc_body {
129 uint16_t reason_code;
132 void write_fixed_parameters(Memory::OutputMemoryStream& stream);
134 dot11_disassoc_body body_;
183 return body_.capability;
193 return body_.capability;
202 return Endian::le_to_host(body_.listen_interval);
210 void listen_interval(uint16_t new_listen_interval);
218 uint32_t header_size()
const;
246 struct dot11_assoc_request_body {
248 uint16_t listen_interval;
251 void write_fixed_parameters(Memory::OutputMemoryStream& stream);
253 dot11_assoc_request_body body_;
302 return body_.capability;
312 return body_.capability;
321 return Endian::le_to_host(body_.status_code);
330 return Endian::le_to_host(body_.aid);
338 void status_code(uint16_t new_status_code);
345 void aid(uint16_t new_aid);
353 uint32_t header_size()
const;
381 struct dot11_assoc_response_body {
383 uint16_t status_code;
387 void write_fixed_parameters(Memory::OutputMemoryStream& stream);
389 dot11_assoc_response_body body_;
438 return body_.capability;
448 return body_.capability;
457 return Endian::le_to_host(body_.listen_interval);
466 return body_.current_ap;
474 void listen_interval(uint16_t new_listen_interval);
489 uint32_t header_size()
const;
517 struct dot11_reassoc_request_body {
519 uint16_t listen_interval;
520 uint8_t current_ap[address_type::address_size];
523 void write_fixed_parameters(Memory::OutputMemoryStream& stream);
525 dot11_reassoc_request_body body_;
574 return body_.capability;
584 return body_.capability;
593 return Endian::le_to_host(body_.status_code);
602 return Endian::le_to_host(body_.aid);
610 void status_code(uint16_t new_status_code);
617 void aid(uint16_t new_aid);
625 uint32_t header_size()
const;
653 struct dot11_reassoc_response_body {
655 uint16_t status_code;
659 void write_fixed_parameters(Memory::OutputMemoryStream& stream);
661 dot11_reassoc_response_body body_;
666 #endif // TINS_DOT11_DOT11_ASSOC_H Dot11AssocRequest * clone() const
Clones this PDU.
Definition: dot11_assoc.h:242
capability_information & capabilities()
Getter for the Capabilities Information.
Definition: dot11_assoc.h:447
PDUType
Enum which identifies each type of PDU.
Definition: pdu.h:127
PDUType pdu_type() const
Getter for the PDU's type.
Definition: dot11_assoc.h:495
uint16_t reason_code() const
Getter for the reason code field.
Definition: dot11_assoc.h:83
bool matches_flag(PDUType flag) const
Check whether this PDU matches the specified flag.
Definition: dot11_mgmt.h:1226
Class representing an Association Request frame in the IEEE 802.11 Protocol.
Definition: dot11_assoc.h:141
const capability_information & capabilities() const
Getter for the Capabilities Information.
Definition: dot11_assoc.h:573
const capability_information & capabilities() const
Getter for the Capabilities Information field.
Definition: dot11_assoc.h:301
Dot11ReAssocResponse * clone() const
Clones this PDU.
Definition: dot11_assoc.h:649
bool matches_flag(PDUType flag) const
Check whether this PDU matches the specified flag.
Definition: dot11_assoc.h:368
Class representing a Disassociation frame in the IEEE 802.11 Protocol.
Definition: dot11_assoc.h:43
Dot11Disassoc * clone() const
Clones this PDU.
Definition: dot11_assoc.h:124
PDUType pdu_type() const
Getter for the PDU's type.
Definition: dot11_assoc.h:106
bool matches_flag(PDUType flag) const
Check whether this PDU matches the specified flag.
Definition: dot11_assoc.h:115
capability_information & capabilities()
Getter for the Capabilities Information.
Definition: dot11_assoc.h:192
IEEE 802.11 ReAssociation Response frame.
Definition: dot11_assoc.h:532
Base class for all management frames in the IEEE 802.11 protocol.
Definition: dot11_mgmt.h:45
Class representing an Association Response frame in the IEEE 802.11 Protocol.
Definition: dot11_assoc.h:260
PDUType pdu_type() const
Getter for the PDU's type.
Definition: dot11_assoc.h:359
uint16_t listen_interval() const
Getter for the listen interval field.
Definition: dot11_assoc.h:201
uint16_t aid() const
Getter for the AID field.
Definition: dot11_assoc.h:601
uint16_t listen_interval() const
Getter for the listen interval field.
Definition: dot11_assoc.h:456
The Tins namespace.
Definition: address_range.h:38
Dot11AssocResponse * clone() const
Clones this PDU.
Definition: dot11_assoc.h:377
Class representing an ReAssociation Request frame in the IEEE 802.11 Protocol.
Definition: dot11_assoc.h:396
bool matches_flag(PDUType flag) const
Check whether this PDU matches the specified flag.
Definition: dot11_assoc.h:233
capability_information & capabilities()
Getter for the Capabilities Information.
Definition: dot11_assoc.h:583
const capability_information & capabilities() const
Getter for the Capabilities Information.
Definition: dot11_assoc.h:182
address_type current_ap() const
Getter for the current ap field.
Definition: dot11_assoc.h:465
uint16_t status_code() const
Getter for the status code field.
Definition: dot11_assoc.h:320
Dot11ReAssocRequest * clone() const
Clones this PDU.
Definition: dot11_assoc.h:513
uint16_t aid() const
Getter for the AID field.
Definition: dot11_assoc.h:329
bool matches_flag(PDUType flag) const
Check whether this PDU matches the specified flag.
Definition: dot11_assoc.h:640
const capability_information & capabilities() const
Getter for the Capabilities Information.
Definition: dot11_assoc.h:437
capability_information & capabilities()
Getter for the Capabilities Information field.
Definition: dot11_assoc.h:311
PDUType pdu_type() const
Getter for the PDU's type.
Definition: dot11_assoc.h:224
PDUType pdu_type() const
Getter for the PDU's type.
Definition: dot11_assoc.h:631
uint16_t status_code() const
Getter for the status code field.
Definition: dot11_assoc.h:592
bool matches_flag(PDUType flag) const
Check whether this PDU matches the specified flag.
Definition: dot11_assoc.h:504