[c] timeout bei einem Socket setzen

milchbubbi

Mitglied
Hallo zusammen...

Ich schreibe gerade unter Linux eine Anwendung, die ueber Sockets kommuniziert und wuerde gerne einen timeout von 2 Sekunden bei den Sockets setzen. ueber die man-pages habe ich die funktionen setsockopt() gefunden und verwende sie wie folgt:

Code:
struct timeval timeout;
timeout.tv_sec = 2;

setsockopt(sockfd, SOL_SOCKET, SO_RCVTIMEO, &timeout, sizeof(timeout))

allerdings bewirkt der Befehl nichts, denn die Sockets haengen immer noch sehr lange, falls der host unerreichbar ist.

Was mache ich denn falsch?


[edit 12.03.05 17:06]
habe inzwischen den Fehler gefunden - ich setze die falsche Option bei dem Socket auf 2. Es gibt naemlich den 'receive time out' und den 'send time out'
 
Zuletzt bearbeitet:
Zurück