Class Dot112040BssCoexistenceElement

java.lang.Object
org.pcap4j.packet.Dot11InformationElement
org.pcap4j.packet.Dot112040BssCoexistenceElement
All Implemented Interfaces:
Serializable

public final class Dot112040BssCoexistenceElement extends Dot11InformationElement
IEEE802.11 20/40 BSS Coexistence element
        1                 1                  1
+-----------------+-----------------+-----------------+
|   Element ID    |     Length      |Information field|
+-----------------+-----------------+-----------------+
Element ID: 72
The 20/40 BSS Coexistence element is used by STAs to exchange information that affects 20/40 BSS coexistence. The structure of the 20/40 BSS Coexistence Information field is as follows:
      B0            B1            B2            B3            B4          B5,6,7
+-------------+-------------+-------------+-------------+-------------+-------------+
|Information  |Forty MHz    |20 MHz BSS   |OBSS Scanning|OBSS Scanning|  Reserved   |
|Request      |Intolerant   |Width Request|Exemption    |Exemption    |             |
|             |             |             |Request      |Grant        |             |
+-------------+-------------+-------------+-------------+-------------+-------------+
The Information Request field is used to indicate that a transmitting STA is requesting the recipient to transmit a 20/40 BSS Coexistence Management frame with the transmitting STA as the recipient. The Forty MHz Intolerant field is set to 1 to prohibit an AP that receives this information or reports of this information from operating a 20/40 MHz BSS. When equal to 0, it does not prohibit a receiving AP from operating a 20/40 MHz BSS. This field is used for inter-BSS communication. The definition of this field is the same as the definition of the Forty MHz Intolerant field in the HT Capabilities element. The 20 MHz BSS Width Request field is set to 1 to prohibit a receiving AP from operating its BSS as a 20/40 MHz BSS. Otherwise, it is set to 0. This field is used for intra-BSS communication. The OBSS Scanning Exemption Request field is set to 1 to indicate that the transmitting non-AP STA is requesting the BSS to allow the STA to be exempt from OBSS scanning. Otherwise, it is set to 0. The OBSS Scanning Exemption Request field is reserved when transmitted by an AP. The OBSS Scanning Exemption Request field is reserved when a 20/40 BSS Coexistence element is included in a group addressed frame. The OBSS Scanning Exemption Grant field is set to 1 by an AP to indicate that the receiving STA is exempted from performing OBSS Scanning. Otherwise, it is set to 0. The OBSS Scanning Exemption Grant field is reserved when transmitted by a non-AP STA. The OBSS Scanning Exemption Grant field is reserved when a 20/40 BSS Coexistence element is included in a group addressed frame.
Since:
pcap4j 1.7.0
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      See Also:
    • informationRequested

      private final boolean informationRequested
    • fortyMhzIntolerant

      private final boolean fortyMhzIntolerant
    • twentyMhzBssWidthRequested

      private final boolean twentyMhzBssWidthRequested
    • obssScanningExemptionRequested

      private final boolean obssScanningExemptionRequested
    • obssScanningExemptionGranted

      private final boolean obssScanningExemptionGranted
    • bit5

      private final boolean bit5
    • bit6

      private final boolean bit6
    • bit7

      private final boolean bit7
  • Constructor Details

    • Dot112040BssCoexistenceElement

      private Dot112040BssCoexistenceElement(byte[] rawData, int offset, int length) throws IllegalRawDataException
      Parameters:
      rawData - rawData
      offset - offset
      length - length
      Throws:
      IllegalRawDataException - if parsing the raw data fails.
    • Dot112040BssCoexistenceElement

      private Dot112040BssCoexistenceElement(Dot112040BssCoexistenceElement.Builder builder)
      Parameters:
      builder - builder
  • Method Details

    • newInstance

      public static Dot112040BssCoexistenceElement newInstance(byte[] rawData, int offset, int length) throws IllegalRawDataException
      A static factory method. This method validates the arguments by ByteArrays.validateBounds(byte[], int, int), which may throw exceptions undocumented here.
      Parameters:
      rawData - rawData
      offset - offset
      length - length
      Returns:
      a new Dot112040BssCoexistenceElement object.
      Throws:
      IllegalRawDataException - if parsing the raw data fails.
    • isInformationRequested

      public boolean isInformationRequested()
      Returns:
      true if the Information Request field is set to 1; otherwise false.
    • is40MhzIntolerant

      public boolean is40MhzIntolerant()
      Returns:
      true if the Forty MHz Intolerant field is set to 1; otherwise false.
    • is20MhzBssWidthRequested

      public boolean is20MhzBssWidthRequested()
      Returns:
      true if the 20 MHz BSS Width Request field is set to 1; otherwise false.
    • isObssScanningExemptionRequested

      public boolean isObssScanningExemptionRequested()
      Returns:
      true if the OBSS Scanning Exemption Request field is set to 1; otherwise false.
    • isObssScanningExemptionGranted

      public boolean isObssScanningExemptionGranted()
      Returns:
      true if the OBSS Scanning Exemption Grant field is set to 1; otherwise false.
    • getBit5

      public boolean getBit5()
      Returns:
      true if the bit 5 of the Information field is set to 1; otherwise false.
    • getBit6

      public boolean getBit6()
      Returns:
      true if the bit 6 of the Information field is set to 1; otherwise false.
    • getBit7

      public boolean getBit7()
      Returns:
      true if bit 7 of the Information field is set to 1; otherwise false.
    • length

      public int length()
      Specified by:
      length in class Dot11InformationElement
      Returns:
      the length
    • getRawData

      public byte[] getRawData()
      Specified by:
      getRawData in class Dot11InformationElement
      Returns:
      the raw data.
    • getBuilder

      Returns:
      a new Builder object populated with this object's fields.
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Dot11InformationElement
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Dot11InformationElement
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • toString

      public String toString(String indent)
      Parameters:
      indent - indent
      Returns:
      the string representation of this object.