Visão geral da operação de pré-associação

 

Depois que o usuário tiver selecionado um perfil para uma conexão de rede BSS (conjunto de serviços básico), o sistema operacional chamará a função Dot11ExtIhvPerformPreAssociate para iniciar uma operação de pré-associação. Quando essa função é chamada, a DLL de Extensões IHV faz o seguinte:

  • Verifica as extensões definidas pelo IHV para o perfil de conectividade e segurança.

    Se a DLL de Extensões IHV determinar que o perfil está incorreto, ele retornará o código de erro apropriado, conforme definido em Winerror.h. Nessa situação, o sistema operacional notifica o usuário de que o perfil de rede não pode ser usado.

  • Inicia a operação de pré-associação com base nas extensões definidas por IHV para os perfis de conectividade e segurança.

    Depois que a operação de pré-associação for iniciada, ela deverá ser concluída de forma assíncrona da chamada para Dot11ExtIhvPerformPreAssociate.

A DLL de extensão IHV conclui a operação de pré-associação por meio de uma chamada para Dot11ExtPreAssociateCompletion. Após essa chamada, o sistema operacional inicia a operação de conexão emitindo uma solicitação de conjunto de OID_DOT11_CONNECT_REQUEST para o driver de miniporto Nativo 802.11, que gerencia o adaptador WLAN.

A figura a seguir mostra as etapas envolvidas durante a operação de pré-associação.

Diagrama ilustrando as etapas envolvidas durante a operação de pré-associação.

Quando Dot11ExtIhvPerformPreAssociate é chamado, o sistema operacional passa as extensões definidas por IHV para o perfil de conectividade e segurança por meio dos parâmetros a seguir.

pIhvProfileParams
Esse parâmetro é passado um ponteiro para uma estrutura DOT11EXT_IHV_PROFILE_PARAMS , que especifica os atributos da rede BSS (conjunto de serviços básico) à qual o perfil de rede será aplicado. Por exemplo, a estrutura DOT11EXT_IHV_PROFILE_PARAMS especifica o SSID (identificador do conjunto de serviços) e o tipo da rede BSS.

pIhvConnProfile
Esse parâmetro é passado um ponteiro para uma estrutura DOT11EXT_IHV_CONNECTIVITY_PROFILE que contém as configurações do perfil de conectividade. O sistema operacional passa apenas as extensões para o perfil de conectividade definido pelo IHV e selecionado pelo usuário.

pIhvSecProfile
Esse parâmetro é passado um ponteiro para uma estrutura DOT11EXT_IHV_SECURITY_PROFILE que contém as configurações do perfil de segurança. O sistema operacional passa apenas as extensões para o perfil de segurança definido pelo IHV e selecionado pelo usuário.

pConnectableBssid
Esse parâmetro é passado um ponteiro para uma estrutura DOT11_BSS_LIST , que contém um ou mais quadros 802.11 Beacon ou Probe Response para o SSID (identificador de conjunto de serviço) da rede BSS com a qual a DLL executará a operação de pré-associação.

Ao executar a operação de pré-associação, a DLL de Extensões IHV pode fazer o seguinte:

  • Chame a função Dot11ExtNicSpecificExtension para emitir solicitações de configuração proprietárias para conectividade de rede com o driver de miniporto Nativo 802.11.

    Por meio dos parâmetros pIhvConnProfile e pIhvProfileParams , a DLL de Extensões IHV pode determinar quais configurações de conectividade proprietárias foram selecionadas pelo usuário.

    Por meio do parâmetro pConnectableBssid , a DLL de Extensões IHV pode determinar os atributos da rede BSS e pode definir as configurações de rede proprietárias adequadamente.

  • Configure o adaptador WLAN com os algoritmos de criptografia e autenticação proprietários a serem usados na conexão de rede BSS.

    Por meio do parâmetro pszXmlFragmentIhvSecurity , a DLL de Extensões IHV pode determinar quais algoritmos de segurança proprietários foram selecionados pelo usuário.

    As seguintes funções de extensibilidade de IHV podem ser chamadas para definir os algoritmos de segurança.

  • Chame a função Dot11ExtSendUIRequest para solicitar que a DLL de Extensões de Interface do Usuário IHV solicite ao usuário parâmetros de segurança, como as credenciais do usuário.

  • Chame a função Dot11ExtSetEtherTypeHandling para registrar uma lista dos EtherTypes IEEE para os pacotes de segurança que a DLL receberá. Depois que a lista é registrada, o sistema operacional chama a função manipulador IHV Dot11ExtIhvReceivePacket para cada pacote cujo EtherType corresponde a uma entrada na lista.

    A DLL de Extensões IHV também pode especificar uma lista de EtherTypes que serão excluídos da descriptografia de conteúdo. Para obter mais informações sobre como registrar EtherTypes, consulte Tratamento de EtherType IEEE.

  • Chame a função Dot11ExtSetProfileCustomUserData para salvar dados no registro específicos do usuário e do perfil de rede BSS atual.

  • Chame a função Dot11ExtGetProfileCustomUserData para recuperar dados do registro específicos para o usuário e o perfil de rede BSS atual.

Para obter mais informações sobre as funções de extensibilidade IHV, consulte Funções de extensibilidade IHV nativas 802.11.

Para obter mais informações sobre operações de conexão com redes BSS, consulte Operações de conexão.