Linux Socket: Как обнаружить отключенную сеть в клиентской программе?

Я отлаживаю программу сокетов Linux на основе c. Как и все примеры, доступные на веб-сайтах, я применил следующую структуру:

sockfd= socket(AF_INET, SOCK_STREAM, 0);

connect(sockfd, (struct sockaddr *) &serv_addr, sizeof(serv_addr));

send_bytes = send(sockfd, sock_buff, (size_t)buff_bytes, MSG_DONTWAIT);

Я могу обнаружить отключение, когда сервер удаления закрывает свою серверную программу. Но если я отключу кабель Ethernet, функция отправки все равно вернет положительные значения, а не -1.

Как я могу проверить сетевое соединение в клиентской программе, если я не могу изменить сторону сервера?

Ответы на вопрос(4)

Ваш ответ на вопрос