Morse Micro IoT SDK  2.13.1
WLAN Vendor Specific IE add / clear API

Detailed Description

API for adding and clearing Vendor Specific IEs.

These elements can be added to Beacon, Probe Response and (Re)Association Response frames.

Data Structures

struct  mmwlan_vendor_ie
 Descriptor for one Vendor Specific information element to insert into outgoing management frames. More...
 

Macros

#define MMWLAN_VENDOR_IE_TOTAL_MAX_BYTES   (2 * (UINT8_MAX + 2))
 Maximum total size in bytes of all appended Vendor Specific IEs (including element headers). More...
 
#define MMWLAN_VENDOR_IE_MAX_SIZE   (UINT8_MAX)
 Maximum size of a single Vendor Specific IE payload in bytes (limited by 8-bit length field). More...
 
#define MMWLAN_VENDOR_IE_MIN_SIZE   (3)
 Minimum size of a single Vendor Specific IE payload in bytes (OUI alone). More...
 

Enumerations

enum  mmwlan_vendor_ie_mgmt_type { MMWLAN_VENDOR_IE_MGMT_BEACON = (1u << 0) , MMWLAN_VENDOR_IE_MGMT_PROBE_RESP = (1u << 1) , MMWLAN_VENDOR_IE_MGMT_ALL = 0b111 }
 Bitmask flags identifying which management frame types a Vendor Specific IE should be appended to. More...
 

Functions

enum mmwlan_status mmwlan_add_vendor_ie (const struct mmwlan_vendor_ie *ie)
 Append a Vendor Specific IE to the active list of Vendor Specific IEs. More...
 
enum mmwlan_status mmwlan_clear_vendor_ies (uint8_t mgmt_type_mask)
 Clear the registered Vendor Specific IEs for the given management frame type. More...
 

Macro Definition Documentation

◆ MMWLAN_VENDOR_IE_MAX_SIZE

#define MMWLAN_VENDOR_IE_MAX_SIZE   (UINT8_MAX)

Maximum size of a single Vendor Specific IE payload in bytes (limited by 8-bit length field).

Definition at line 2503 of file mmwlan.h.

◆ MMWLAN_VENDOR_IE_MIN_SIZE

#define MMWLAN_VENDOR_IE_MIN_SIZE   (3)

Minimum size of a single Vendor Specific IE payload in bytes (OUI alone).

Definition at line 2506 of file mmwlan.h.

◆ MMWLAN_VENDOR_IE_TOTAL_MAX_BYTES

#define MMWLAN_VENDOR_IE_TOTAL_MAX_BYTES   (2 * (UINT8_MAX + 2))

Maximum total size in bytes of all appended Vendor Specific IEs (including element headers).

Definition at line 2500 of file mmwlan.h.

Enumeration Type Documentation

◆ mmwlan_vendor_ie_mgmt_type

Bitmask flags identifying which management frame types a Vendor Specific IE should be appended to.

Enumerator
MMWLAN_VENDOR_IE_MGMT_BEACON 

Beacon frames.

MMWLAN_VENDOR_IE_MGMT_PROBE_RESP 

Probe Response frames.

All supported management frame types. Mask must intersect all supported frame types.

Definition at line 2512 of file mmwlan.h.

Function Documentation

◆ mmwlan_add_vendor_ie()

enum mmwlan_status mmwlan_add_vendor_ie ( const struct mmwlan_vendor_ie *  ie)

Append a Vendor Specific IE to the active list of Vendor Specific IEs.

Note
This will block until the Vendor Specific IE has been added or some error has occurred.
If MMWLAN_NO_MEM is returned while an AP is running, the IE has been stored and will be applied on the next AP (re)start, but the currently running AP could not be updated. The store is not rolled back, so re-adding the same IE would create a duplicate entry.
Parameters
ieDescriptor of the Vendor Specific IE to add. Must not be NULL. The element contents are copied internally, so the caller retains ownership of the struct memory.
Returns
MMWLAN_SUCCESS on success, else an appropriate error code.

◆ mmwlan_clear_vendor_ies()

enum mmwlan_status mmwlan_clear_vendor_ies ( uint8_t  mgmt_type_mask)

Clear the registered Vendor Specific IEs for the given management frame type.

Note
Blocks until done or error.
Parameters
mgmt_type_maskBitmask of mmwlan_vendor_ie_mgmt_type bits to clear.
Returns
MMWLAN_SUCCESS on success, else an appropriate error code.