#
---
_namespace: wfa_map

tlvClientAssociationControlRequest:
  _type: class
  _is_tlv_class : True
  type:
    _type: eTlvTypeMap
    _value_const: TLV_CLIENT_ASSOCIATION_CONTROL_REQUEST
  length: uint16_t
  bssid_to_block_client: sMacAddr
  association_control: eAssociationControl
  validity_period_sec:
    _type: uint16_t
    # According to section 11.6 in the Multi-AP Specification
    # The Validity Period field in a Client Association Control Request message 
    # with Association Control field set to 0x01 (Client Unblocking) is ignored
    # setting default to 0 for all cases
    _value: 0
  sta_list_length:
    _type: uint8_t
    _length_var: True
  sta_list:
    _type: sMacAddr
    _length: [ sta_list_length ]

eAssociationControl:
  _type: enum
  _enum_storage: uint8_t
  BLOCK: 0x00
  UNBLOCK: 0x01
  TIMED_BLOCK: 0x02
  INDEFINITE_BLOCK: 0x03
