Share via


Associar um soquete

Para que um servidor aceite conexões de cliente, ele deve estar associado a um endereço de rede dentro do sistema. O código a seguir demonstra como associar um soquete que já foi criado a um endereço IP e porta. Os aplicativos cliente usam o endereço IP e a porta para se conectar à rede de host.

Para associar um soquete

A estrutura sockaddr contém informações sobre a família de endereços, o endereço IP e o número da porta.

Chame a função bind , passando a estrutura de soquete e sockaddr criada retornada da função getaddrinfo como parâmetros. Verifique se há erros gerais.

    // Setup the TCP listening socket
    iResult = bind( ListenSocket, result->ai_addr, (int)result->ai_addrlen);
    if (iResult == SOCKET_ERROR) {
        printf("bind failed with error: %d\n", WSAGetLastError());
        freeaddrinfo(result);
        closesocket(ListenSocket);
        WSACleanup();
        return 1;
    }

Depois que a função bind é chamada, as informações de endereço retornadas pela função getaddrinfo não são mais necessárias. A função freeaddrinfo é chamada para liberar a memória alocada pela função getaddrinfo para essas informações de endereço.

    freeaddrinfo(result);

Próxima etapa: Escutando em um soquete

Introdução com Winsock

Aplicativo servidor Winsock

Criando um soquete para o servidor