| 1782 | |
| 1783 | |
| 1784 | class Dot11BSSTMRequest(Packet): |
| 1785 | name = "BSS Transition Management Request" |
| 1786 | fields_desc = [ |
| 1787 | ByteField("token", 0), |
| 1788 | FlagsField("mode", 0, 8, btm_request_mode), |
| 1789 | LEShortField("disassociation_timer", 0), |
| 1790 | ByteField("validity_interval", 0), |
| 1791 | ConditionalField( |
| 1792 | PacketField( |
| 1793 | "termination_duration", |
| 1794 | BSSTerminationDuration(), |
| 1795 | BSSTerminationDuration |
| 1796 | ), |
| 1797 | lambda p: p.mode and p.mode.BSS_Termination_Included |
| 1798 | ), |
| 1799 | ConditionalField( |
| 1800 | ByteField("url_len", 0), |
| 1801 | lambda p: p.mode and p.mode.ESS_Disassociation_Imminent |
| 1802 | ), |
| 1803 | ConditionalField( |
| 1804 | StrLenField("url", "", length_from=lambda p: p.url_len), |
| 1805 | lambda p: p.mode and p.mode.ESS_Disassociation_Imminent != 0 |
| 1806 | ), |
| 1807 | ConditionalField( |
| 1808 | PacketListField( |
| 1809 | "neighbor_report", |
| 1810 | NeighborReport(), |
| 1811 | NeighborReport |
| 1812 | ), |
| 1813 | lambda p: p.mode and p.mode.Preferred_Candidate_List_Included |
| 1814 | ) |
| 1815 | ] |
| 1816 | |
| 1817 | |
| 1818 | # 802.11-2016 9.6.14.10 |
nothing calls this directly
no test coverage detected
searching dependent graphs…