Linux Socket: Wie erkenne ich ein nicht verbundenes Netzwerk in einem Client-Programm?
Ich debugge ein C-basiertes Linux-Socket-Programm. Da alle Beispiele auf Websites verfügbar sind, habe ich die folgende Struktur angewendet:
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);
Ich kann die Trennung feststellen, wenn der entfernte Server sein Serverprogramm schließt. Wenn ich jedoch das Ethernet-Kabel aus der Steckdose ziehe, gibt die Sendefunktion weiterhin positive Werte anstatt -1 zurück.
Wie kann ich die Netzwerkverbindung in einem Client-Programm überprüfen, vorausgesetzt, ich kann die Serverseite nicht ändern?