Compartir a través de


estructura DOT11_BYTE_ARRAY (windot11.h)

Importante

WiFiCx es el nuevo modelo de controlador de Wi-Fi lanzado en Windows 11. Se recomienda usar WiFiCx para aprovechar las características más recientes. El modelo de controlador WDI ahora está en modo de mantenimiento y solo recibirá correcciones de prioridad alta.

La estructura DOT11_BYTE_ARRAY precede a una lista de estructuras de longitud variable en el miembro InformationBuffer del MiniportOidRequest de la función OidRequest.

Sintaxis

typedef struct DOT11_BYTE_ARRAY {
  NDIS_OBJECT_HEADER Header;
  ULONG              uNumOfBytes;
  ULONG              uTotalNumOfBytes;
  UCHAR              ucBuffer[1];
} DOT11_BYTE_ARRAY, *PDOT11_BYTE_ARRAY;

Miembros

Header

Tipo, revisión y tamaño de la estructura DOT11_BYTE_ARRAY. Este miembro tiene el formato de una estructura NDIS_OBJECT_HEADER.

El controlador de miniport debe establecer los miembros de Encabezado en los valores siguientes:

Tipo

Este miembro debe establecerse en NDIS_OBJECT_TYPE_DEFAULT.

Revisión

Este miembro debe establecerse en la revisión de las estructuras de longitud variable que siguen a la estructura DOT11_BYTE_ARRAY. Para obtener más información sobre la revisión de estas estructuras, consulte los identificadores de objeto (OIDS) enumerados en la sección "Ver también".

Tamaño

Este miembro debe establecerse en sizeof(DOT11_BYTE_ARRAY).

Para obtener más información sobre estos miembros, vea NDIS_OBJECT_HEADER.

uNumOfBytes

Número de bytes de la matriz de ucBuffer.

uTotalNumOfBytes

Número máximo de bytes que requiere la matriz de ucBuffer.

ucBuffer[1]

Lista de estructuras de longitud variable.

Observaciones

El tipo de estructuras almacenadas en la matriz de ucBuffer depende del conjunto de OID y de la solicitud de consulta. Por ejemplo, cuando OID_DOT11_ENUM_BSS_LISTconsulta , un controlador de miniporte almacena una o varias estructuras de DOT11_BSS_ENTRY en la matriz de ucBuffer.

Cuando se consulta mediante un OID que usa la estructura DOT11_BYTE_ARRAY, el controlador de miniport debe comprobar que el InformationBuffer miembro del MiniportOidRequest función OidRequest parámetro es lo suficientemente grande como para devolver toda la estructura, incluidas todas las entradas de la matriz ucBuffer de. El valor del miembro InformationBufferLength del parámetro OidRequest determina lo que debe hacer el controlador de miniport, como se muestra en la lista siguiente:

  • Si el valor del miembro InformationBufferLength es menor que la longitud, en bytes, de toda la estructura de DOT11_BYTE_ARRAY, el controlador de miniport debe hacer lo siguiente:
    • Para el parámetro OidRequest, establezca el miembro BytesWritten en cero y el miembro BytesNeeded longitud, en bytes, de toda la estructura DOT11_BYTE_ARRAY
    • Produzca un error en la solicitud de consulta devolviendo NDIS_STATUS_BUFFER_OVERFLOW de su función MiniportOidRequest.
  • Si el valor del informationBufferLength miembro es mayor o igual que la longitud, en bytes, de toda la estructura DOT11_BYTE_ARRAY, el controlador de miniport debe hacer lo siguiente para completar una solicitud de consulta correcta:
    • Para la estructura DOT11_BYTE_ARRAY, establezca el uNumOfBytes y uTotalNumOfBytes en el número total de entradas de la matriz ucBuffer.
    • Para el parámetro OidRequest, establezca el miembro BytesNeeded en cero y el miembro BytesWritten longitud, en bytes, de toda la estructura DOT11_BYTE_ARRAY. El controlador de miniport también debe copiar toda la estructura de DOT11_BYTE_ARRAY en el miembro InformationBuffer.
    • Devuelve NDIS_STATUS_SUCCESS de su función de MiniportOidRequest.

Requisitos

Requisito Valor
cliente mínimo admitido Disponible en Windows Vista y versiones posteriores de los sistemas operativos Windows.
encabezado de windot11.h (incluye Ndis.h)

Consulte también

OID_DOT11_CIPHER_KEY_MAPPING_KEY

OID_DOT11_ENUM_BSS_LIST

NDIS_OBJECT_HEADER