accept (Windows Sockets)

Windows Mobile SupportedWindows Embedded CE Supported

9/8/2008

Essa função permite que um tentativa de conexão de entrada em um Soquete.

Syntax

SOCKET accept(
  SOCKET s,
  struct sockaddr FAR* addr,
  int FAR* addrlen
);

Parameters

  • s
    [no] Descritor identificando um Soquete que foi colocado em um estado de escuta com o escutar função. A conexão, na verdade, é feita com o Soquete retornado por essa função.
  • addr
    [out] Opcional ponteiro para uma reserva que recebe o endereço da entidade de conexão, como conhecidos a camada de comunicação. O formato exato das addr parâmetro é determinado pelo família de endereços estabelecido quando a Soquete foi criado.
  • addrlen
    [out] Ponteiro opcional para um inteiro que contém o comprimento do addr.

Return Value

Se não houver erro, essa função retorna um valor de tipo SOCKET Esse é um descritor para a nova Soquete. Isso retornado valor é um identificador para o Soquete no qual o real conexão é feita.

O inteiro referido por addrlen contém inicialmente a quantidade de espaço apontado pelo addr. Em retorno, ele irá conter o real comprimento em bytes do endereço retornado.

Se um erro ocorrer, será retornado um valor de INVALID_SOCKET, e um código de erro específicos podem ser recuperadas por chamado WSAGetLastError. A seguinte tabela mostra a código de erro possível retornar valores.

Código de erro Descrição

WSANOTINITIALISED

Um bem-sucedido WSAStartup chamar deve ocorrer antes de usar essa função.

WSAENETDOWN

Falha no subsistema da rede.

WSAEFAULT

O addrlen parâmetro é muito pequeno ou addr não é um válido parte espaço de endereço o usuário.

WSAEINTR.

O Soquete foi fechada.

WSAEINPROGRESS

Um bloqueio é chamar sockets do Windows (Winsock) em andamento, ou o serviço provedor ainda é processamento um função callback.

WSAEINVAL

O escutar função não foi chamada prior to esta função.

WSAEMFILE

A fila for não vazia na entrada para esta função, e houver não descritores disponível.

WSAENOBUFS

Nenhuma espaço do buffer está disponível.

WSAENOTSOCK

O descritor não é um Soquete.

WSAEOPNOTSUPP

O relacionado Soquete não é um tipo que ofereça suporte ao serviço Connection-Oriented.

WSAEWOULDBLOCK

O Soquete é marcado como de não bloqueio e nenhuma conexão está presente para ser aceita.

Remarks

Essa função extrai a primeira conexão sobre a fila de pendente conexões em Soquete s. Em seguida, ele cria um novo Soquete e retorna um identificador para o novo Soquete. O Soquete recém-criado é a Soquete que irá identificador o real conexão e tem as mesmas propriedades como Soquete s, incluindo o assíncrono eventos registrados com o WSAEventSelect função.

O aceitar função pode bloco o chamador até que uma conexão esteja presente se nenhum pendente conexões estão presentes na fila e o Soquete está marcado como bloqueio. Se o Soquete é marcado como de não bloqueio e nenhum pendente conexões estão presentes na fila, essa função retornará um erro conforme descrito no seguinte tabela. Após o bem-sucedido conclusão de aceitar Retorna um novo identificador Soquete, o Soquete aceita não pode ser usado para aceitar mais conexões. O original Soquete permanece aberto e ouve para solicitações nova conexão.

O addr parâmetro é um parâmetro de resultados que é concluído com o endereço da entidade de conexão, como conhecidos a camada de comunicação. O formato exato das addr parâmetro é determinado pelo família de endereços no qual a comunicação está ocorrendo. O addrlen parâmetro é um parâmetro value-result. Ele deve conter inicialmente o quantidade de espaço apontado pelo addr; Em retorno ele conterá o real comprimento (em bytes) do endereço retornado.

O aceitar função é usada com tipos Soquete Connection-Oriented como SOCK_STREAM.

Observação

Modo assíncrono transferir (ATM) não é com suporte em Windows Embedded CE.

Observações para Bluetooth

O aceitar função funciona da mesma para RFCOMM as for qualquer padrão soquetes implementação.

Requirements

Header winsock2.h
Library Ws2.lib
Windows Embedded CE Windows CE 1.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also

Reference

bind (Windows Sockets)
connect (Windows Sockets)
listen
select
socket (Windows Sockets)
WSAAccept
WSAEventSelect
WSAGetLastError
WSAStartup