accept() benimmt sich seltsam!
-
Ich schreibe zur zeit eine Simple client-server Anwenung in C++ (neu. Habe es paar mal in C gemacht, aber will nun objektorientiert in C++ machen)
Nun benimmt sich accept() sehr sehr seltsam!socklen_t len; newsock = accept(sock , (struct sockaddr*)&client_address , &len); if (newsock < 0) errmsg("couldn't accept");
Das Programm lauscht an einem Port ( port > 1024 ) und wenn ich mich mit einer client-Anwendung zu diesem Port verbinde, so gibt die Funktion accept() den Wert -1 zurück.
nachdem ich den cdoe folgendermaßen abgeändert habe, funktionierte es:
socklen_t len; newsock = accept(sock , (struct sockaddr*)&client_address , &len); std::cout<<"sock: "<<sock<<" newsock: "<<newsock<<std::endl; if (newsock < 0) errmsg("couldn't accept");
Sprich: Ich habe gerade mal "std::cout<<"sock: "<<sock<<" newsock: "<<newsock<<std::endl;" hinzugefügt!
Dies dürfte aber eigentlich accept() nicht beeinflussen!
Verzeihen sie die Wortwahl, aber langsam fühle ich mich (von accept) verarscht!
Kennt jemand dieses problem?
MfG, der der ein problem mit accept() hat.
-
socklen_t len = sizeof(client_address);
-
a schrieb:
socklen_t len = sizeof(client_address);
thx