Hallo.
Mir stellt sich folgendes Probelm:
Ein Software-Server unter C liest Telegramme beliebiger Länge ein und verarbeitet diese wie gewünscht. Nun kommt es leider vor, dass einer der Clients, die sich verbinden, diese Verbindung nicht mehr schliesst. Mein Server erwartet jedoch ein Beenden, um weiter zu arbeiten. Eine „Standleitung“ ist aus mehreren Gründen nicht möglich und scheidet aus. Kann ich den Server irgendwie beim Start so parametrieren (über Flags?), dass er automatisch n Sekunden einen nicht gescholssenen Connect beendet und auf die nächste Verbindung wartet? Wenn die vollständig gesendeten, aber nicht korrekt abgeschlossenen Daten verloren wären könnte ich damit leben.
Aufbau ist Standart.
Den ganzen Logfile-Kram, Kontroll-Gefummel hab ich zur Anschauung weggelassen und hoffentlich nicht zuviel „entsorgt“. Fakt ist, mir fehlt nur diese beschreibene Funktion. Sonst ist alles OK.
serv_addr.sin_port = htons(MY_SERVER_PORT);
serv_addr.sin_family = AF_INET;
serv_addr.sin_addr.s_addr = INADDR_ANY;
if ( ( retval = bind ( sockfd, ( struct sockaddr* ) &serv_addr, sizeof ( serv_addr ) ) ) 0 );
Danke für jede Antwort