[C] Gegenstück zu IOCTLSOCKET unter Linux

Von: , Frage gestellt am So, 25. Feb 2001

Hallo!

Stichwort Socketprogrammierung: Ich brauche eine Funktion mit der ich, unter Linux, abfragen kann, wieviel Daten im Netzwerk-Inputbuffer für die Funktion Recv() zum Lesen bereitstehen oder anders gesagt, ich möchte verhindern, dass die Funktion Recv() solange wartet, bis es etwas zu Lesen gibt (hab was von 'nonblocking' gehört?). Unter Windows kenne ich für diese Aufgabe ioctlsocket() gibt es ein ähnliches Gegenstück für die C-Programmierung unter Linux?

--Jan Vornberger

3 Antworten zu dieser Frage

  1. Antwort von nach 7 Minuten 1 hilfreich
    Re: [C] Gegenstück zu IOCTLSOCKET unter Linux

    Hallo!

    Mit fcntl() kannst du auf non-blocking umstellen, geht inetwa so:

    fcntl( descriptor, F_SETFL, O_NONBLOCK );

    Für Details "man recv" und "man fcntl" ... :-)

    Grüße, Robert

    • Antwort von nach einem Tag hilfreich
      Re^2: [C] Gegenstück zu IOCTLSOCKET unter Linux

      Danke, das hat mir geholfen!
      Aber ein Problem hätte ich da noch (passt zwar eher nach Linux, aber wo der Artikel nun schon hier ist...), bei mir gibt es keine Manual-Einträge für z.B. recv oder fcntl. Was für ein Packet muss ich dafür installieren?

      --Jan Vornberger

      • Antwort von nach einem Tag hilfreich
        Re^3: [C] Gegenstück zu IOCTLSOCKET unter Linux

        Uh, sorry, keine Ahnung, bin noch nie auf ein System gestoßen wo die Doku für die ganzen C-Libraries nicht dabei war. :o)

        Grüße, Robert

Keine passende Antwort gefunden? Jetzt eigene Frage stellen!