Sockets unter Linux



  • Hallo,

    ich habe ein Problem mit Sockets unter Linux.

    Ich bin nach folgendem Guide vorgegangen:
    http://www.techpowerup.com/forums/threads/c-c-sockets-faq-and-how-to-win-linux.56901/

    Bis Accepting a connection funktioniert alles. Aber dann bekomm ich folgenden Fehler:
    error: argument of type "int *" is incompatible with parameter of type "socklen_t={__socklen_t={unsigned int}} *"
    thisSocket = accept(thisSocket, (struct sockaddr *)&clientAddress, (int ūüėČ &clientSize);

    Hat jemand eine Lösung?



  • Bitte vollst√§ndige Informationen zu deinem Problem liefern. Das ist erst mal ein Compilefehler. Da geh√∂rt Sourcecode dazu. Wie w√§re es, wenn Du uns den zeigst? Dann k√∂nnen wir den mal anschauen.



  • Das ist halt das Problem, wenn inkompetente Dummk√∂pfe Tutorials schreiben. ClientSize muss vom Typ socklen_t sein.



  • Es steht auch in der Fehlermeldung das socklen_t* erwartet wird.



  • Deshalb lieber die man-pages nutzen. Da steht es richtig drin. Meist sogar mit verst√§ndlichen Beispiel-Codes.



  • Unter Windows gibts die accept Funktion auch. Dort isses ein int. Daher dann wohl auch die Verwirrung.

    Also. Auch wenn unter Windows viele ähnliche Funktionen zu finden sind, sind diese eben doch nur ähnlich.



  • simbad schrieb:

    Unter Windows gibts die accept Funktion auch. Dort isses ein int. Daher dann wohl auch die Verwirrung.

    Also. Auch wenn unter Windows viele ähnliche Funktionen zu finden sind, sind diese eben doch nur ähnlich.

    Und wenn man ein "C/C++ Sockets FAQ and How-To Win+Linux" schreibt, sollte einem das auch auffallen.

    Aber der Code ist ja auch sonst ziemlich √ľbel ...


Log in to reply