Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ getsockopt.xs(3N-xs) — Reliant UNIX 5.44c4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

close(2)

bind(3N-xs)

getprotoent(3N-xs)

getsockopt(3N-xs)

socket(3N-xs)

ip(7)

getsockopt(3N-xs)             (X/OPEN SOCKETS)            getsockopt(3N-xs)

NAME
     getsockopt - Die Optionen des Sockets abrufen

SYNTAX
     cc [flag ...] file ... -lxnet [library ...]

     #include <sys/socket.h>

     int getsockopt(int socket, int level, int optionname,
          void *optionvalue, sizet *optionlen);

BESCHREIBUNG
     Die Funktion getsockopt ruft den Wert für die durch das Argument
     optionname angegebene Option ab, und zwar für den Socket, der durch
     das Argument socket angegeben ist. Ist der Optionswert länger als
     optionlen, wird der in dem Objekt gespeicherte Wert, auf das das
     Argument optionvalue zeigt, stillschweigend abgeschnitten. Andern-
     falls wird das Objekt, auf das das Argument optionlen zeigt, so geän-
     dert, daß es die tatsächliche Länge des Werts angibt.

     Das Argument level gibt die Protokollebene für die Option an. Zum
     Abrufen von Optionen auf Socket-Ebene muß das Argument level als
     SOLSOCKET angegeben werden. Zum Abrufen von Optionen auf anderen Ebe-
     nen muß die entsprechende Protokollnummer für das Protokoll angegeben
     werden, das die Option steuert. Soll beispielsweise angegeben werden,
     daß eine Option vom TCP (Transport Control Protocol) interpretiert
     wird, muß level auf die Protokollnummer des TCP gesetzt werden. Diese
     kann dem Header <netinet/in.h> entnommen oder über getprotobyname
     ermittelt werden.

     Das Argument optionname gibt eine einzelne abzurufende Option an.
     Dieses Argument kann einen der folgenden, in <sys/socket.h> definier-
     ten Werte haben:

     SODEBUG        Gibt an, ob Testdaten aufgezeichnet werden. Diese
                     Option speichert einen ganzzahligen Wert (int).

     SOACCEPTCONN   Gibt an, ob der Socket empfangsbereit ist. Diese
                     Option speichert einen ganzzahligen Wert (int).

     SOBROADCAST    Gibt an, ob die Übertragung von Broadcast-Meldungen
                     unterstützt wird (falls dies vom Protokoll unterstützt
                     wird). Diese Option speichert einen ganzzahligen Wert
                     (int).

     SOREUSEADDR    Gibt an, ob die Regeln für die Gültigkeitsprüfung der
                     für bind angegebenen Adressen die Wiederverwendung
                     lokaler Adressen zulassen soll (sofern dies vom Proto-
                     koll unterstützt wird). Diese Option speichert einen
                     ganzzahligen Wert (int).





Seite 1                      Reliant UNIX 5.44               Gedruckt 11/98

getsockopt(3N-xs)             (X/OPEN SOCKETS)            getsockopt(3N-xs)

     SOKEEPALIVE    Gibt an, ob Verbindungen durch die Übertragung von
                     Meldungen in regelmäßigen Abständen aktiv bleiben
                     (sofern dies vom Protokoll unterstützt wird).

                     Wenn der verbundene Socket auf diese Meldungen nicht
                     antwortet, wird die Verbindung abgebrochen und Pro-
                     zesse, die auf diesen Socket schreiben, werden durch
                     ein Signal SIGPIPE benachrichtigt. Diese Option spei-
                     chert einen ganzzahligen Wert (int).

     SOLINGER       Gibt an, ob der Socket bei der Ausgabe von close war-
                     ten soll, wenn noch Daten vorhanden sind. Wenn
                     SOLINGER gesetzt ist, blockiert das System den Prozeß
                     während close so lange, bis es die Daten übertragen
                     kann oder bis das Ende des in der Komponente llinger
                     angegebenen Zeitraums erreicht ist, je nachdem, welche
                     Bedingung zuerst eintritt. Wenn SOLINGER nicht ange-
                     geben ist und close ausgegeben wird, verarbeitet das
                     System den Aufruf so, daß der Prozeß so schnell wie
                     möglich fortgesetzt werden kann. Diese Option spei-
                     chert eine linger-Struktur.

     SOOOBINLINE    Gibt an, ob der Socket empfangene Out-of-Band-Daten
                     (als dringend markierte Daten) im normalen Datenstrom
                     beläßt. Diese Option speichert einen ganzzahligen Wert
                     (int).

     SOSNDBUF       Gibt Daten zur Größe des Sendepuffers aus. Diese
                     Option speichert einen ganzzahligen Wert (int).

     SORCVBUF       Gibt Daten zur Größe des Empfangspuffers aus. Diese
                     Option speichert einen ganzzahligen Wert (int).

     SOERROR        Gibt Daten zum Fehlerstatus aus und löscht diesen.
                     Diese Option speichert einen ganzzahligen Wert (int).

     SOTYPE         Gibt den Socket-Typ aus. Diese Option speichert einen
                     ganzzahligen Wert (int).

     Bei booleschen Optionen gibt 0 die Deaktivierung und 1 die Aktivierung
     an.

     Optionen auf anderen Protokollebenen weichen hinsichtlich Format und
     Name voneinander ab.

RÜCKGABEWERT
     Bei erfolgreicher Ausführung gibt getsockopt 0 zurück. Andernfalls
     wird -1 zurückgegeben und errno gesetzt, um den Fehler anzuzeigen.






Seite 2                      Reliant UNIX 5.44               Gedruckt 11/98

getsockopt(3N-xs)             (X/OPEN SOCKETS)            getsockopt(3N-xs)

FEHLER
     Die Funktion getsockopt schlägt fehl, wenn eine der folgenden Bedin-
     gungen zutrifft:

     EBADF           Das Argument socket ist kein gültiger Dateideskriptor.

     ENOPROTOOPT     Die Option wird vom Protokoll nicht unterstützt.

     ENOTSOCK        Das Argument socket verweist nicht auf einen Socket.

     EINVAL          Die angegebene Option ist auf der angegebenen Socket-
                     Ebene nicht gültig.

     EOPNOTSUPP      Die Option wird vom Socket-Protokoll nicht unter-
                     stützt.

     Die Funktion getsockopt kann fehlschlagen, wenn eine der folgenden
     Bedingungen zutrifft:

     EINVAL          Der Socket wurde geschlossen.

     ENOBUFS         Die im System verfügbaren Ressourcen reichen für die
                     Ausführung des Aufrufs nicht aus.

     ENOSR           Die verfügbaren STREAMS-Ressourcen reichen für die
                     Ausführung der Operation nicht aus.

SIEHE AUCH
     close(2), bind(3N-xs), getprotoent(3N-xs), getsockopt(3N-xs),
     socket(3N-xs), ip(7).
























Seite 3                      Reliant UNIX 5.44               Gedruckt 11/98

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026