Compartilhar via


PFN_WSK_BIND função de retorno de chamada (wsk.h)

A função WskBind associa um soquete a um endereço de transporte local.

Sintaxe

PFN_WSK_BIND PfnWskBind;

NTSTATUS PfnWskBind(
  [in]      PWSK_SOCKET Socket,
  [in]      PSOCKADDR LocalAddress,
            ULONG Flags,
  [in, out] PIRP Irp
)
{...}

Parâmetros

[in] Socket

Um ponteiro para uma estrutura WSK_SOCKET que especifica o objeto de soquete para o soquete que está sendo associado.

[in] LocalAddress

Um ponteiro para uma estrutura que especifica o endereço de transporte local ao qual associar o soquete. Esse ponteiro deve ser um ponteiro para o tipo de estrutura SOCKADDR específico que corresponde à família de endereços especificada pelo aplicativo WSK ao criar o soquete.

Flags

Esse parâmetro é reservado para uso do sistema. Um aplicativo WSK deve definir esse parâmetro como zero.

[in, out] Irp

Um ponteiro para um IRP alocado pelo chamador que o subsistema WSK usa para concluir a operação de associação de forma assíncrona. Para obter mais informações sobre como usar IRPs com funções WSK, consulte Usando IRPs com funções de kernel Winsock.

Retornar valor

WskBind retorna um dos seguintes códigos NTSTATUS:

Código de retorno Descrição
STATUS_SUCCESS
O soquete foi associado com êxito ao endereço de transporte local. O IRP será concluído com êxito status.
STATUS_PENDING
O subsistema WSK não pôde associar o soquete imediatamente. O subsistema WSK concluirá o IRP depois de ter associado o soquete ao endereço de transporte local. O status da operação de associação será retornado no campo IoStatus.Status do IRP.
STATUS_FILE_FORCED_CLOSED
O soquete não é mais funcional. O IRP será concluído com status de falha. O aplicativo WSK deve chamar a função WskCloseSocket para fechar o soquete o mais rápido possível.
Outros códigos de status
Ocorreu um erro. O IRP será concluído com status de falha.

Comentários

Para um soquete de escuta, chamar a função WskBind prepara o soquete para escutar solicitações de conexão de entrada no endereço de transporte local especificado. Se um aplicativo WSK especificar um endereço curinga local, o soquete escutará solicitações de conexão de entrada em todos os endereços de transporte locais.

Para um soquete de datagrama, chamar a função WskBind prepara o soquete para enviar e receber datagramas no endereço de transporte local especificado. Se um aplicativo WSK especificar um endereço curinga local, o soquete receberá datagramas em todos os endereços de transporte locais e enviará datagramas do endereço de transporte local apropriado determinado pelas informações de roteamento do sistema.

Para um soquete orientado a conexão, chamar a função WskBind associa o soquete ao endereço de transporte local especificado. WskBind deve ser chamado antes de chamar a função WskConnect . Se um aplicativo WSK especificar um endereço curinga local, a pilha de rede associará o soquete ao endereço de transporte local apropriado quando o aplicativo chamar WskConnect para conectar o soquete a um endereço de transporte remoto. Nessa situação, o endereço de transporte local é determinado pelas informações de roteamento do sistema.

Para um soquete de fluxo, chamar a função WskBind associa o soquete ao endereço de transporte local especificado. Se um aplicativo WSK especificar um endereço curinga local, a pilha de rede associará o soquete a um endereço de transporte local disponível. WskBind deve ser chamado antes de chamar as funções WskListen ou WskConnect .

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível no Windows Vista e versões posteriores dos sistemas operacionais Windows.
Plataforma de Destino Universal
Cabeçalho wsk.h (inclua Wsk.h)
IRQL <= DISPATCH_LEVEL

Confira também

SOCKADDR

WSK_PROVIDER_CONNECTION_DISPATCH WSK_PROVIDER_DATAGRAM_DISPATCH

WSK_PROVIDER_LISTEN_DISPATCH

WSK_PROVIDER_STREAM_DISPATCH

WSK_SOCKET

WskCloseSocket

WskConnect

WskSocket